added extra test case and revert multiple dummy items

This commit is contained in:
Héctor Giménez
2024-05-05 14:06:14 +09:00
parent 7af19bd16a
commit 54bc4a7e68
2 changed files with 26 additions and 17 deletions

View File

@@ -47,17 +47,10 @@ func ParseNIPFile(filePath string) (Rules, error) {
rules := make([]Rule, 0)
lineNumber := 0
dummyItems := []data.Item{
{
ID: 373,
Name: "mageplate",
Quality: item.QualityUnique,
},
{
ID: 0,
Name: "handaxe",
Quality: item.QualityUnique,
},
dummyItem := data.Item{
ID: 516,
Name: "healingpotion",
Quality: item.QualityNormal,
}
for fileScanner.Scan() {
@@ -71,13 +64,10 @@ func ParseNIPFile(filePath string) (Rules, error) {
}
// We evaluate all the rules at startup to ensure no format errors, if there is a format error we will throw it now instead of during runtime
for _, it := range dummyItems {
_, err = rule.Evaluate(it)
if err != nil {
return nil, fmt.Errorf("error testing rule on [%s:%d]: %w", filePath, lineNumber, err)
}
_, err = rule.Evaluate(dummyItem)
if err != nil {
return nil, fmt.Errorf("error testing rule on [%s:%d]: %w", filePath, lineNumber, err)
}
rules = append(rules, rule)
}

View File

@@ -180,6 +180,25 @@ func TestRule_Evaluate(t *testing.T) {
},
wantErr: true,
},
{
name: "enhanceddamage should work for charms and not damage items",
fields: fields{
RawLine: "[name] == grandcharm && [quality] == magic # [enhanceddamage] >= 15 #",
Enabled: true,
},
args: args{
item: data.Item{
Identified: true,
ID: 605,
Name: "grandcharm",
Quality: item.QualityMagic,
Stats: []stat.Data{
{ID: stat.EnhancedDamage, Value: 15},
},
},
},
want: RuleResultFullMatch,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {