@@ -134,8 +134,9 @@ var _ = Describe("Node Controller", func() {
134134
135135 Context ("Shared ENI Mode (Default)" , func () {
136136 It ("should create Node CR with correct NetworkCardsCount" , func () {
137- k8sNode := testutil .CreateTestNode (nodeName )
138- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "ecs.g7.large"
137+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
138+ WithInstanceType ("ecs.g7.large" ).
139+ Build ()
139140 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
140141
141142 reconciler := createReconciler (true , false )
@@ -154,20 +155,20 @@ var _ = Describe("Node Controller", func() {
154155
155156 Context ("Exclusive ENI Mode" , func () {
156157 It ("should create Node CR with NetworkCardsCount and correct allocatable resources" , func () {
157- k8sNode := testutil .CreateTestNode (nodeName )
158- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "ecs.g7.large"
159- k8sNode .Labels ["k8s.aliyun.com/exclusive-mode-eni-type" ] = "eniOnly"
158+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
159+ WithInstanceType ("ecs.g7.large" ).
160+ WithExclusiveENIMode ().
161+ Build ()
160162 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
161163
162- resource := testutil .CreateTestNodeCRD (nodeName )
163- resource .Spec .ENISpec .EnableTrunk = false
164- resource .Spec .Flavor = []networkv1beta1.Flavor {
165- {
164+ resource := testutil .NewNodeCRDBuilder (nodeName ).
165+ WithEnableTrunk (false ).
166+ WithFlavor (networkv1beta1.Flavor {
166167 NetworkInterfaceType : networkv1beta1 .ENITypeSecondary ,
167168 NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
168169 Count : 2 ,
169- },
170- }
170+ }).
171+ Build ()
171172 Expect (k8sClient .Create (ctx , resource )).To (Succeed ())
172173
173174 resource .Status = networkv1beta1.NodeStatus {
@@ -209,19 +210,19 @@ var _ = Describe("Node Controller", func() {
209210
210211 Context ("Trunk ENI Mode" , func () {
211212 It ("should set trunk annotation and calculate max-available-ip correctly" , func () {
212- k8sNode := testutil .CreateTestNode (nodeName )
213- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "ecs.g7.large"
213+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
214+ WithInstanceType ("ecs.g7.large" ).
215+ Build ()
214216 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
215217
216- resource := testutil .CreateTestNodeCRD (nodeName )
217- resource .Spec .ENISpec .EnableTrunk = true
218- resource .Spec .Flavor = []networkv1beta1.Flavor {
219- {
218+ resource := testutil .NewNodeCRDBuilder (nodeName ).
219+ WithEnableTrunk (true ).
220+ WithFlavor (networkv1beta1.Flavor {
220221 NetworkInterfaceType : networkv1beta1 .ENITypeSecondary ,
221222 NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
222223 Count : 2 ,
223- },
224- }
224+ }).
225+ Build ()
225226 Expect (k8sClient .Create (ctx , resource )).To (Succeed ())
226227
227228 resource .Status = networkv1beta1.NodeStatus {
@@ -255,24 +256,26 @@ var _ = Describe("Node Controller", func() {
255256 })
256257
257258 It ("should handle multiple flavors with trunk" , func () {
258- k8sNode := testutil .CreateTestNode (nodeName )
259- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "ecs.g7.large"
259+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
260+ WithInstanceType ("ecs.g7.large" ).
261+ Build ()
260262 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
261263
262- resource := testutil .CreateTestNodeCRD (nodeName )
263- resource .Spec .ENISpec .EnableTrunk = true
264- resource .Spec .Flavor = []networkv1beta1.Flavor {
265- {
266- NetworkInterfaceType : networkv1beta1 .ENITypeSecondary ,
267- NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
268- Count : 2 ,
269- },
270- {
271- NetworkInterfaceType : networkv1beta1 .ENITypeTrunk ,
272- NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
273- Count : 1 ,
274- },
275- }
264+ resource := testutil .NewNodeCRDBuilder (nodeName ).
265+ WithEnableTrunk (true ).
266+ WithFlavor (
267+ networkv1beta1.Flavor {
268+ NetworkInterfaceType : networkv1beta1 .ENITypeSecondary ,
269+ NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
270+ Count : 2 ,
271+ },
272+ networkv1beta1.Flavor {
273+ NetworkInterfaceType : networkv1beta1 .ENITypeTrunk ,
274+ NetworkInterfaceTrafficMode : networkv1beta1 .NetworkInterfaceTrafficModeStandard ,
275+ Count : 1 ,
276+ },
277+ ).
278+ Build ()
276279 Expect (k8sClient .Create (ctx , resource )).To (Succeed ())
277280
278281 resource .Status = networkv1beta1.NodeStatus {
@@ -313,11 +316,13 @@ var _ = Describe("Node Controller", func() {
313316 nodeName := "test-eflo-node-leni"
314317 defer cleanupNode (ctx , nodeName )
315318
316- k8sNode := testutil .CreateEFLONode (nodeName )
317- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "eflo.instance"
318- k8sNode .Spec .ProviderID = "instanceID-leni"
319- k8sNode .Labels ["topology.kubernetes.io/region" ] = "regionID"
320- k8sNode .Labels ["topology.kubernetes.io/zone" ] = "zoneID"
319+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
320+ WithEFLO ().
321+ WithInstanceType ("eflo.instance" ).
322+ WithProviderID ("instanceID-leni" ).
323+ WithRegion ("regionID" ).
324+ WithZone ("zoneID" ).
325+ Build ()
321326 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
322327
323328 efloClient .On ("GetNodeInfoForPod" , mock .Anything , "instanceID-leni" ).Return (& eflo.Content {
@@ -362,10 +367,12 @@ var _ = Describe("Node Controller", func() {
362367 nodeName := "test-eflo-node-ecs"
363368 defer cleanupNode (ctx , nodeName )
364369
365- k8sNode := testutil .CreateEFLONode (nodeName )
366- k8sNode .Labels ["k8s.aliyun.com/exclusive-mode-eni-type" ] = "eniOnly"
367- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "eflo.instance"
368- k8sNode .Spec .ProviderID = "instanceID-ecs"
370+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
371+ WithEFLO ().
372+ WithExclusiveENIMode ().
373+ WithInstanceType ("eflo.instance" ).
374+ WithProviderID ("instanceID-ecs" ).
375+ Build ()
369376 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
370377
371378 efloController := mocks .NewEFLOControl (GinkgoT ())
@@ -412,10 +419,12 @@ var _ = Describe("Node Controller", func() {
412419 nodeName := "test-eflo-node-ecs-hd"
413420 defer cleanupNode (ctx , nodeName )
414421
415- k8sNode := testutil .CreateEFLONode (nodeName )
416- k8sNode .Labels ["k8s.aliyun.com/exclusive-mode-eni-type" ] = "eniOnly"
417- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "eflo.instance"
418- k8sNode .Spec .ProviderID = "instanceID-ecs-hd"
422+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
423+ WithEFLO ().
424+ WithExclusiveENIMode ().
425+ WithInstanceType ("eflo.instance" ).
426+ WithProviderID ("instanceID-ecs-hd" ).
427+ Build ()
419428 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
420429
421430 efloController := mocks .NewEFLOControl (GinkgoT ())
@@ -460,10 +469,12 @@ var _ = Describe("Node Controller", func() {
460469 nodeName := "test-eflo-node-eno-hd"
461470 defer cleanupNode (ctx , nodeName )
462471
463- k8sNode := testutil .CreateEFLONode (nodeName )
464- k8sNode .Labels ["k8s.aliyun.com/exclusive-mode-eni-type" ] = "eniOnly"
465- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "eflo.instance"
466- k8sNode .Spec .ProviderID = "instanceID-eno-hd"
472+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
473+ WithEFLO ().
474+ WithExclusiveENIMode ().
475+ WithInstanceType ("eflo.instance" ).
476+ WithProviderID ("instanceID-eno-hd" ).
477+ Build ()
467478 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
468479
469480 efloClient .On ("GetNodeInfoForPod" , mock .Anything , "instanceID-eno-hd" ).Return (& eflo.Content {
@@ -496,9 +507,11 @@ var _ = Describe("Node Controller", func() {
496507 nodeName := "test-eflo-node-error"
497508 defer cleanupNode (ctx , nodeName )
498509
499- k8sNode := testutil .CreateEFLONode (nodeName )
500- k8sNode .Labels ["node.kubernetes.io/instance-type" ] = "eflo.instance"
501- k8sNode .Spec .ProviderID = "instanceID-error"
510+ k8sNode := testutil .NewK8sNodeBuilder (nodeName ).
511+ WithEFLO ().
512+ WithInstanceType ("eflo.instance" ).
513+ WithProviderID ("instanceID-error" ).
514+ Build ()
502515 Expect (k8sClient .Create (ctx , k8sNode )).To (Succeed ())
503516
504517 openAPI .On ("DescribeNetworkInterfaceV2" , mock .Anything , mock .Anything ).Return ([]* aliyunClient.NetworkInterface {
0 commit comments