@@ -232,3 +232,58 @@ func TestResolveImageErr(t *testing.T) {
232232 })
233233 }
234234}
235+
236+ func TestCheckFallbackImg (t * testing.T ) {
237+ daprImgWithPrivateRegAndDefAsDocker := daprImageInfo {
238+ ghcrImageName : daprGhcrImageName ,
239+ dockerHubImageName : daprDockerImageName ,
240+ imageRegistryURL : "example.io/user" ,
241+ imageRegistryName : "dockerhub" ,
242+ }
243+ daprImgWithPrivateRegAndDefAsGHCR := daprImageInfo {
244+ ghcrImageName : daprGhcrImageName ,
245+ dockerHubImageName : daprDockerImageName ,
246+ imageRegistryURL : "example.io/user" ,
247+ imageRegistryName : "ghcr" ,
248+ }
249+ daprImgWithPrivateRegAndNoDef := daprImageInfo {
250+ ghcrImageName : daprGhcrImageName ,
251+ dockerHubImageName : daprDockerImageName ,
252+ imageRegistryURL : "example.io/user" ,
253+ imageRegistryName : "" ,
254+ }
255+ daprImgWithDefAsDocker := daprImageInfo {
256+ ghcrImageName : daprGhcrImageName ,
257+ dockerHubImageName : daprDockerImageName ,
258+ imageRegistryURL : "" ,
259+ imageRegistryName : "dockerhub" ,
260+ }
261+ daprImgWithDefAsGHCR := daprImageInfo {
262+ ghcrImageName : daprGhcrImageName ,
263+ dockerHubImageName : daprDockerImageName ,
264+ imageRegistryURL : "" ,
265+ imageRegistryName : "ghcr" ,
266+ }
267+
268+ tests := []struct {
269+ name string
270+ imageInfo daprImageInfo
271+ fromDir string
272+ expect bool
273+ }{
274+ {"checkFallbackImg() with private registry and def as Docker Hub" , daprImgWithPrivateRegAndDefAsDocker , "" , false },
275+ {"checkFallbackImg() with private registry and def as GHCR" , daprImgWithPrivateRegAndDefAsGHCR , "" , false },
276+ {"checkFallbackImg() with private registry with no Def" , daprImgWithPrivateRegAndNoDef , "" , false },
277+ {"checkFallbackImg() with no private registry and def as Docker Hub" , daprImgWithDefAsDocker , "" , false },
278+ {"checkFallbackImg() with no private registry and def as GHCR" , daprImgWithDefAsGHCR , "" , true },
279+ {"checkFallbackImg() airgap mode with no private registry and def as GHCR" , daprImgWithDefAsGHCR , "testDir" , false },
280+ {"checkFallbackImg() airgap mode with no private registry and def as Docker Hub" , daprImgWithDefAsDocker , "testDir" , false },
281+ }
282+
283+ for _ , test := range tests {
284+ t .Run (test .name , func (t * testing.T ) {
285+ got := checkFallbackImgForPlacement (test .imageInfo , test .fromDir )
286+ assert .Equal (t , test .expect , got )
287+ })
288+ }
289+ }
0 commit comments