Skip to content

Commit ff92203

Browse files
tylerschultzflawedmatrixAidan Obley
committed
Refactor controller tests
extract function to create claims assert on the IPAddress's Spec.Address field in some cases where testing the entire IPAddress is excessive Co-authored-by: Edwin Xie <[email protected]> Co-authored-by: Aidan Obley <[email protected]>
1 parent 678b6c0 commit ff92203

File tree

3 files changed

+125
-673
lines changed

3 files changed

+125
-673
lines changed

internal/controllers/inclusterippool_test.go

+3-41
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ import (
2323

2424
. "github.com/onsi/ginkgo/v2"
2525
. "github.com/onsi/gomega"
26-
corev1 "k8s.io/api/core/v1"
2726
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
28-
"k8s.io/utils/pointer"
2927
ipamv1 "sigs.k8s.io/cluster-api/exp/ipam/api/v1alpha1"
3028
. "sigs.k8s.io/controller-runtime/pkg/envtest/komega"
3129

@@ -68,19 +66,7 @@ var _ = Describe("IP Pool Reconciler", func() {
6866
Expect(genericPool.PoolStatus().Addresses.Free).To(Equal(expectedTotal))
6967

7068
for i := 0; i < expectedUsed; i++ {
71-
claim := ipamv1.IPAddressClaim{
72-
ObjectMeta: metav1.ObjectMeta{
73-
Name: fmt.Sprintf("test%d", i),
74-
Namespace: namespace,
75-
},
76-
Spec: ipamv1.IPAddressClaimSpec{
77-
PoolRef: corev1.TypedLocalObjectReference{
78-
APIGroup: pointer.String("ipam.cluster.x-k8s.io"),
79-
Kind: poolType,
80-
Name: genericPool.GetName(),
81-
},
82-
},
83-
}
69+
claim := newClaim(fmt.Sprintf("test%d", i), namespace, poolType, genericPool.GetName())
8470
Expect(k8sClient.Create(context.Background(), &claim)).To(Succeed())
8571
createdClaimNames = append(createdClaimNames, claim.Name)
8672
}
@@ -155,19 +141,7 @@ var _ = Describe("IP Pool Reconciler", func() {
155141
Expect(k8sClient.Create(context.Background(), genericPool)).To(Succeed())
156142

157143
for i := 0; i < numClaims; i++ {
158-
claim := ipamv1.IPAddressClaim{
159-
ObjectMeta: metav1.ObjectMeta{
160-
Name: fmt.Sprintf("test%d", i),
161-
Namespace: namespace,
162-
},
163-
Spec: ipamv1.IPAddressClaimSpec{
164-
PoolRef: corev1.TypedLocalObjectReference{
165-
APIGroup: pointer.String("ipam.cluster.x-k8s.io"),
166-
Kind: poolType,
167-
Name: genericPool.GetName(),
168-
},
169-
},
170-
}
144+
claim := newClaim(fmt.Sprintf("test%d", i), namespace, poolType, genericPool.GetName())
171145
Expect(k8sClient.Create(context.Background(), &claim)).To(Succeed())
172146
createdClaimNames = append(createdClaimNames, claim.Name)
173147
}
@@ -212,19 +186,7 @@ var _ = Describe("IP Pool Reconciler", func() {
212186
Expect(k8sClient.Create(context.Background(), pool)).To(Succeed())
213187
Eventually(Get(pool)).Should(Succeed())
214188

215-
claim := ipamv1.IPAddressClaim{
216-
ObjectMeta: metav1.ObjectMeta{
217-
Name: "finalizer-pool-test",
218-
Namespace: namespace,
219-
},
220-
Spec: ipamv1.IPAddressClaimSpec{
221-
PoolRef: corev1.TypedLocalObjectReference{
222-
APIGroup: pointer.String("ipam.cluster.x-k8s.io"),
223-
Kind: poolType,
224-
Name: pool.GetName(),
225-
},
226-
},
227-
}
189+
claim := newClaim("finalizer-pool-test", namespace, poolType, pool.GetName())
228190

229191
Expect(k8sClient.Create(context.Background(), &claim)).To(Succeed())
230192

0 commit comments

Comments
 (0)