mirror of
https://github.com/aquasecurity/trivy.git
synced 2025-12-22 07:10:41 -08:00
test(vulnerability): fix usages of new trivy-db refactor changes (#611)
* mod: Update trivy-db Signed-off-by: Simarpreet Singh <simar@linux.com> * vulnerability_test: Fix usages of new trivy-db refactor changes Signed-off-by: Simarpreet Singh <simar@linux.com> * chore(mod): update trivy-db Co-authored-by: Simarpreet Singh <simar@linux.com>
This commit is contained in:
@@ -5,19 +5,15 @@ import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/vulnsrc/vulnerability"
|
||||
|
||||
"github.com/aquasecurity/trivy/pkg/log"
|
||||
"github.com/aquasecurity/trivy/pkg/types"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/db"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/db"
|
||||
dbTypes "github.com/aquasecurity/trivy-db/pkg/types"
|
||||
"github.com/aquasecurity/trivy-db/pkg/vulnsrc/vulnerability"
|
||||
"github.com/aquasecurity/trivy/pkg/log"
|
||||
"github.com/aquasecurity/trivy/pkg/types"
|
||||
)
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
@@ -36,19 +32,19 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
getSeverity []db.GetSeverityExpectation
|
||||
getVulnerability []db.GetVulnerabilityExpectation
|
||||
getSeverity []db.OperationGetSeverityExpectation
|
||||
getVulnerability []db.OperationGetVulnerabilityExpectation
|
||||
args args
|
||||
expectedVulnerabilities []types.DetectedVulnerability
|
||||
}{
|
||||
{
|
||||
name: "happy path, with only OS vulnerability but no vendor severity, no NVD",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "dos",
|
||||
Description: "dos vulnerability",
|
||||
@@ -78,12 +74,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path, with only OS vulnerability but no vendor severity, yes NVD",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "dos",
|
||||
Description: "dos vulnerability",
|
||||
@@ -116,12 +112,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path, with only OS vulnerability but no severity, no vendor severity, no NVD",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "dos",
|
||||
Description: "dos vulnerability",
|
||||
@@ -149,12 +145,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path, with only OS vulnerability, yes vendor severity, with both NVD and CVSS info",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "dos",
|
||||
Description: "dos vulnerability",
|
||||
@@ -218,12 +214,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path, with only OS vulnerability, yes vendor severity, with both NVD and deprecated vendor vectors",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "dos",
|
||||
Description: "dos vulnerability",
|
||||
@@ -277,12 +273,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path light db, with only OS vulnerability, yes vendor severity",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Severity: dbTypes.SeverityMedium.String(),
|
||||
VendorSeverity: dbTypes.VendorSeverity{
|
||||
@@ -310,12 +306,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "happy path, with only library vulnerability",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2020-0001",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Vulnerability: dbTypes.Vulnerability{
|
||||
Title: "COVID-19",
|
||||
Description: "a nasty virus vulnerability for humans",
|
||||
@@ -349,12 +345,12 @@ func TestClient_FillInfo(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "GetVulnerability returns an error",
|
||||
getVulnerability: []db.GetVulnerabilityExpectation{
|
||||
getVulnerability: []db.OperationGetVulnerabilityExpectation{
|
||||
{
|
||||
Args: db.GetVulnerabilityArgs{
|
||||
Args: db.OperationGetVulnerabilityArgs{
|
||||
VulnerabilityID: "CVE-2019-0004",
|
||||
},
|
||||
Returns: db.GetVulnerabilityReturns{
|
||||
Returns: db.OperationGetVulnerabilityReturns{
|
||||
Err: xerrors.New("failed"),
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user