Skip to content

Commit

Permalink
Merge bb0d113 into be4d005
Browse files Browse the repository at this point in the history
  • Loading branch information
dwertent committed Mar 30, 2023
2 parents be4d005 + bb0d113 commit ee6c5ad
Showing 1 changed file with 105 additions and 0 deletions.
105 changes: 105 additions & 0 deletions adapters/v1/armo_utils_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
package v1

import (
"reflect"
"testing"

"github.com/armosec/armoapi-go/armotypes"
)

func TestGetCVEExceptionMatchCVENameFromList(t *testing.T) {
testCases := []struct {
name string
srcCVEList []armotypes.VulnerabilityExceptionPolicy
CVEName string
expected []armotypes.VulnerabilityExceptionPolicy
}{
{
name: "empty source list",
srcCVEList: []armotypes.VulnerabilityExceptionPolicy{},
CVEName: "CVE-2021-1234",
expected: nil,
},
{
name: "no matches in source list",
srcCVEList: []armotypes.VulnerabilityExceptionPolicy{
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2022-5678"},
},
},
},
CVEName: "CVE-2021-1234",
expected: nil,
},
{
name: "one match in source list",
srcCVEList: []armotypes.VulnerabilityExceptionPolicy{
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
},
},
},
CVEName: "CVE-2021-1234",
expected: []armotypes.VulnerabilityExceptionPolicy{
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
},
},
},
},
{
name: "multiple matches in source list",
srcCVEList: []armotypes.VulnerabilityExceptionPolicy{
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
},
},
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-5678"},
{Name: "CVE-2021-1234"},
},
},
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
{Name: "CVE-2021-9012"},
},
},
},
CVEName: "CVE-2021-1234",
expected: []armotypes.VulnerabilityExceptionPolicy{
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
},
},
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-5678"},
{Name: "CVE-2021-1234"},
},
},
{
VulnerabilityPolicies: []armotypes.VulnerabilityPolicy{
{Name: "CVE-2021-1234"},
{Name: "CVE-2021-9012"},
},
},
},
},
}

for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
actual := getCVEExceptionMatchCVENameFromList(tc.srcCVEList, tc.CVEName)
if !reflect.DeepEqual(actual, tc.expected) {
t.Errorf("unexpected result: got %v, want %v", actual, tc.expected)
}
})
}
}

0 comments on commit ee6c5ad

Please sign in to comment.