@@ -695,8 +695,8 @@ func TestGetReferrers(t *testing.T) {
695695 })
696696}
697697
698- func TestQueryResolverErrors (t * testing.T ) {
699- Convey ("Errors" , t , func () {
698+ func TestQueryResolverErrorsAndEmptyResults (t * testing.T ) {
699+ Convey ("Errors and empty results " , t , func () {
700700 log := log .NewTestLogger ()
701701 ctx := graphql .WithResponseContext (context .Background (), graphql .DefaultErrorPresenter ,
702702 graphql .DefaultRecover )
@@ -735,7 +735,10 @@ func TestQueryResolverErrors(t *testing.T) {
735735 So (err , ShouldNotBeNil )
736736 })
737737
738- Convey ("CVEDiffListForImages nill cveinfo" , func () {
738+ Convey ("CVEDiffListForImages nil cveinfo returns empty result" , func () {
739+ minuend := gql_generated.ImageInput {Repo : "repo1" , Tag : "1.0.0" , Digest : "sha256:minuend" }
740+ subtrahend := gql_generated.ImageInput {Repo : "repo2" , Tag : "2.0.0" , Digest : "sha256:subtrahend" }
741+
739742 resolverConfig := NewResolver (
740743 log ,
741744 storage.StoreController {
@@ -752,9 +755,75 @@ func TestQueryResolverErrors(t *testing.T) {
752755
753756 qr := queryResolver {resolverConfig }
754757
755- _ , err := qr .CVEDiffListForImages (ctx , gql_generated. ImageInput {}, gql_generated. ImageInput {} ,
758+ result , err := qr .CVEDiffListForImages (ctx , minuend , subtrahend ,
756759 & gql_generated.PageInput {}, nil , nil )
757- So (err , ShouldNotBeNil )
760+ So (err , ShouldBeNil )
761+ So (result , ShouldNotBeNil )
762+ So (result .Minuend , ShouldNotBeNil )
763+ So (result .Minuend .Repo , ShouldEqual , minuend .Repo )
764+ So (result .Minuend .Tag , ShouldEqual , minuend .Tag )
765+ So (result .Minuend .Digest , ShouldEqual , minuend .Digest )
766+ So (result .Subtrahend , ShouldNotBeNil )
767+ So (result .Subtrahend .Repo , ShouldEqual , subtrahend .Repo )
768+ So (result .Subtrahend .Tag , ShouldEqual , subtrahend .Tag )
769+ So (result .Subtrahend .Digest , ShouldEqual , subtrahend .Digest )
770+ So (result .Page , ShouldNotBeNil )
771+ So (result .CVEList , ShouldNotBeNil )
772+ So (len (result .CVEList ), ShouldEqual , 0 )
773+ })
774+
775+ Convey ("CVEListForImage nil cveinfo returns empty result" , func () {
776+ resolverConfig := NewResolver (
777+ log ,
778+ storage.StoreController {DefaultStore : mocks.MockedImageStore {}},
779+ mocks.MetaDBMock {},
780+ nil ,
781+ )
782+
783+ qr := queryResolver {resolverConfig }
784+
785+ result , err := qr .CVEListForImage (ctx , "repo1:1.0.0" , & gql_generated.PageInput {}, nil , nil , nil )
786+ So (err , ShouldBeNil )
787+ So (result , ShouldNotBeNil )
788+ So (result .Page , ShouldNotBeNil )
789+ So (result .CVEList , ShouldNotBeNil )
790+ So (len (result .CVEList ), ShouldEqual , 0 )
791+ })
792+
793+ Convey ("ImageListForCve nil cveinfo returns empty result" , func () {
794+ resolverConfig := NewResolver (
795+ log ,
796+ storage.StoreController {DefaultStore : mocks.MockedImageStore {}},
797+ mocks.MetaDBMock {},
798+ nil ,
799+ )
800+
801+ qr := queryResolver {resolverConfig }
802+
803+ result , err := qr .ImageListForCve (ctx , "CVE-123" , & gql_generated.Filter {}, & gql_generated.PageInput {})
804+ So (err , ShouldBeNil )
805+ So (result , ShouldNotBeNil )
806+ So (result .Page , ShouldNotBeNil )
807+ So (result .Results , ShouldNotBeNil )
808+ So (len (result .Results ), ShouldEqual , 0 )
809+ })
810+
811+ Convey ("ImageListWithCVEFixed nil cveinfo returns empty result" , func () {
812+ resolverConfig := NewResolver (
813+ log ,
814+ storage.StoreController {DefaultStore : mocks.MockedImageStore {}},
815+ mocks.MetaDBMock {},
816+ nil ,
817+ )
818+
819+ qr := queryResolver {resolverConfig }
820+
821+ result , err := qr .ImageListWithCVEFixed (ctx , "CVE-123" , "repo1" , & gql_generated.Filter {}, & gql_generated.PageInput {})
822+ So (err , ShouldBeNil )
823+ So (result , ShouldNotBeNil )
824+ So (result .Page , ShouldNotBeNil )
825+ So (result .Results , ShouldNotBeNil )
826+ So (len (result .Results ), ShouldEqual , 0 )
758827 })
759828
760829 Convey ("CVEDiffListForImages error" , func () {
0 commit comments