Skip to content

Commit 1194110

Browse files
committed
add test cases
1 parent 4381933 commit 1194110

File tree

2 files changed

+74
-0
lines changed

2 files changed

+74
-0
lines changed
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
package instance_test
2+
3+
import (
4+
"testing"
5+
6+
. "github.com/onsi/ginkgo/v2"
7+
. "github.com/onsi/gomega"
8+
9+
infrav1 "github.com/sp-yduck/cluster-api-provider-proxmox/api/v1beta1"
10+
"github.com/sp-yduck/cluster-api-provider-proxmox/cloud/services/compute/instance"
11+
)
12+
13+
func TestCloudInit(t *testing.T) {
14+
RegisterFailHandler(Fail)
15+
RunSpecs(t, "CloudInit Suite")
16+
}
17+
18+
var _ = Describe("mergeUserDatas", Label("unit", "cloudinit"), func() {
19+
BeforeEach(func() {})
20+
AfterEach(func() {})
21+
22+
var _ = Context("merge 3 user datas", func() {
23+
var _ = It("should no error", func() {
24+
a := infrav1.UserData{
25+
User: "test-user",
26+
RunCmd: []string{"command C"},
27+
}
28+
b := infrav1.UserData{
29+
User: "override-user",
30+
RunCmd: []string{"command A", "command B"},
31+
}
32+
c := infrav1.UserData{
33+
User: "additional-user",
34+
RunCmd: []string{"command D"},
35+
}
36+
expected := infrav1.UserData{
37+
User: "additional-user",
38+
RunCmd: []string{"command D", "command A", "command B", "command C"},
39+
}
40+
d, err := instance.MergeUserDatas(&a, &b, &c)
41+
Expect(err).NotTo(HaveOccurred())
42+
Expect(*d).To(Equal(expected))
43+
})
44+
})
45+
46+
var _ = Context("merge 2 user datas and nil", func() {
47+
var _ = It("should no error", func() {
48+
a := infrav1.UserData{
49+
User: "test-user",
50+
RunCmd: []string{"command C"},
51+
}
52+
b := infrav1.UserData{
53+
User: "override-user",
54+
RunCmd: []string{"command A", "command B"},
55+
}
56+
expected := infrav1.UserData{
57+
User: "override-user",
58+
RunCmd: []string{"command A", "command B", "command C"},
59+
}
60+
c, err := instance.MergeUserDatas(&a, &b, nil)
61+
Expect(err).NotTo(HaveOccurred())
62+
Expect(*c).To(Equal(expected))
63+
})
64+
})
65+
})
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package instance
2+
3+
import (
4+
infrav1 "github.com/sp-yduck/cluster-api-provider-proxmox/api/v1beta1"
5+
)
6+
7+
func MergeUserDatas(a, b, c *infrav1.UserData) (*infrav1.UserData, error) {
8+
return mergeUserDatas(a, b, c)
9+
}

0 commit comments

Comments
 (0)