@@ -42,7 +42,10 @@ func TestImpVMSnapshot_nodeLocal(t *testing.T) {
4242 Spec : ImpVMSnapshotSpec {
4343 SourceVMName : "my-vm" ,
4444 SourceVMNamespace : "default" ,
45- Storage : SnapshotStorageSpec {Type : "node-local" },
45+ Storage : SnapshotStorageSpec {
46+ Type : "node-local" ,
47+ NodeLocal : & NodeLocalSpec {Path : "/mnt/nfs/snapshots" },
48+ },
4649 },
4750 }
4851 b , err := json .Marshal (snap )
@@ -51,4 +54,27 @@ func TestImpVMSnapshot_nodeLocal(t *testing.T) {
5154 require .NoError (t , json .Unmarshal (b , & out ))
5255 assert .Equal (t , "node-local" , out .Spec .Storage .Type )
5356 assert .Nil (t , out .Spec .Storage .OCIRegistry )
57+ assert .Equal (t , "/mnt/nfs/snapshots" , out .Spec .Storage .NodeLocal .Path )
58+ }
59+
60+ func TestImpVMSnapshot_baseSnapshotElection (t * testing.T ) {
61+ snap := ImpVMSnapshot {
62+ Spec : ImpVMSnapshotSpec {
63+ SourceVMName : "golden-vm" ,
64+ SourceVMNamespace : "default" ,
65+ BaseSnapshot : "snap-20260305-0200" ,
66+ Storage : SnapshotStorageSpec {Type : "node-local" },
67+ },
68+ Status : ImpVMSnapshotStatus {
69+ BaseSnapshot : "snap-20260305-0200" ,
70+ TerminatedAt : & metav1.Time {Time : metav1 .Now ().Time },
71+ },
72+ }
73+ b , err := json .Marshal (snap )
74+ require .NoError (t , err )
75+ var out ImpVMSnapshot
76+ require .NoError (t , json .Unmarshal (b , & out ))
77+ assert .Equal (t , "snap-20260305-0200" , out .Spec .BaseSnapshot )
78+ assert .Equal (t , "snap-20260305-0200" , out .Status .BaseSnapshot )
79+ assert .NotNil (t , out .Status .TerminatedAt )
5480}
0 commit comments