1
- package transfer
1
+ package managedclusters
2
2
3
3
import (
4
4
"testing"
5
5
6
6
kessel "github.com/project-kessel/inventory-api/api/kessel/inventory/v1beta1/resources"
7
7
clusterinfov1beta1 "github.com/stolostron/cluster-lifecycle-api/clusterinfo/v1beta1"
8
8
"github.com/stretchr/testify/assert"
9
+ "k8s.io/apimachinery/pkg/api/resource"
9
10
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
10
11
clusterv1 "open-cluster-management.io/api/cluster/v1"
11
12
)
12
13
13
- func TestGetK8SCluster (t * testing.T ) {
14
+ func TestGetK8SClusterInfo (t * testing.T ) {
14
15
clusterInfo := createMockClusterInfo ("test-cluster" , clusterinfov1beta1 .KubeVendorOpenShift , "4.10.0" ,
15
16
clusterinfov1beta1 .CloudVendorAWS )
16
17
17
18
// Call the function
18
- result := GetK8SCluster (clusterInfo , "guest" )
19
+ k8sCluster := GetK8SCluster (clusterInfo , "guest" )
19
20
20
21
// Assert the results
21
- assert .NotNil (t , result )
22
- assert .Equal (t , "k8s-cluster" , result . K8SCluster .Metadata .ResourceType )
23
- assert .Equal (t , kessel .ReporterData_ACM , result . K8SCluster .ReporterData .ReporterType )
24
- assert .Equal (t , "https://api.test-cluster.example.com" , result . K8SCluster .ReporterData .ApiHref )
25
- assert .Equal (t , "https://console.test-cluster.example.com" , result . K8SCluster .ReporterData .ConsoleHref )
26
- assert .Equal (t , "test-cluster-id" , result . K8SCluster .ResourceData .ExternalClusterId )
27
- assert .Equal (t , "1.23.0" , result . K8SCluster .ResourceData .KubeVersion )
28
- assert .Equal (t , kessel .K8SClusterDetail_READY , result . K8SCluster .ResourceData .ClusterStatus )
29
- assert .Equal (t , kessel .K8SClusterDetail_AWS_UPI , result . K8SCluster .ResourceData .CloudPlatform )
30
- assert .Equal (t , kessel .K8SClusterDetail_OPENSHIFT , result . K8SCluster .ResourceData .KubeVendor )
31
- assert .Equal (t , "4.10.0" , result . K8SCluster .ResourceData .VendorVersion )
22
+ assert .NotNil (t , k8sCluster )
23
+ assert .Equal (t , "k8s-cluster" , k8sCluster .Metadata .ResourceType )
24
+ assert .Equal (t , kessel .ReporterData_ACM , k8sCluster .ReporterData .ReporterType )
25
+ assert .Equal (t , "https://api.test-cluster.example.com" , k8sCluster .ReporterData .ApiHref )
26
+ assert .Equal (t , "https://console.test-cluster.example.com" , k8sCluster .ReporterData .ConsoleHref )
27
+ assert .Equal (t , "test-cluster-id" , k8sCluster .ResourceData .ExternalClusterId )
28
+ assert .Equal (t , "1.23.0" , k8sCluster .ResourceData .KubeVersion )
29
+ assert .Equal (t , kessel .K8SClusterDetail_READY , k8sCluster .ResourceData .ClusterStatus )
30
+ assert .Equal (t , kessel .K8SClusterDetail_AWS_UPI , k8sCluster .ResourceData .CloudPlatform )
31
+ assert .Equal (t , kessel .K8SClusterDetail_OPENSHIFT , k8sCluster .ResourceData .KubeVendor )
32
+ assert .Equal (t , "4.10.0" , k8sCluster .ResourceData .VendorVersion )
32
33
}
33
34
34
35
func TestKubeVendorK8SCluster (t * testing.T ) {
@@ -70,19 +71,19 @@ func TestKubeVendorK8SCluster(t *testing.T) {
70
71
71
72
for _ , tc := range testCases {
72
73
t .Run (tc .name , func (t * testing.T ) {
73
- result := GetK8SCluster (tc .clusterInfo , "guest" )
74
+ k8sCluster := GetK8SCluster (tc .clusterInfo , "guest" )
74
75
75
- assert .NotNil (t , result )
76
- assert .Equal (t , tc .expectedVendor , result . K8SCluster .ResourceData .KubeVendor )
77
- assert .Equal (t , tc .expectedVersion , result . K8SCluster .ResourceData .VendorVersion )
76
+ assert .NotNil (t , k8sCluster )
77
+ assert .Equal (t , tc .expectedVendor , k8sCluster .ResourceData .KubeVendor )
78
+ assert .Equal (t , tc .expectedVersion , k8sCluster .ResourceData .VendorVersion )
78
79
// Add more assertions for common fields
79
- assert .Equal (t , "k8s-cluster" , result . K8SCluster .Metadata .ResourceType )
80
- assert .Equal (t , kessel .ReporterData_ACM , result . K8SCluster .ReporterData .ReporterType )
81
- assert .Equal (t , "https://api.test-cluster.example.com" , result . K8SCluster .ReporterData .ApiHref )
82
- assert .Equal (t , "https://console.test-cluster.example.com" , result . K8SCluster .ReporterData .ConsoleHref )
83
- assert .Equal (t , "test-cluster-id" , result . K8SCluster .ResourceData .ExternalClusterId )
84
- assert .Equal (t , "1.23.0" , result . K8SCluster .ResourceData .KubeVersion )
85
- assert .Equal (t , kessel .K8SClusterDetail_READY , result . K8SCluster .ResourceData .ClusterStatus )
80
+ assert .Equal (t , "k8s-cluster" , k8sCluster .Metadata .ResourceType )
81
+ assert .Equal (t , kessel .ReporterData_ACM , k8sCluster .ReporterData .ReporterType )
82
+ assert .Equal (t , "https://api.test-cluster.example.com" , k8sCluster .ReporterData .ApiHref )
83
+ assert .Equal (t , "https://console.test-cluster.example.com" , k8sCluster .ReporterData .ConsoleHref )
84
+ assert .Equal (t , "test-cluster-id" , k8sCluster .ResourceData .ExternalClusterId )
85
+ assert .Equal (t , "1.23.0" , k8sCluster .ResourceData .KubeVersion )
86
+ assert .Equal (t , kessel .K8SClusterDetail_READY , k8sCluster .ResourceData .ClusterStatus )
86
87
})
87
88
}
88
89
}
@@ -109,6 +110,18 @@ func createMockClusterInfo(name string, kubeVendor clusterinfov1beta1.KubeVendor
109
110
Status : metav1 .ConditionTrue ,
110
111
},
111
112
},
113
+ NodeList : []clusterinfov1beta1.NodeStatus {
114
+ {
115
+ Name : "ip-10-0-14-217.ec2.internal" ,
116
+ Capacity : clusterinfov1beta1.ResourceList {
117
+ clusterv1 .ResourceCPU : resource .MustParse ("16" ),
118
+ clusterv1 .ResourceMemory : resource .MustParse ("64453796Ki" ),
119
+ },
120
+ Labels : map [string ]string {
121
+ "node.kubernetes.io/instance-type" : "m6a.4xlarge" ,
122
+ },
123
+ },
124
+ },
112
125
},
113
126
}
114
127
0 commit comments