@@ -83,14 +83,40 @@ var clusterStatusUnknown = capi.ClusterStatus{
8383
8484func createMockServer (t * testing.T , clusters []capi.Cluster , projectID string , options ... bool ) * rest.Server {
8585 unstructuredClusters := make ([]unstructured.Unstructured , len (clusters ))
86+ unstructuredMachines := make ([]unstructured.Unstructured , len (clusters ))
8687 for i , cluster := range clusters {
8788 unstructuredCluster , err := convert .ToUnstructured (cluster )
8889 require .NoError (t , err , "convertClusterToUnstructured() error = %v, want nil" )
8990 unstructuredClusters [i ] = * unstructuredCluster
91+
92+ machine := capi.Machine {
93+ ObjectMeta : metav1.ObjectMeta {
94+ Name : cluster .Name ,
95+ Labels : map [string ]string {
96+ "cluster.x-k8s.io/cluster-name" : cluster .Name ,
97+ },
98+ },
99+ Spec : capi.MachineSpec {ClusterName : cluster .Name },
100+ Status : capi.MachineStatus {
101+ Phase : "Running" ,
102+ Conditions : []capi.Condition {
103+ {Type : "HealthCheckSucceed" , Status : "True" },
104+ {Type : "InfrastructureReady" , Status : "True" },
105+ {Type : "NodeHealthy" , Status : "True" },
106+ },
107+ },
108+ }
109+
110+ unstructuredMachine , err := convert .ToUnstructured (machine )
111+ require .NoError (t , err , "convertClusterToUnstructured() error = %v, want nil" )
112+ unstructuredMachines [i ] = * unstructuredMachine
90113 }
91114 unstructuredClusterList := & unstructured.UnstructuredList {
92115 Items : unstructuredClusters ,
93116 }
117+ unstructuredMachineList := & unstructured.UnstructuredList {
118+ Items : unstructuredMachines ,
119+ }
94120 // default is to set up k8s client and machineResource mocks
95121 setupK8sMocks := true
96122 mockMachineResource := true
@@ -101,31 +127,18 @@ func createMockServer(t *testing.T, clusters []capi.Cluster, projectID string, o
101127 var mockedk8sclient * k8s.MockInterface
102128 mockedk8sclient = k8s .NewMockInterface (t )
103129 if setupK8sMocks {
104- machine := capi.Machine {
105- Status : capi.MachineStatus {
106- Phase : "Running" ,
107- Conditions : []capi.Condition {
108- {Type : "HealthCheckSucceed" , Status : "True" },
109- {Type : "InfrastructureReady" , Status : "True" },
110- {Type : "NodeHealthy" , Status : "True" },
111- },
112- },
113- }
114- unstructuredMachine , err := convert .ToUnstructured (machine )
115- require .NoError (t , err , "convertMachineToUnstructured() error = %v, want nil" )
116130 resource := k8s .NewMockResourceInterface (t )
117131 resource .EXPECT ().List (mock .Anything , metav1.ListOptions {}).Return (unstructuredClusterList , nil )
118132 nsResource := k8s .NewMockNamespaceableResourceInterface (t )
119133 nsResource .EXPECT ().Namespace (projectID ).Return (resource )
120134 mockedk8sclient = k8s .NewMockInterface (t )
121135 mockedk8sclient .EXPECT ().Resource (core .ClusterResourceSchema ).Return (nsResource )
122136 if mockMachineResource {
123- for _ , cluster := range clusters {
124- resource .EXPECT ().List (mock .Anything , metav1.ListOptions {
125- LabelSelector : "cluster.x-k8s.io/cluster-name=" + cluster .Name ,
126- }).Return (& unstructured.UnstructuredList {Items : []unstructured.Unstructured {* unstructuredMachine }}, nil ).Maybe ()
127- }
128- mockedk8sclient .EXPECT ().Resource (core .MachineResourceSchema ).Return (nsResource ).Maybe ()
137+ machineResource := k8s .NewMockResourceInterface (t )
138+ machineResource .EXPECT ().List (mock .Anything , metav1.ListOptions {}).Return (unstructuredMachineList , nil )
139+ nsMachineResource := k8s .NewMockNamespaceableResourceInterface (t )
140+ nsMachineResource .EXPECT ().Namespace (projectID ).Return (machineResource )
141+ mockedk8sclient .EXPECT ().Resource (core .MachineResourceSchema ).Return (nsMachineResource ).Maybe ()
129142 }
130143 }
131144 return rest .NewServer (mockedk8sclient )
@@ -142,7 +155,7 @@ func generateClusterWithStatus(name, version *string, status capi.ClusterStatus)
142155 }
143156 return capi.Cluster {
144157 ObjectMeta : metav1.ObjectMeta {Name : clusterName },
145- Spec : capi.ClusterSpec {Topology : & capi.Topology {Version : clusterVersion }},
158+ Spec : capi.ClusterSpec {Paused : false , Topology : & capi.Topology {Version : clusterVersion }},
146159 Status : status ,
147160 }
148161}
0 commit comments