2023-09-17 17:12:20 -05:00
|
|
|
//go:build search
|
|
|
|
|
2023-07-06 03:36:26 -05:00
|
|
|
package cveinfo
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
"time"
|
|
|
|
|
|
|
|
ispec "github.com/opencontainers/image-spec/specs-go/v1"
|
|
|
|
. "github.com/smartystreets/goconvey/convey"
|
|
|
|
|
|
|
|
cvemodel "zotregistry.io/zot/pkg/extensions/search/cve/model"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestUtils(t *testing.T) {
|
|
|
|
Convey("Utils", t, func() {
|
|
|
|
Convey("mostRecentUpdate", func() {
|
|
|
|
// empty
|
|
|
|
timestamp := mostRecentUpdate([]cvemodel.DescriptorInfo{})
|
|
|
|
So(timestamp, ShouldResemble, time.Time{})
|
|
|
|
|
|
|
|
timestamp = mostRecentUpdate([]cvemodel.DescriptorInfo{
|
|
|
|
{
|
|
|
|
Timestamp: time.Date(2000, 1, 1, 1, 1, 1, 1, time.UTC),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Timestamp: time.Date(2005, 1, 1, 1, 1, 1, 1, time.UTC),
|
|
|
|
},
|
|
|
|
})
|
|
|
|
So(timestamp, ShouldResemble, time.Date(2005, 1, 1, 1, 1, 1, 1, time.UTC))
|
|
|
|
})
|
|
|
|
|
|
|
|
Convey("GetFixedTags", func() {
|
|
|
|
tags := GetFixedTags(
|
|
|
|
[]cvemodel.TagInfo{
|
|
|
|
{},
|
|
|
|
},
|
|
|
|
[]cvemodel.TagInfo{
|
|
|
|
{
|
|
|
|
Descriptor: cvemodel.Descriptor{
|
|
|
|
MediaType: ispec.MediaTypeImageManifest,
|
|
|
|
},
|
|
|
|
Timestamp: time.Date(2010, 1, 1, 1, 1, 1, 1, time.UTC),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Descriptor: cvemodel.Descriptor{
|
|
|
|
MediaType: ispec.MediaTypeImageIndex,
|
|
|
|
},
|
|
|
|
Manifests: []cvemodel.DescriptorInfo{
|
|
|
|
{
|
|
|
|
Timestamp: time.Date(2002, 1, 1, 1, 1, 1, 1, time.UTC),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Timestamp: time.Date(2000, 1, 1, 1, 1, 1, 1, time.UTC),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Descriptor: cvemodel.Descriptor{
|
|
|
|
MediaType: "bad Type",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
})
|
|
|
|
So(tags, ShouldBeEmpty)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|