@@ -17,8 +17,6 @@ limitations under the License.
17
17
package fake
18
18
19
19
import (
20
- "encoding/json"
21
-
22
20
. "github.com/onsi/ginkgo"
23
21
. "github.com/onsi/gomega"
24
22
@@ -35,7 +33,7 @@ var _ = Describe("Fake client", func() {
35
33
var cm * corev1.ConfigMap
36
34
var cl client.Client
37
35
38
- BeforeEach (func (done Done ) {
36
+ BeforeEach (func () {
39
37
dep = & appsv1.Deployment {
40
38
ObjectMeta : metav1.ObjectMeta {
41
39
Name : "test-deployment" ,
@@ -51,106 +49,110 @@ var _ = Describe("Fake client", func() {
51
49
"test-key" : "test-value" ,
52
50
},
53
51
}
54
- cl = NewFakeClient (dep , cm )
55
- close (done )
56
- })
57
-
58
- It ("should be able to Get" , func () {
59
- By ("Getting a deployment" )
60
- namespacedName := types.NamespacedName {
61
- Name : "test-deployment" ,
62
- Namespace : "ns1" ,
63
- }
64
- obj := & appsv1.Deployment {}
65
- err := cl .Get (nil , namespacedName , obj )
66
- Expect (err ).To (BeNil ())
67
- Expect (obj ).To (Equal (dep ))
68
52
})
69
53
70
- It ("should be able to List" , func () {
71
- By ("Listing all deployments in a namespace" )
72
- list := & metav1.List {}
73
- err := cl .List (nil , & client.ListOptions {
74
- Namespace : "ns1" ,
75
- Raw : & metav1.ListOptions {
76
- TypeMeta : metav1.TypeMeta {
77
- APIVersion : "apps/v1" ,
78
- Kind : "Deployment" ,
54
+ AssertClientBehavior := func () {
55
+ It ("should be able to Get" , func () {
56
+ By ("Getting a deployment" )
57
+ namespacedName := types.NamespacedName {
58
+ Name : "test-deployment" ,
59
+ Namespace : "ns1" ,
60
+ }
61
+ obj := & appsv1.Deployment {}
62
+ err := cl .Get (nil , namespacedName , obj )
63
+ Expect (err ).To (BeNil ())
64
+ Expect (obj ).To (Equal (dep ))
65
+ })
66
+
67
+ It ("should be able to List" , func () {
68
+ By ("Listing all deployments in a namespace" )
69
+ list := & appsv1.DeploymentList {}
70
+ err := cl .List (nil , & client.ListOptions {
71
+ Namespace : "ns1" ,
72
+ }, list )
73
+ Expect (err ).To (BeNil ())
74
+ Expect (list .Items ).To (HaveLen (1 ))
75
+ Expect (list .Items ).To (ConsistOf (* dep ))
76
+ })
77
+
78
+ It ("should be able to Create" , func () {
79
+ By ("Creating a new configmap" )
80
+ newcm := & corev1.ConfigMap {
81
+ ObjectMeta : metav1.ObjectMeta {
82
+ Name : "new-test-cm" ,
83
+ Namespace : "ns2" ,
79
84
},
80
- },
81
- }, list )
82
- Expect (err ).To (BeNil ())
83
- Expect (list .Items ).To (HaveLen (1 ))
84
- j , err := json .Marshal (dep )
85
- Expect (err ).To (BeNil ())
86
- expectedDep := runtime.RawExtension {Raw : j }
87
- Expect (list .Items ).To (ConsistOf (expectedDep ))
88
- })
85
+ }
86
+ err := cl .Create (nil , newcm )
87
+ Expect (err ).To (BeNil ())
89
88
90
- It ("should be able to Create" , func () {
91
- By ("Creating a new configmap" )
92
- newcm := & corev1.ConfigMap {
93
- ObjectMeta : metav1.ObjectMeta {
89
+ By ("Getting the new configmap" )
90
+ namespacedName := types.NamespacedName {
94
91
Name : "new-test-cm" ,
95
92
Namespace : "ns2" ,
96
- },
97
- }
98
- err := cl .Create (nil , newcm )
99
- Expect (err ).To (BeNil ())
100
-
101
- By ("Getting the new configmap" )
102
- namespacedName := types.NamespacedName {
103
- Name : "new-test-cm" ,
104
- Namespace : "ns2" ,
105
- }
106
- obj := & corev1.ConfigMap {}
107
- err = cl .Get (nil , namespacedName , obj )
108
- Expect (err ).To (BeNil ())
109
- Expect (obj ).To (Equal (newcm ))
110
- })
93
+ }
94
+ obj := & corev1.ConfigMap {}
95
+ err = cl .Get (nil , namespacedName , obj )
96
+ Expect (err ).To (BeNil ())
97
+ Expect (obj ).To (Equal (newcm ))
98
+ })
99
+
100
+ It ("should be able to Update" , func () {
101
+ By ("Updating a new configmap" )
102
+ newcm := & corev1.ConfigMap {
103
+ ObjectMeta : metav1.ObjectMeta {
104
+ Name : "test-cm" ,
105
+ Namespace : "ns2" ,
106
+ },
107
+ Data : map [string ]string {
108
+ "test-key" : "new-value" ,
109
+ },
110
+ }
111
+ err := cl .Update (nil , newcm )
112
+ Expect (err ).To (BeNil ())
111
113
112
- It ("should be able to Update" , func () {
113
- By ("Updating a new configmap" )
114
- newcm := & corev1.ConfigMap {
115
- ObjectMeta : metav1.ObjectMeta {
114
+ By ("Getting the new configmap" )
115
+ namespacedName := types.NamespacedName {
116
116
Name : "test-cm" ,
117
117
Namespace : "ns2" ,
118
- },
119
- Data : map [string ]string {
120
- "test-key" : "new-value" ,
121
- },
122
- }
123
- err := cl .Update (nil , newcm )
124
- Expect (err ).To (BeNil ())
125
-
126
- By ("Getting the new configmap" )
127
- namespacedName := types.NamespacedName {
128
- Name : "test-cm" ,
129
- Namespace : "ns2" ,
130
- }
131
- obj := & corev1.ConfigMap {}
132
- err = cl .Get (nil , namespacedName , obj )
133
- Expect (err ).To (BeNil ())
134
- Expect (obj ).To (Equal (newcm ))
118
+ }
119
+ obj := & corev1.ConfigMap {}
120
+ err = cl .Get (nil , namespacedName , obj )
121
+ Expect (err ).To (BeNil ())
122
+ Expect (obj ).To (Equal (newcm ))
123
+ })
124
+
125
+ It ("should be able to Delete" , func () {
126
+ By ("Deleting a deployment" )
127
+ err := cl .Delete (nil , dep )
128
+ Expect (err ).To (BeNil ())
129
+
130
+ By ("Listing all deployments in the namespace" )
131
+ list := & appsv1.DeploymentList {}
132
+ err = cl .List (nil , & client.ListOptions {
133
+ Namespace : "ns1" ,
134
+ }, list )
135
+ Expect (err ).To (BeNil ())
136
+ Expect (list .Items ).To (HaveLen (0 ))
137
+ })
138
+ }
139
+
140
+ Context ("with default scheme.Scheme" , func () {
141
+ BeforeEach (func (done Done ) {
142
+ cl = NewFakeClient (dep , cm )
143
+ close (done )
144
+ })
145
+ AssertClientBehavior ()
135
146
})
136
147
137
- It ("should be able to Delete" , func () {
138
- By ("Deleting a deployment" )
139
- err := cl .Delete (nil , dep )
140
- Expect (err ).To (BeNil ())
141
-
142
- By ("Listing all deployments in the namespace" )
143
- list := & metav1.List {}
144
- err = cl .List (nil , & client.ListOptions {
145
- Namespace : "ns1" ,
146
- Raw : & metav1.ListOptions {
147
- TypeMeta : metav1.TypeMeta {
148
- APIVersion : "apps/v1" ,
149
- Kind : "Deployment" ,
150
- },
151
- },
152
- }, list )
153
- Expect (err ).To (BeNil ())
154
- Expect (list .Items ).To (HaveLen (0 ))
148
+ Context ("with given scheme" , func () {
149
+ BeforeEach (func (done Done ) {
150
+ scheme := runtime .NewScheme ()
151
+ corev1 .AddToScheme (scheme )
152
+ appsv1 .AddToScheme (scheme )
153
+ cl = NewFakeClientWithScheme (scheme , dep , cm )
154
+ close (done )
155
+ })
156
+ AssertClientBehavior ()
155
157
})
156
158
})
0 commit comments