@@ -218,28 +218,30 @@ func TestShouldSnapshotVM(t *testing.T) {
218218 cases := []struct {
219219 name string
220220 policy cocoonv1.SnapshotPolicy
221- vmName string
221+ role string
222222 want bool
223223 }{
224- {"always/slot0" , cocoonv1 .SnapshotPolicyAlways , "vk-prod-demo-0" , true },
225- {"always/slot3" , cocoonv1 .SnapshotPolicyAlways , "vk-prod-demo-3" , true },
226- {"always/toolbox" , cocoonv1 .SnapshotPolicyAlways , "vk-prod-my-tb" , true },
227- {"empty-defaults-to-always" , "" , "vk-prod-demo-0" , true },
228- {"empty-defaults-to-always/sub" , "" , "vk-prod-demo-2" , true },
229-
230- {"never/slot0" , cocoonv1 .SnapshotPolicyNever , "vk-prod-demo-0" , false },
231- {"never/slot3" , cocoonv1 .SnapshotPolicyNever , "vk-prod-demo-3" , false },
232- {"never/toolbox" , cocoonv1 .SnapshotPolicyNever , "vk-prod-my-tb" , false },
233-
234- {"main-only/slot0" , cocoonv1 .SnapshotPolicyMainOnly , "vk-prod-demo-0" , true },
235- {"main-only/slot3" , cocoonv1 .SnapshotPolicyMainOnly , "vk-prod-demo-3" , false },
236- {"main-only/toolbox" , cocoonv1 .SnapshotPolicyMainOnly , "vk-prod-my-tb" , false },
224+ {"always/main" , cocoonv1 .SnapshotPolicyAlways , RoleMain , true },
225+ {"always/sub-agent" , cocoonv1 .SnapshotPolicyAlways , RoleSubAgent , true },
226+ {"always/toolbox" , cocoonv1 .SnapshotPolicyAlways , RoleToolbox , true },
227+ {"always/empty-role" , cocoonv1 .SnapshotPolicyAlways , "" , true },
228+ {"empty-policy-defaults-to-always" , "" , RoleToolbox , true },
229+
230+ {"never/main" , cocoonv1 .SnapshotPolicyNever , RoleMain , false },
231+ {"never/sub-agent" , cocoonv1 .SnapshotPolicyNever , RoleSubAgent , false },
232+ {"never/toolbox" , cocoonv1 .SnapshotPolicyNever , RoleToolbox , false },
233+ {"never/empty-role" , cocoonv1 .SnapshotPolicyNever , "" , false },
234+
235+ {"main-only/main" , cocoonv1 .SnapshotPolicyMainOnly , RoleMain , true },
236+ {"main-only/sub-agent" , cocoonv1 .SnapshotPolicyMainOnly , RoleSubAgent , false },
237+ {"main-only/toolbox" , cocoonv1 .SnapshotPolicyMainOnly , RoleToolbox , false },
238+ {"main-only/empty-role" , cocoonv1 .SnapshotPolicyMainOnly , "" , false },
237239 }
238240 for _ , c := range cases {
239241 t .Run (c .name , func (t * testing.T ) {
240- spec := VMSpec {VMName : c . vmName , SnapshotPolicy : string (c .policy )}
241- if got := ShouldSnapshotVM (spec ); got != c .want {
242- t .Errorf ("ShouldSnapshotVM(%s, %q) = %v, want %v" , c .policy , c .vmName , got , c .want )
242+ spec := VMSpec {SnapshotPolicy : string (c .policy )}
243+ if got := ShouldSnapshotVM (spec , c . role ); got != c .want {
244+ t .Errorf ("ShouldSnapshotVM(%s, %q) = %v, want %v" , c .policy , c .role , got , c .want )
243245 }
244246 })
245247 }
0 commit comments