MCPcopy
hub / github.com/kubernetes/client-go / TestGetServerResources

Function TestGetServerResources

discovery/discovery_client_test.go:176–295  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

174}
175
176func TestGetServerResources(t *testing.T) {
177 stable := metav1.APIResourceList{
178 GroupVersion: "v1",
179 APIResources: []metav1.APIResource{
180 {Name: "pods", Namespaced: true, Kind: "Pod"},
181 {Name: "services", Namespaced: true, Kind: "Service"},
182 {Name: "namespaces", Namespaced: false, Kind: "Namespace"},
183 },
184 }
185 beta := metav1.APIResourceList{
186 GroupVersion: "extensions/v1beta1",
187 APIResources: []metav1.APIResource{
188 {Name: "deployments", Namespaced: true, Kind: "Deployment"},
189 {Name: "ingresses", Namespaced: true, Kind: "Ingress"},
190 {Name: "jobs", Namespaced: true, Kind: "Job"},
191 },
192 }
193 beta2 := metav1.APIResourceList{
194 GroupVersion: "extensions/v1beta2",
195 APIResources: []metav1.APIResource{
196 {Name: "deployments", Namespaced: true, Kind: "Deployment"},
197 {Name: "ingresses", Namespaced: true, Kind: "Ingress"},
198 {Name: "jobs", Namespaced: true, Kind: "Job"},
199 },
200 }
201 tests := []struct {
202 resourcesList *metav1.APIResourceList
203 path string
204 request string
205 expectErr bool
206 }{
207 {
208 resourcesList: &stable,
209 path: "/api/v1",
210 request: "v1",
211 expectErr: false,
212 },
213 {
214 resourcesList: &beta,
215 path: "/apis/extensions/v1beta1",
216 request: "extensions/v1beta1",
217 expectErr: false,
218 },
219 {
220 resourcesList: &stable,
221 path: "/api/v1",
222 request: "foobar",
223 expectErr: true,
224 },
225 }
226 server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
227 var list interface{}
228 switch req.URL.Path {
229 case "/api/v1":
230 list = &stable
231 case "/apis/extensions/v1beta1":
232 list = &beta
233 case "/apis/extensions/v1beta2":

Callers

nothing calls this directly

Calls 10

groupVersionsFunction · 0.85
WriteMethod · 0.80
LogfMethod · 0.65
ErrorfMethod · 0.65
SetMethod · 0.65
CloseMethod · 0.65
ErrorMethod · 0.65
ServerResourcesMethod · 0.65

Tested by

no test coverage detected