simplify test assertions for classification cataloger

Signed-off-by: Alex Goodman <alex.goodman@anchore.com>
This commit is contained in:
Alex Goodman 2021-04-12 17:06:57 -04:00
parent f9d49885ae
commit 28c407572c
No known key found for this signature in database
GPG Key ID: 5CB45AE22BAB7EA7

View File

@ -13,8 +13,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
fixtureDir string fixtureDir string
location string location string
expected []Classification expected []Classification
constructorErr bool expectedErr func(assert.TestingT, error, ...interface{}) bool
catalogErr bool
}{ }{
{ {
name: "positive-libpython3.7.so", name: "positive-libpython3.7.so",
@ -28,6 +27,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
{ {
name: "positive-python3.6", name: "positive-python3.6",
@ -41,6 +41,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
{ {
name: "positive-patchlevel.h", name: "positive-patchlevel.h",
@ -54,6 +55,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
{ {
name: "positive-go", name: "positive-go",
@ -67,6 +69,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
{ {
name: "positive-go-hint", name: "positive-go-hint",
@ -80,6 +83,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
{ {
name: "positive-busybox", name: "positive-busybox",
@ -93,6 +97,7 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
}, },
}, },
}, },
expectedErr: assert.NoError,
}, },
} }
@ -100,32 +105,16 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
t.Run(test.name, func(t *testing.T) { t.Run(test.name, func(t *testing.T) {
c, err := NewClassificationCataloger(DefaultClassifiers) c, err := NewClassificationCataloger(DefaultClassifiers)
if err != nil && !test.constructorErr { test.expectedErr(t, err)
t.Fatalf("could not create cataloger (but should have been able to): %+v", err)
} else if err == nil && test.constructorErr {
t.Fatalf("expected constructor error but did not get one")
} else if test.constructorErr && err != nil {
return
}
src, err := source.NewFromDirectory(test.fixtureDir) src, err := source.NewFromDirectory(test.fixtureDir)
if err != nil { test.expectedErr(t, err)
t.Fatalf("could not create source: %+v", err)
}
resolver, err := src.FileResolver(source.SquashedScope) resolver, err := src.FileResolver(source.SquashedScope)
if err != nil { test.expectedErr(t, err)
t.Fatalf("could not create resolver: %+v", err)
}
actualResults, err := c.Catalog(resolver) actualResults, err := c.Catalog(resolver)
if err != nil && !test.catalogErr { test.expectedErr(t, err)
t.Fatalf("could not catalog (but should have been able to): %+v", err)
} else if err == nil && test.catalogErr {
t.Fatalf("expected catalog error but did not get one")
} else if test.catalogErr && err != nil {
return
}
loc := source.NewLocation(test.location) loc := source.NewLocation(test.location)
@ -141,24 +130,16 @@ func TestClassifierCataloger_DefaultClassifiers_PositiveCases(t *testing.T) {
func TestClassifierCataloger_DefaultClassifiers_NegativeCases(t *testing.T) { func TestClassifierCataloger_DefaultClassifiers_NegativeCases(t *testing.T) {
c, err := NewClassificationCataloger(DefaultClassifiers) c, err := NewClassificationCataloger(DefaultClassifiers)
if err != nil { assert.NoError(t, err)
t.Fatalf("could not create cataloger: %+v", err)
}
src, err := source.NewFromDirectory("test-fixtures/classifiers/negative") src, err := source.NewFromDirectory("test-fixtures/classifiers/negative")
if err != nil { assert.NoError(t, err)
t.Fatalf("could not create source: %+v", err)
}
resolver, err := src.FileResolver(source.SquashedScope) resolver, err := src.FileResolver(source.SquashedScope)
if err != nil { assert.NoError(t, err)
t.Fatalf("could not create resolver: %+v", err)
}
actualResults, err := c.Catalog(resolver) actualResults, err := c.Catalog(resolver)
if err != nil { assert.NoError(t, err)
t.Fatalf("could not catalog: %+v", err)
}
assert.Equal(t, 0, len(actualResults)) assert.Equal(t, 0, len(actualResults))
} }