@@ -21,6 +21,7 @@ import (
21
21
22
22
. "github.com/onsi/ginkgo"
23
23
. "github.com/onsi/gomega"
24
+ "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
24
25
25
26
appsv1 "k8s.io/api/apps/v1"
26
27
corev1 "k8s.io/api/core/v1"
@@ -39,12 +40,18 @@ var _ = Describe("Fake client", func() {
39
40
40
41
BeforeEach (func () {
41
42
dep = & appsv1.Deployment {
43
+ TypeMeta : metav1.TypeMeta {
44
+ Kind : "Deployment" ,
45
+ },
42
46
ObjectMeta : metav1.ObjectMeta {
43
47
Name : "test-deployment" ,
44
48
Namespace : "ns1" ,
45
49
},
46
50
}
47
51
dep2 = & appsv1.Deployment {
52
+ TypeMeta : metav1.TypeMeta {
53
+ Kind : "Deployment" ,
54
+ },
48
55
ObjectMeta : metav1.ObjectMeta {
49
56
Name : "test-deployment-2" ,
50
57
Namespace : "ns1" ,
@@ -54,6 +61,9 @@ var _ = Describe("Fake client", func() {
54
61
},
55
62
}
56
63
cm = & corev1.ConfigMap {
64
+ TypeMeta : metav1.TypeMeta {
65
+ Kind : "ConfigMap" ,
66
+ },
57
67
ObjectMeta : metav1.ObjectMeta {
58
68
Name : "test-cm" ,
59
69
Namespace : "ns2" ,
@@ -77,6 +87,19 @@ var _ = Describe("Fake client", func() {
77
87
Expect (obj ).To (Equal (dep ))
78
88
})
79
89
90
+ It ("should be able to Get using unstructured" , func () {
91
+ By ("Getting a deployment" )
92
+ namespacedName := types.NamespacedName {
93
+ Name : "test-deployment" ,
94
+ Namespace : "ns1" ,
95
+ }
96
+ obj := & unstructured.Unstructured {}
97
+ obj .SetAPIVersion ("apps/v1" )
98
+ obj .SetKind ("Deployment" )
99
+ err := cl .Get (nil , namespacedName , obj )
100
+ Expect (err ).To (BeNil ())
101
+ })
102
+
80
103
It ("should be able to List" , func () {
81
104
By ("Listing all deployments in a namespace" )
82
105
list := & appsv1.DeploymentList {}
@@ -86,6 +109,16 @@ var _ = Describe("Fake client", func() {
86
109
Expect (list .Items ).To (ConsistOf (* dep , * dep2 ))
87
110
})
88
111
112
+ It ("should be able to List using unstructured list" , func () {
113
+ By ("Listing all deployments in a namespace" )
114
+ list := & unstructured.UnstructuredList {}
115
+ list .SetAPIVersion ("apps/v1" )
116
+ list .SetKind ("DeploymentList" )
117
+ err := cl .List (nil , list , client .InNamespace ("ns1" ))
118
+ Expect (err ).To (BeNil ())
119
+ Expect (list .Items ).To (HaveLen (2 ))
120
+ })
121
+
89
122
It ("should support filtering by labels" , func () {
90
123
By ("Listing deployments with a particular label" )
91
124
list := & appsv1.DeploymentList {}
@@ -101,6 +134,9 @@ var _ = Describe("Fake client", func() {
101
134
It ("should be able to Create" , func () {
102
135
By ("Creating a new configmap" )
103
136
newcm := & corev1.ConfigMap {
137
+ TypeMeta : metav1.TypeMeta {
138
+ Kind : "ConfigMap" ,
139
+ },
104
140
ObjectMeta : metav1.ObjectMeta {
105
141
Name : "new-test-cm" ,
106
142
Namespace : "ns2" ,
@@ -124,6 +160,9 @@ var _ = Describe("Fake client", func() {
124
160
It ("should be able to Update" , func () {
125
161
By ("Updating a new configmap" )
126
162
newcm := & corev1.ConfigMap {
163
+ TypeMeta : metav1.TypeMeta {
164
+ Kind : "ConfigMap" ,
165
+ },
127
166
ObjectMeta : metav1.ObjectMeta {
128
167
Name : "test-cm" ,
129
168
Namespace : "ns2" ,
0 commit comments