1/*
2Copyright The Kubernetes Authors.
3
4Licensed under the Apache License, Version 2.0 (the "License");
5you may not use this file except in compliance with the License.
6You may obtain a copy of the License at
7
8    http://www.apache.org/licenses/LICENSE-2.0
9
10Unless required by applicable law or agreed to in writing, software
11distributed under the License is distributed on an "AS IS" BASIS,
12WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13See the License for the specific language governing permissions and
14limitations under the License.
15*/
16
17// Code generated by client-gen. DO NOT EDIT.
18
19package fake
20
21import (
22	"k8s.io/apimachinery/pkg/runtime"
23	"k8s.io/apimachinery/pkg/watch"
24	"k8s.io/client-go/discovery"
25	fakediscovery "k8s.io/client-go/discovery/fake"
26	clientset "k8s.io/client-go/kubernetes"
27	admissionregistrationv1 "k8s.io/client-go/kubernetes/typed/admissionregistration/v1"
28	fakeadmissionregistrationv1 "k8s.io/client-go/kubernetes/typed/admissionregistration/v1/fake"
29	admissionregistrationv1beta1 "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1"
30	fakeadmissionregistrationv1beta1 "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1/fake"
31	appsv1 "k8s.io/client-go/kubernetes/typed/apps/v1"
32	fakeappsv1 "k8s.io/client-go/kubernetes/typed/apps/v1/fake"
33	appsv1beta1 "k8s.io/client-go/kubernetes/typed/apps/v1beta1"
34	fakeappsv1beta1 "k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake"
35	appsv1beta2 "k8s.io/client-go/kubernetes/typed/apps/v1beta2"
36	fakeappsv1beta2 "k8s.io/client-go/kubernetes/typed/apps/v1beta2/fake"
37	auditregistrationv1alpha1 "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1"
38	fakeauditregistrationv1alpha1 "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1/fake"
39	authenticationv1 "k8s.io/client-go/kubernetes/typed/authentication/v1"
40	fakeauthenticationv1 "k8s.io/client-go/kubernetes/typed/authentication/v1/fake"
41	authenticationv1beta1 "k8s.io/client-go/kubernetes/typed/authentication/v1beta1"
42	fakeauthenticationv1beta1 "k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake"
43	authorizationv1 "k8s.io/client-go/kubernetes/typed/authorization/v1"
44	fakeauthorizationv1 "k8s.io/client-go/kubernetes/typed/authorization/v1/fake"
45	authorizationv1beta1 "k8s.io/client-go/kubernetes/typed/authorization/v1beta1"
46	fakeauthorizationv1beta1 "k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake"
47	autoscalingv1 "k8s.io/client-go/kubernetes/typed/autoscaling/v1"
48	fakeautoscalingv1 "k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake"
49	autoscalingv2beta1 "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1"
50	fakeautoscalingv2beta1 "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1/fake"
51	autoscalingv2beta2 "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2"
52	fakeautoscalingv2beta2 "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2/fake"
53	batchv1 "k8s.io/client-go/kubernetes/typed/batch/v1"
54	fakebatchv1 "k8s.io/client-go/kubernetes/typed/batch/v1/fake"
55	batchv1beta1 "k8s.io/client-go/kubernetes/typed/batch/v1beta1"
56	fakebatchv1beta1 "k8s.io/client-go/kubernetes/typed/batch/v1beta1/fake"
57	batchv2alpha1 "k8s.io/client-go/kubernetes/typed/batch/v2alpha1"
58	fakebatchv2alpha1 "k8s.io/client-go/kubernetes/typed/batch/v2alpha1/fake"
59	certificatesv1beta1 "k8s.io/client-go/kubernetes/typed/certificates/v1beta1"
60	fakecertificatesv1beta1 "k8s.io/client-go/kubernetes/typed/certificates/v1beta1/fake"
61	coordinationv1 "k8s.io/client-go/kubernetes/typed/coordination/v1"
62	fakecoordinationv1 "k8s.io/client-go/kubernetes/typed/coordination/v1/fake"
63	coordinationv1beta1 "k8s.io/client-go/kubernetes/typed/coordination/v1beta1"
64	fakecoordinationv1beta1 "k8s.io/client-go/kubernetes/typed/coordination/v1beta1/fake"
65	corev1 "k8s.io/client-go/kubernetes/typed/core/v1"
66	fakecorev1 "k8s.io/client-go/kubernetes/typed/core/v1/fake"
67	discoveryv1alpha1 "k8s.io/client-go/kubernetes/typed/discovery/v1alpha1"
68	fakediscoveryv1alpha1 "k8s.io/client-go/kubernetes/typed/discovery/v1alpha1/fake"
69	eventsv1beta1 "k8s.io/client-go/kubernetes/typed/events/v1beta1"
70	fakeeventsv1beta1 "k8s.io/client-go/kubernetes/typed/events/v1beta1/fake"
71	extensionsv1beta1 "k8s.io/client-go/kubernetes/typed/extensions/v1beta1"
72	fakeextensionsv1beta1 "k8s.io/client-go/kubernetes/typed/extensions/v1beta1/fake"
73	networkingv1 "k8s.io/client-go/kubernetes/typed/networking/v1"
74	fakenetworkingv1 "k8s.io/client-go/kubernetes/typed/networking/v1/fake"
75	networkingv1beta1 "k8s.io/client-go/kubernetes/typed/networking/v1beta1"
76	fakenetworkingv1beta1 "k8s.io/client-go/kubernetes/typed/networking/v1beta1/fake"
77	nodev1alpha1 "k8s.io/client-go/kubernetes/typed/node/v1alpha1"
78	fakenodev1alpha1 "k8s.io/client-go/kubernetes/typed/node/v1alpha1/fake"
79	nodev1beta1 "k8s.io/client-go/kubernetes/typed/node/v1beta1"
80	fakenodev1beta1 "k8s.io/client-go/kubernetes/typed/node/v1beta1/fake"
81	policyv1beta1 "k8s.io/client-go/kubernetes/typed/policy/v1beta1"
82	fakepolicyv1beta1 "k8s.io/client-go/kubernetes/typed/policy/v1beta1/fake"
83	rbacv1 "k8s.io/client-go/kubernetes/typed/rbac/v1"
84	fakerbacv1 "k8s.io/client-go/kubernetes/typed/rbac/v1/fake"
85	rbacv1alpha1 "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1"
86	fakerbacv1alpha1 "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1/fake"
87	rbacv1beta1 "k8s.io/client-go/kubernetes/typed/rbac/v1beta1"
88	fakerbacv1beta1 "k8s.io/client-go/kubernetes/typed/rbac/v1beta1/fake"
89	schedulingv1 "k8s.io/client-go/kubernetes/typed/scheduling/v1"
90	fakeschedulingv1 "k8s.io/client-go/kubernetes/typed/scheduling/v1/fake"
91	schedulingv1alpha1 "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1"
92	fakeschedulingv1alpha1 "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1/fake"
93	schedulingv1beta1 "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1"
94	fakeschedulingv1beta1 "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1/fake"
95	settingsv1alpha1 "k8s.io/client-go/kubernetes/typed/settings/v1alpha1"
96	fakesettingsv1alpha1 "k8s.io/client-go/kubernetes/typed/settings/v1alpha1/fake"
97	storagev1 "k8s.io/client-go/kubernetes/typed/storage/v1"
98	fakestoragev1 "k8s.io/client-go/kubernetes/typed/storage/v1/fake"
99	storagev1alpha1 "k8s.io/client-go/kubernetes/typed/storage/v1alpha1"
100	fakestoragev1alpha1 "k8s.io/client-go/kubernetes/typed/storage/v1alpha1/fake"
101	storagev1beta1 "k8s.io/client-go/kubernetes/typed/storage/v1beta1"
102	fakestoragev1beta1 "k8s.io/client-go/kubernetes/typed/storage/v1beta1/fake"
103	"k8s.io/client-go/testing"
104)
105
106// NewSimpleClientset returns a clientset that will respond with the provided objects.
107// It's backed by a very simple object tracker that processes creates, updates and deletions as-is,
108// without applying any validations and/or defaults. It shouldn't be considered a replacement
109// for a real clientset and is mostly useful in simple unit tests.
110func NewSimpleClientset(objects ...runtime.Object) *Clientset {
111	o := testing.NewObjectTracker(scheme, codecs.UniversalDecoder())
112	for _, obj := range objects {
113		if err := o.Add(obj); err != nil {
114			panic(err)
115		}
116	}
117
118	cs := &Clientset{tracker: o}
119	cs.discovery = &fakediscovery.FakeDiscovery{Fake: &cs.Fake}
120	cs.AddReactor("*", "*", testing.ObjectReaction(o))
121	cs.AddWatchReactor("*", func(action testing.Action) (handled bool, ret watch.Interface, err error) {
122		gvr := action.GetResource()
123		ns := action.GetNamespace()
124		watch, err := o.Watch(gvr, ns)
125		if err != nil {
126			return false, nil, err
127		}
128		return true, watch, nil
129	})
130
131	return cs
132}
133
134// Clientset implements clientset.Interface. Meant to be embedded into a
135// struct to get a default implementation. This makes faking out just the method
136// you want to test easier.
137type Clientset struct {
138	testing.Fake
139	discovery *fakediscovery.FakeDiscovery
140	tracker   testing.ObjectTracker
141}
142
143func (c *Clientset) Discovery() discovery.DiscoveryInterface {
144	return c.discovery
145}
146
147func (c *Clientset) Tracker() testing.ObjectTracker {
148	return c.tracker
149}
150
151var _ clientset.Interface = &Clientset{}
152
153// AdmissionregistrationV1 retrieves the AdmissionregistrationV1Client
154func (c *Clientset) AdmissionregistrationV1() admissionregistrationv1.AdmissionregistrationV1Interface {
155	return &fakeadmissionregistrationv1.FakeAdmissionregistrationV1{Fake: &c.Fake}
156}
157
158// AdmissionregistrationV1beta1 retrieves the AdmissionregistrationV1beta1Client
159func (c *Clientset) AdmissionregistrationV1beta1() admissionregistrationv1beta1.AdmissionregistrationV1beta1Interface {
160	return &fakeadmissionregistrationv1beta1.FakeAdmissionregistrationV1beta1{Fake: &c.Fake}
161}
162
163// AppsV1 retrieves the AppsV1Client
164func (c *Clientset) AppsV1() appsv1.AppsV1Interface {
165	return &fakeappsv1.FakeAppsV1{Fake: &c.Fake}
166}
167
168// AppsV1beta1 retrieves the AppsV1beta1Client
169func (c *Clientset) AppsV1beta1() appsv1beta1.AppsV1beta1Interface {
170	return &fakeappsv1beta1.FakeAppsV1beta1{Fake: &c.Fake}
171}
172
173// AppsV1beta2 retrieves the AppsV1beta2Client
174func (c *Clientset) AppsV1beta2() appsv1beta2.AppsV1beta2Interface {
175	return &fakeappsv1beta2.FakeAppsV1beta2{Fake: &c.Fake}
176}
177
178// AuditregistrationV1alpha1 retrieves the AuditregistrationV1alpha1Client
179func (c *Clientset) AuditregistrationV1alpha1() auditregistrationv1alpha1.AuditregistrationV1alpha1Interface {
180	return &fakeauditregistrationv1alpha1.FakeAuditregistrationV1alpha1{Fake: &c.Fake}
181}
182
183// AuthenticationV1 retrieves the AuthenticationV1Client
184func (c *Clientset) AuthenticationV1() authenticationv1.AuthenticationV1Interface {
185	return &fakeauthenticationv1.FakeAuthenticationV1{Fake: &c.Fake}
186}
187
188// AuthenticationV1beta1 retrieves the AuthenticationV1beta1Client
189func (c *Clientset) AuthenticationV1beta1() authenticationv1beta1.AuthenticationV1beta1Interface {
190	return &fakeauthenticationv1beta1.FakeAuthenticationV1beta1{Fake: &c.Fake}
191}
192
193// AuthorizationV1 retrieves the AuthorizationV1Client
194func (c *Clientset) AuthorizationV1() authorizationv1.AuthorizationV1Interface {
195	return &fakeauthorizationv1.FakeAuthorizationV1{Fake: &c.Fake}
196}
197
198// AuthorizationV1beta1 retrieves the AuthorizationV1beta1Client
199func (c *Clientset) AuthorizationV1beta1() authorizationv1beta1.AuthorizationV1beta1Interface {
200	return &fakeauthorizationv1beta1.FakeAuthorizationV1beta1{Fake: &c.Fake}
201}
202
203// AutoscalingV1 retrieves the AutoscalingV1Client
204func (c *Clientset) AutoscalingV1() autoscalingv1.AutoscalingV1Interface {
205	return &fakeautoscalingv1.FakeAutoscalingV1{Fake: &c.Fake}
206}
207
208// AutoscalingV2beta1 retrieves the AutoscalingV2beta1Client
209func (c *Clientset) AutoscalingV2beta1() autoscalingv2beta1.AutoscalingV2beta1Interface {
210	return &fakeautoscalingv2beta1.FakeAutoscalingV2beta1{Fake: &c.Fake}
211}
212
213// AutoscalingV2beta2 retrieves the AutoscalingV2beta2Client
214func (c *Clientset) AutoscalingV2beta2() autoscalingv2beta2.AutoscalingV2beta2Interface {
215	return &fakeautoscalingv2beta2.FakeAutoscalingV2beta2{Fake: &c.Fake}
216}
217
218// BatchV1 retrieves the BatchV1Client
219func (c *Clientset) BatchV1() batchv1.BatchV1Interface {
220	return &fakebatchv1.FakeBatchV1{Fake: &c.Fake}
221}
222
223// BatchV1beta1 retrieves the BatchV1beta1Client
224func (c *Clientset) BatchV1beta1() batchv1beta1.BatchV1beta1Interface {
225	return &fakebatchv1beta1.FakeBatchV1beta1{Fake: &c.Fake}
226}
227
228// BatchV2alpha1 retrieves the BatchV2alpha1Client
229func (c *Clientset) BatchV2alpha1() batchv2alpha1.BatchV2alpha1Interface {
230	return &fakebatchv2alpha1.FakeBatchV2alpha1{Fake: &c.Fake}
231}
232
233// CertificatesV1beta1 retrieves the CertificatesV1beta1Client
234func (c *Clientset) CertificatesV1beta1() certificatesv1beta1.CertificatesV1beta1Interface {
235	return &fakecertificatesv1beta1.FakeCertificatesV1beta1{Fake: &c.Fake}
236}
237
238// CoordinationV1beta1 retrieves the CoordinationV1beta1Client
239func (c *Clientset) CoordinationV1beta1() coordinationv1beta1.CoordinationV1beta1Interface {
240	return &fakecoordinationv1beta1.FakeCoordinationV1beta1{Fake: &c.Fake}
241}
242
243// CoordinationV1 retrieves the CoordinationV1Client
244func (c *Clientset) CoordinationV1() coordinationv1.CoordinationV1Interface {
245	return &fakecoordinationv1.FakeCoordinationV1{Fake: &c.Fake}
246}
247
248// CoreV1 retrieves the CoreV1Client
249func (c *Clientset) CoreV1() corev1.CoreV1Interface {
250	return &fakecorev1.FakeCoreV1{Fake: &c.Fake}
251}
252
253// DiscoveryV1alpha1 retrieves the DiscoveryV1alpha1Client
254func (c *Clientset) DiscoveryV1alpha1() discoveryv1alpha1.DiscoveryV1alpha1Interface {
255	return &fakediscoveryv1alpha1.FakeDiscoveryV1alpha1{Fake: &c.Fake}
256}
257
258// EventsV1beta1 retrieves the EventsV1beta1Client
259func (c *Clientset) EventsV1beta1() eventsv1beta1.EventsV1beta1Interface {
260	return &fakeeventsv1beta1.FakeEventsV1beta1{Fake: &c.Fake}
261}
262
263// ExtensionsV1beta1 retrieves the ExtensionsV1beta1Client
264func (c *Clientset) ExtensionsV1beta1() extensionsv1beta1.ExtensionsV1beta1Interface {
265	return &fakeextensionsv1beta1.FakeExtensionsV1beta1{Fake: &c.Fake}
266}
267
268// NetworkingV1 retrieves the NetworkingV1Client
269func (c *Clientset) NetworkingV1() networkingv1.NetworkingV1Interface {
270	return &fakenetworkingv1.FakeNetworkingV1{Fake: &c.Fake}
271}
272
273// NetworkingV1beta1 retrieves the NetworkingV1beta1Client
274func (c *Clientset) NetworkingV1beta1() networkingv1beta1.NetworkingV1beta1Interface {
275	return &fakenetworkingv1beta1.FakeNetworkingV1beta1{Fake: &c.Fake}
276}
277
278// NodeV1alpha1 retrieves the NodeV1alpha1Client
279func (c *Clientset) NodeV1alpha1() nodev1alpha1.NodeV1alpha1Interface {
280	return &fakenodev1alpha1.FakeNodeV1alpha1{Fake: &c.Fake}
281}
282
283// NodeV1beta1 retrieves the NodeV1beta1Client
284func (c *Clientset) NodeV1beta1() nodev1beta1.NodeV1beta1Interface {
285	return &fakenodev1beta1.FakeNodeV1beta1{Fake: &c.Fake}
286}
287
288// PolicyV1beta1 retrieves the PolicyV1beta1Client
289func (c *Clientset) PolicyV1beta1() policyv1beta1.PolicyV1beta1Interface {
290	return &fakepolicyv1beta1.FakePolicyV1beta1{Fake: &c.Fake}
291}
292
293// RbacV1 retrieves the RbacV1Client
294func (c *Clientset) RbacV1() rbacv1.RbacV1Interface {
295	return &fakerbacv1.FakeRbacV1{Fake: &c.Fake}
296}
297
298// RbacV1beta1 retrieves the RbacV1beta1Client
299func (c *Clientset) RbacV1beta1() rbacv1beta1.RbacV1beta1Interface {
300	return &fakerbacv1beta1.FakeRbacV1beta1{Fake: &c.Fake}
301}
302
303// RbacV1alpha1 retrieves the RbacV1alpha1Client
304func (c *Clientset) RbacV1alpha1() rbacv1alpha1.RbacV1alpha1Interface {
305	return &fakerbacv1alpha1.FakeRbacV1alpha1{Fake: &c.Fake}
306}
307
308// SchedulingV1alpha1 retrieves the SchedulingV1alpha1Client
309func (c *Clientset) SchedulingV1alpha1() schedulingv1alpha1.SchedulingV1alpha1Interface {
310	return &fakeschedulingv1alpha1.FakeSchedulingV1alpha1{Fake: &c.Fake}
311}
312
313// SchedulingV1beta1 retrieves the SchedulingV1beta1Client
314func (c *Clientset) SchedulingV1beta1() schedulingv1beta1.SchedulingV1beta1Interface {
315	return &fakeschedulingv1beta1.FakeSchedulingV1beta1{Fake: &c.Fake}
316}
317
318// SchedulingV1 retrieves the SchedulingV1Client
319func (c *Clientset) SchedulingV1() schedulingv1.SchedulingV1Interface {
320	return &fakeschedulingv1.FakeSchedulingV1{Fake: &c.Fake}
321}
322
323// SettingsV1alpha1 retrieves the SettingsV1alpha1Client
324func (c *Clientset) SettingsV1alpha1() settingsv1alpha1.SettingsV1alpha1Interface {
325	return &fakesettingsv1alpha1.FakeSettingsV1alpha1{Fake: &c.Fake}
326}
327
328// StorageV1beta1 retrieves the StorageV1beta1Client
329func (c *Clientset) StorageV1beta1() storagev1beta1.StorageV1beta1Interface {
330	return &fakestoragev1beta1.FakeStorageV1beta1{Fake: &c.Fake}
331}
332
333// StorageV1 retrieves the StorageV1Client
334func (c *Clientset) StorageV1() storagev1.StorageV1Interface {
335	return &fakestoragev1.FakeStorageV1{Fake: &c.Fake}
336}
337
338// StorageV1alpha1 retrieves the StorageV1alpha1Client
339func (c *Clientset) StorageV1alpha1() storagev1alpha1.StorageV1alpha1Interface {
340	return &fakestoragev1alpha1.FakeStorageV1alpha1{Fake: &c.Fake}
341}
342