github.com/devseccon/trivy@v0.47.1-0.20231123133102-bd902a0bd996/pkg/version/version_test.go (about) 1 package version 2 3 import ( 4 "testing" 5 "time" 6 7 "github.com/stretchr/testify/assert" 8 9 "github.com/aquasecurity/trivy-db/pkg/metadata" 10 "github.com/devseccon/trivy/pkg/policy" 11 ) 12 13 func Test_BuildVersionInfo(t *testing.T) { 14 15 expected := VersionInfo{ 16 Version: "dev", 17 VulnerabilityDB: &metadata.Metadata{ 18 Version: 2, 19 NextUpdate: time.Date(2023, 7, 20, 18, 11, 37, 696263532, time.UTC), 20 UpdatedAt: time.Date(2023, 7, 20, 12, 11, 37, 696263932, time.UTC), 21 DownloadedAt: time.Date(2023, 7, 25, 7, 1, 41, 239158000, time.UTC), 22 }, 23 JavaDB: &metadata.Metadata{ 24 Version: 1, 25 NextUpdate: time.Date(2023, 7, 28, 1, 3, 52, 169192565, time.UTC), 26 UpdatedAt: time.Date(2023, 7, 25, 1, 3, 52, 169192765, time.UTC), 27 DownloadedAt: time.Date(2023, 7, 25, 9, 37, 48, 906152000, time.UTC), 28 }, 29 PolicyBundle: &policy.Metadata{ 30 Digest: "sha256:829832357626da2677955e3b427191212978ba20012b6eaa03229ca28569ae43", 31 DownloadedAt: time.Date(2023, 7, 23, 16, 40, 33, 122462000, time.UTC), 32 }, 33 } 34 assert.Equal(t, expected, NewVersionInfo("testdata/testcache")) 35 } 36 37 func Test_VersionInfoString(t *testing.T) { 38 expected := `Version: dev 39 Vulnerability DB: 40 Version: 2 41 UpdatedAt: 2023-07-20 12:11:37.696263932 +0000 UTC 42 NextUpdate: 2023-07-20 18:11:37.696263532 +0000 UTC 43 DownloadedAt: 2023-07-25 07:01:41.239158 +0000 UTC 44 Java DB: 45 Version: 1 46 UpdatedAt: 2023-07-25 01:03:52.169192765 +0000 UTC 47 NextUpdate: 2023-07-28 01:03:52.169192565 +0000 UTC 48 DownloadedAt: 2023-07-25 09:37:48.906152 +0000 UTC 49 Policy Bundle: 50 Digest: sha256:829832357626da2677955e3b427191212978ba20012b6eaa03229ca28569ae43 51 DownloadedAt: 2023-07-23 16:40:33.122462 +0000 UTC 52 ` 53 versionInfo := NewVersionInfo("testdata/testcache") 54 assert.Equal(t, expected, versionInfo.String()) 55 }