2 Copyright The Kubernetes Authors.
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
8 http://www.apache.org/licenses/LICENSE-2.0
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
17 // Code generated by client-gen. DO NOT EDIT.
22 corev1 "k8s.io/api/core/v1"
23 v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
24 labels "k8s.io/apimachinery/pkg/labels"
25 schema "k8s.io/apimachinery/pkg/runtime/schema"
26 types "k8s.io/apimachinery/pkg/types"
27 watch "k8s.io/apimachinery/pkg/watch"
28 testing "k8s.io/client-go/testing"
31 // FakePersistentVolumes implements PersistentVolumeInterface
32 type FakePersistentVolumes struct {
36 var persistentvolumesResource = schema.GroupVersionResource{Group: "", Version: "v1", Resource: "persistentvolumes"}
38 var persistentvolumesKind = schema.GroupVersionKind{Group: "", Version: "v1", Kind: "PersistentVolume"}
40 // Get takes name of the persistentVolume, and returns the corresponding persistentVolume object, and an error if there is any.
41 func (c *FakePersistentVolumes) Get(name string, options v1.GetOptions) (result *corev1.PersistentVolume, err error) {
43 Invokes(testing.NewRootGetAction(persistentvolumesResource, name), &corev1.PersistentVolume{})
47 return obj.(*corev1.PersistentVolume), err
50 // List takes label and field selectors, and returns the list of PersistentVolumes that match those selectors.
51 func (c *FakePersistentVolumes) List(opts v1.ListOptions) (result *corev1.PersistentVolumeList, err error) {
53 Invokes(testing.NewRootListAction(persistentvolumesResource, persistentvolumesKind, opts), &corev1.PersistentVolumeList{})
58 label, _, _ := testing.ExtractFromListOptions(opts)
60 label = labels.Everything()
62 list := &corev1.PersistentVolumeList{ListMeta: obj.(*corev1.PersistentVolumeList).ListMeta}
63 for _, item := range obj.(*corev1.PersistentVolumeList).Items {
64 if label.Matches(labels.Set(item.Labels)) {
65 list.Items = append(list.Items, item)
71 // Watch returns a watch.Interface that watches the requested persistentVolumes.
72 func (c *FakePersistentVolumes) Watch(opts v1.ListOptions) (watch.Interface, error) {
74 InvokesWatch(testing.NewRootWatchAction(persistentvolumesResource, opts))
77 // Create takes the representation of a persistentVolume and creates it. Returns the server's representation of the persistentVolume, and an error, if there is any.
78 func (c *FakePersistentVolumes) Create(persistentVolume *corev1.PersistentVolume) (result *corev1.PersistentVolume, err error) {
80 Invokes(testing.NewRootCreateAction(persistentvolumesResource, persistentVolume), &corev1.PersistentVolume{})
84 return obj.(*corev1.PersistentVolume), err
87 // Update takes the representation of a persistentVolume and updates it. Returns the server's representation of the persistentVolume, and an error, if there is any.
88 func (c *FakePersistentVolumes) Update(persistentVolume *corev1.PersistentVolume) (result *corev1.PersistentVolume, err error) {
90 Invokes(testing.NewRootUpdateAction(persistentvolumesResource, persistentVolume), &corev1.PersistentVolume{})
94 return obj.(*corev1.PersistentVolume), err
97 // UpdateStatus was generated because the type contains a Status member.
98 // Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus().
99 func (c *FakePersistentVolumes) UpdateStatus(persistentVolume *corev1.PersistentVolume) (*corev1.PersistentVolume, error) {
101 Invokes(testing.NewRootUpdateSubresourceAction(persistentvolumesResource, "status", persistentVolume), &corev1.PersistentVolume{})
105 return obj.(*corev1.PersistentVolume), err
108 // Delete takes name of the persistentVolume and deletes it. Returns an error if one occurs.
109 func (c *FakePersistentVolumes) Delete(name string, options *v1.DeleteOptions) error {
111 Invokes(testing.NewRootDeleteAction(persistentvolumesResource, name), &corev1.PersistentVolume{})
115 // DeleteCollection deletes a collection of objects.
116 func (c *FakePersistentVolumes) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
117 action := testing.NewRootDeleteCollectionAction(persistentvolumesResource, listOptions)
119 _, err := c.Fake.Invokes(action, &corev1.PersistentVolumeList{})
123 // Patch applies the patch and returns the patched persistentVolume.
124 func (c *FakePersistentVolumes) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *corev1.PersistentVolume, err error) {
126 Invokes(testing.NewRootPatchSubresourceAction(persistentvolumesResource, name, pt, data, subresources...), &corev1.PersistentVolume{})
130 return obj.(*corev1.PersistentVolume), err