Skip to content

Commit 0948751

Browse files
committed
test(api): cover NodeLocalSpec path, BaseSnapshot election, TerminatedAt round-trip
1 parent cc9a7a8 commit 0948751

1 file changed

Lines changed: 27 additions & 1 deletion

File tree

api/v1alpha1/impvmsnapshot_types_test.go

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)