@@ -510,6 +510,48 @@ func TestSync(t *testing.T) {
510510 expectSuccess : true ,
511511 test : testUpdateSnapshotErrorStatus ,
512512 },
513+ {
514+ // Snapshot status nil, no initial content, new content should be created.
515+ name : "8-1 - Snapshot status nil, no initial snapshot content, new content should be created" ,
516+ initialContents : nocontents ,
517+ expectedContents : withContentAnnotations (newContentArrayNoStatus ("snapcontent-snapuid8-1" , "snapuid8-1" , "snap8-1" , "sid8-1" , validSecretClass , "" , "pv-handle8-1" , deletionPolicy , nil , nil , false , false ), map [string ]string {utils .AnnDeletionSecretRefName : "secret" , utils .AnnDeletionSecretRefNamespace : "default" }),
518+ initialSnapshots : newSnapshotArray ("snap8-1" , "snapuid8-1" , "claim8-1" , "" , validSecretClass , "" , nil , nil , nil , nil , true , false , nil ),
519+ expectedSnapshots : newSnapshotArray ("snap8-1" , "snapuid8-1" , "claim8-1" , "" , validSecretClass , "snapcontent-snapuid8-1" , & False , nil , nil , nil , false , false , nil ),
520+ initialClaims : newClaimArray ("claim8-1" , "pvc-uid8-1" , "1Gi" , "volume8-1" , v1 .ClaimBound , & classEmpty ),
521+ initialVolumes : newVolumeArray ("volume8-1" , "pv-uid8-1" , "pv-handle8-1" , "1Gi" , "pvc-uid8-1" , "claim8-1" , v1 .VolumeBound , v1 .PersistentVolumeReclaimDelete , classEmpty ),
522+ initialSecrets : []* v1.Secret {secret ()},
523+ errors : noerrors ,
524+ expectSuccess : true ,
525+ test : testNewSnapshotContentCreation ,
526+ },
527+ {
528+ // Snapshot status with nil error, no initial content, new content should be created.
529+ name : "8-2 - Snapshot status with nil error, no initial snapshot content, new content should be created" ,
530+ initialContents : nocontents ,
531+ expectedContents : withContentAnnotations (newContentArrayNoStatus ("snapcontent-snapuid8-2" , "snapuid8-2" , "snap8-2" , "sid8-2" , validSecretClass , "" , "pv-handle8-2" , deletionPolicy , nil , nil , false , false ), map [string ]string {utils .AnnDeletionSecretRefName : "secret" , utils .AnnDeletionSecretRefNamespace : "default" }),
532+ initialSnapshots : newSnapshotArray ("snap8-2" , "snapuid8-2" , "claim8-2" , "" , validSecretClass , "" , nil , nil , nil , nil , false , false , nil ),
533+ expectedSnapshots : newSnapshotArray ("snap8-2" , "snapuid8-2" , "claim8-2" , "" , validSecretClass , "snapcontent-snapuid8-2" , & False , nil , nil , nil , false , false , nil ),
534+ initialClaims : newClaimArray ("claim8-2" , "pvc-uid8-2" , "1Gi" , "volume8-2" , v1 .ClaimBound , & classEmpty ),
535+ initialVolumes : newVolumeArray ("volume8-2" , "pv-uid8-2" , "pv-handle8-2" , "1Gi" , "pvc-uid8-2" , "claim8-2" , v1 .VolumeBound , v1 .PersistentVolumeReclaimDelete , classEmpty ),
536+ initialSecrets : []* v1.Secret {secret ()},
537+ errors : noerrors ,
538+ expectSuccess : true ,
539+ test : testNewSnapshotContentCreation ,
540+ },
541+ {
542+ // Snapshot status with error, no initial content, new content should be created, snapshot error should be cleared.
543+ name : "8-3 - Snapshot status with error, no initial content, new content should be created, snapshot error should be cleared" ,
544+ initialContents : nocontents ,
545+ expectedContents : withContentAnnotations (newContentArrayNoStatus ("snapcontent-snapuid8-3" , "snapuid8-3" , "snap8-3" , "sid8-3" , validSecretClass , "" , "pv-handle8-3" , deletionPolicy , nil , nil , false , false ), map [string ]string {utils .AnnDeletionSecretRefName : "secret" , utils .AnnDeletionSecretRefNamespace : "default" }),
546+ initialSnapshots : newSnapshotArray ("snap8-3" , "snapuid8-3" , "claim8-3" , "" , validSecretClass , "" , nil , nil , nil , snapshotErr , false , false , nil ),
547+ expectedSnapshots : newSnapshotArray ("snap8-3" , "snapuid8-3" , "claim8-3" , "" , validSecretClass , "snapcontent-snapuid8-3" , & False , nil , nil , nil , false , false , nil ),
548+ initialClaims : newClaimArray ("claim8-3" , "pvc-uid8-3" , "1Gi" , "volume8-3" , v1 .ClaimBound , & classEmpty ),
549+ initialVolumes : newVolumeArray ("volume8-3" , "pv-uid8-3" , "pv-handle8-3" , "1Gi" , "pvc-uid8-3" , "claim8-3" , v1 .VolumeBound , v1 .PersistentVolumeReclaimDelete , classEmpty ),
550+ initialSecrets : []* v1.Secret {secret ()},
551+ errors : noerrors ,
552+ expectSuccess : true ,
553+ test : testNewSnapshotContentCreation ,
554+ },
513555 }
514556
515557 runSyncTests (t , tests , snapshotClasses )
0 commit comments