diff options
author | Paul Duncan <pabs@pablotron.org> | 2022-01-31 19:12:58 -0500 |
---|---|---|
committer | Paul Duncan <pabs@pablotron.org> | 2022-01-31 19:12:58 -0500 |
commit | 9d2655aaee90ca14df421d9fb4f7fb9e84f7c488 (patch) | |
tree | 9bcebd632f2ceef03e2f5979461ed83e9f6ad8a3 /internal/cvss | |
parent | fb9b138f5c75e040d4421ef71b0990c01f889939 (diff) | |
download | cvez-9d2655aaee90ca14df421d9fb4f7fb9e84f7c488.tar.bz2 cvez-9d2655aaee90ca14df421d9fb4f7fb9e84f7c488.zip |
add badmetric and category tests
Diffstat (limited to 'internal/cvss')
-rw-r--r-- | internal/cvss/badmetric_test.go | 25 | ||||
-rw-r--r-- | internal/cvss/category_test.go | 41 |
2 files changed, 66 insertions, 0 deletions
diff --git a/internal/cvss/badmetric_test.go b/internal/cvss/badmetric_test.go new file mode 100644 index 0000000..87316c0 --- /dev/null +++ b/internal/cvss/badmetric_test.go @@ -0,0 +1,25 @@ +package cvss + +import "testing" + +func TestNewBadMetric(t *testing.T) { + tests := []struct { + name string + version Version + val string + exp string + } { + { "v20-foo", V20, "foo", "invalid CVSS 2.0 metric: foo" }, + { "v30-foo", V30, "foo", "invalid CVSS 3.0 metric: foo" }, + { "v31-foo", V31, "foo", "invalid CVSS 3.1 metric: foo" }, + } + + for _, test := range(tests) { + t.Run(test.name, func(t *testing.T) { + err := newBadMetric(test.version, test.val) + if err.Error() != test.exp { + t.Errorf("got: %s, exp: %s", err.Error(), test.exp) + } + }) + } +} diff --git a/internal/cvss/category_test.go b/internal/cvss/category_test.go new file mode 100644 index 0000000..7f69689 --- /dev/null +++ b/internal/cvss/category_test.go @@ -0,0 +1,41 @@ +package cvss + +import "testing" + +func TestCategoryString(t *testing.T) { + tests := []struct { + cat Category + exp string + } { + { Base, "Base" }, + { Temporal, "Temporal" }, + { Environmental, "Environmental" }, + } + + for _, test := range(tests) { + t.Run(test.exp, func(t *testing.T) { + got := test.cat.String() + if got != test.exp { + t.Errorf("got: %s, exp: %s", got, test.exp) + } + }) + } +} + +func TestInvalidCategory(t *testing.T) { + tests := []struct { + cat Category + exp string + } { + { Category(byte(255)), "Category(255)" }, + } + + for _, test := range(tests) { + t.Run(test.exp, func(t *testing.T) { + got := test.cat.String() + if got != test.exp { + t.Errorf("got: %s, exp: %s", got, test.exp) + } + }) + } +} |