Skip to content
This repository was archived by the owner on Apr 11, 2024. It is now read-only.

Commit c82c8dc

Browse files
committed
test: move PC endpoint unit tests
1 parent 674c220 commit c82c8dc

File tree

2 files changed

+38
-30
lines changed

2 files changed

+38
-30
lines changed

pkg/handlers/nutanix/mutation/metapatch_handler_test.go

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@ import (
2525
nutanixclusterconfig "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/clusterconfig"
2626
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/mutation/machinedetails"
2727
machinedetailstests "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/mutation/machinedetails/tests"
28-
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/mutation/prismcentralendpoint"
29-
prismcentralendpointtests "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/mutation/prismcentralendpoint/tests"
3028
)
3129

3230
func metaPatchGeneratorFunc(mgr manager.Manager) func() mutation.GeneratePatches {
@@ -46,14 +44,6 @@ func TestGeneratePatches(t *testing.T) {
4644

4745
mgr := testEnv.Manager
4846

49-
prismcentralendpointtests.TestGeneratePatches(
50-
t,
51-
metaPatchGeneratorFunc(mgr),
52-
clusterconfig.MetaVariableName,
53-
nutanixclusterconfig.NutanixVariableName,
54-
prismcentralendpoint.VariableName,
55-
)
56-
5747
machinedetailstests.TestControlPlaneGeneratePatches(
5848
t,
5949
metaPatchGeneratorFunc(mgr),

pkg/handlers/nutanix/mutation/prismcentralendpoint/tests/generate_patches.go renamed to pkg/handlers/nutanix/mutation/prismcentralendpoint/inject_test.go

Lines changed: 38 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
// Copyright 2023 D2iQ, Inc. All rights reserved.
22
// SPDX-License-Identifier: Apache-2.0
33

4-
package tests
4+
package prismcentralendpoint
55

66
import (
77
"testing"
88

9+
. "github.com/onsi/ginkgo/v2"
910
"github.com/onsi/gomega"
1011
corev1 "k8s.io/api/core/v1"
1112
"k8s.io/utils/ptr"
@@ -15,30 +16,33 @@ import (
1516
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/common/pkg/capi/clustertopology/handlers/mutation"
1617
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/common/pkg/testutils/capitest"
1718
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/common/pkg/testutils/capitest/request"
19+
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/generic/clusterconfig"
20+
nutanixclusterconfig "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/nutanix/clusterconfig"
1821
)
1922

2023
//
2124
//nolint:lll // just a long string
2225
const testCertBundle = "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVjekNDQTF1Z0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRUUZBRC4uQWtHQTFVRUJoTUNSMEl4CkV6QVJCZ05WQkFnVENsTnZiV1V0VTNSaGRHVXhGREFTQmdOVkJBb1RDMC4uMEVnVEhSa01UY3dOUVlEClZRUUxFeTVEYkdGemN5QXhJRkIxWW14cFl5QlFjbWx0WVhKNUlFTmxjbi4uWFJwYjI0Z1FYVjBhRzl5CmFYUjVNUlF3RWdZRFZRUURFd3RDWlhOMElFTkJJRXgwWkRBZUZ3MHdNRC4uVFV3TVRaYUZ3MHdNVEF5Ck1EUXhPVFV3TVRaYU1JR0hNUXN3Q1FZRFZRUUdFd0pIUWpFVE1CRUdBMS4uMjl0WlMxVGRHRjBaVEVVCk1CSUdBMVVFQ2hNTFFtVnpkQ0JEUVNCTWRHUXhOekExQmdOVkJBc1RMay4uREVnVUhWaWJHbGpJRkJ5CmFXMWhjbmtnUTJWeWRHbG1hV05oZEdsdmJpQkJkWFJvYjNKcGRIa3hGRC4uQU1UQzBKbGMzUWdRMEVnClRIUmtNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZy4uVHoybXI3U1ppQU1mUXl1CnZCak05T2lKalJhelhCWjFCalA1Q0UvV20vUnI1MDBQUksrTGg5eDVlSi4uL0FOQkUwc1RLMFpzREdNCmFrMm0xZzdvcnVJM2RZM1ZIcUl4RlR6MFRhMWQrTkFqd25MZTRuT2I3Ly4uazA1U2hoQnJKR0JLS3hiCjhuMTA0by81cDhIQXNaUGR6YkZNSXlOakp6Qk0ybzV5NUExM3dpTGl0RS4uZnlZa1F6YXhDdzBBd3psCmtWSGlJeUN1YUY0d2o1NzFwU3prdjZzdis0SURNYlQvWHBDbzhMNndUYS4uc2grZXRMRDZGdFRqWWJiCnJ2WjhSUU0xdGxLZG9NSGcycXhyYUFWKytITkJZbU5XczBkdUVkalViSi4uWEk5VHRuUzRvMUNrajdQCk9mbGppUUlEQVFBQm80SG5NSUhrTUIwR0ExVWREZ1FXQkJROHVyTUNSTC4uNUFrSXA5TkpISnc1VENCCnRBWURWUjBqQklHc01JR3BnQlE4dXJNQ1JMWVlNSFVLVTVBa0lwOU5KSC4uYVNCaWpDQmh6RUxNQWtHCkExVUVCaE1DUjBJeEV6QVJCZ05WQkFnVENsTnZiV1V0VTNSaGRHVXhGRC4uQW9UQzBKbGMzUWdRMEVnClRIUmtNVGN3TlFZRFZRUUxFeTVEYkdGemN5QXhJRkIxWW14cFl5QlFjbS4uRU5sY25ScFptbGpZWFJwCmIyNGdRWFYwYUc5eWFYUjVNUlF3RWdZRFZRUURFd3RDWlhOMElFTkJJRS4uREFNQmdOVkhSTUVCVEFECkFRSC9NQTBHQ1NxR1NJYjNEUUVCQkFVQUE0SUJBUUMxdVlCY3NTbmN3QS4uRENzUWVyNzcyQzJ1Y3BYCnhRVUUvQzBwV1dtNmdEa3dkNUQwRFNNREpScVYvd2VvWjR3QzZCNzNmNS4uYkxoR1lIYVhKZVNENktyClhjb093TGRTYUdtSllzbExLWkIzWklERXAwd1lUR2hndGViNkpGaVR0bi4uc2YyeGRyWWZQQ2lJQjdnCkJNQVY3R3pkYzRWc3BTNmxqckFoYmlpYXdkQmlRbFFtc0JlRno5SmtGNC4uYjNsOEJvR04rcU1hNTZZCkl0OHVuYTJnWTRsMk8vL29uODhyNUlXSmxtMUwwb0E4ZTRmUjJ5ckJIWC4uYWRzR2VGS2t5TnJ3R2kvCjd2UU1mWGRHc1JyWE5HUkduWCt2V0RaMy96V0kwam9EdENrTm5xRXBWbi4uSG9YCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0="
2326

24-
func TestGeneratePatches(
25-
t *testing.T,
26-
generatorFunc func() mutation.GeneratePatches,
27-
variableName string,
28-
variablePath ...string,
29-
) {
30-
t.Helper()
31-
capitest.ValidateGeneratePatches(
32-
t,
33-
generatorFunc,
34-
capitest.PatchTestDef{
27+
func TestPrismCentralEndpointPatch(t *testing.T) {
28+
gomega.RegisterFailHandler(Fail)
29+
RunSpecs(t, "Nutanix Prism Central Endpoint mutator suite")
30+
}
31+
32+
var _ = Describe("Generate Nutanix Prism Central Endpoint patches", func() {
33+
patchGenerator := func() mutation.GeneratePatches {
34+
return mutation.NewMetaGeneratePatchesHandler("", NewPatch()).(mutation.GeneratePatches)
35+
}
36+
37+
testDefs := []capitest.PatchTestDef{
38+
{
3539
Name: "unset variable",
3640
},
37-
capitest.PatchTestDef{
41+
{
3842
Name: "all required fields set",
3943
Vars: []runtimehooksv1.Variable{
4044
capitest.VariableWithValue(
41-
variableName,
45+
clusterconfig.MetaVariableName,
4246
v1alpha1.NutanixPrismCentralEndpointSpec{
4347
Host: "prism-central.nutanix.com",
4448
Port: 9441,
@@ -47,7 +51,8 @@ func TestGeneratePatches(
4751
Name: "credentials",
4852
},
4953
},
50-
variablePath...,
54+
nutanixclusterconfig.NutanixVariableName,
55+
VariableName,
5156
),
5257
},
5358
RequestItem: request.NewNutanixClusterTemplateRequestItem(""),
@@ -68,11 +73,11 @@ func TestGeneratePatches(
6873
},
6974
},
7075
},
71-
capitest.PatchTestDef{
76+
{
7277
Name: "additional trust bundle is set",
7378
Vars: []runtimehooksv1.Variable{
7479
capitest.VariableWithValue(
75-
variableName,
80+
clusterconfig.MetaVariableName,
7681
v1alpha1.NutanixPrismCentralEndpointSpec{
7782
Host: "prism-central.nutanix.com",
7883
Port: 9441,
@@ -82,7 +87,8 @@ func TestGeneratePatches(
8287
},
8388
AdditionalTrustBundle: ptr.To(testCertBundle),
8489
},
85-
variablePath...,
90+
nutanixclusterconfig.NutanixVariableName,
91+
VariableName,
8692
),
8793
},
8894
RequestItem: request.NewNutanixClusterTemplateRequestItem(""),
@@ -104,5 +110,17 @@ func TestGeneratePatches(
104110
},
105111
},
106112
},
107-
)
108-
}
113+
}
114+
115+
// create test node for each case
116+
for testIdx := range testDefs {
117+
tt := testDefs[testIdx]
118+
It(tt.Name, func() {
119+
capitest.AssertGeneratePatches(
120+
GinkgoT(),
121+
patchGenerator,
122+
&tt,
123+
)
124+
})
125+
}
126+
})

0 commit comments

Comments
 (0)