testclient

package
v0.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2015 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation ¶

Index ¶

Constants ¶

This section is empty.

Variables ¶

This section is empty.

Functions ¶

func AddObjectsFromPath ¶

func AddObjectsFromPath(path string, o ObjectRetriever) error

AddObjectsFromPath loads the JSON or YAML file containing Kubernetes API resources and adds them to the provided ObjectRetriever.

Types ¶

type Fake ¶

type Fake struct {
	Actions []FakeAction
	Watch   watch.Interface
	Err     error

	// ReactFn is an optional function that will be invoked with the provided action
	// and return a response. It can implement scenario specific behavior. The type
	// of object returned must match the expected type from the caller (even if nil).
	ReactFn ReactionFunc
}

Fake implements client.Interface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func NewSimpleFake ¶

func NewSimpleFake(objects ...runtime.Object) *Fake

NewSimpleFake returns a client that will respond with the provided objects

func (*Fake) Endpoints ¶

func (c *Fake) Endpoints(namespace string) client.EndpointsInterface

func (*Fake) Events ¶

func (c *Fake) Events(namespace string) client.EventInterface

func (*Fake) Invokes ¶

func (c *Fake) Invokes(action FakeAction, obj runtime.Object) (runtime.Object, error)

Invokes records the provided FakeAction and then invokes the ReactFn (if provided). obj is expected to be of the same type a normal call would return.

func (*Fake) LimitRanges ¶

func (c *Fake) LimitRanges(namespace string) client.LimitRangeInterface

func (*Fake) Namespaces ¶

func (c *Fake) Namespaces() client.NamespaceInterface

func (*Fake) Nodes ¶

func (c *Fake) Nodes() client.NodeInterface

func (*Fake) PersistentVolumeClaims ¶

func (c *Fake) PersistentVolumeClaims(namespace string) client.PersistentVolumeClaimInterface

func (*Fake) PersistentVolumes ¶

func (c *Fake) PersistentVolumes() client.PersistentVolumeInterface

func (*Fake) Pods ¶

func (c *Fake) Pods(namespace string) client.PodInterface

func (*Fake) ReplicationControllers ¶

func (c *Fake) ReplicationControllers(namespace string) client.ReplicationControllerInterface

func (*Fake) ResourceQuotas ¶

func (c *Fake) ResourceQuotas(namespace string) client.ResourceQuotaInterface

func (*Fake) Secrets ¶

func (c *Fake) Secrets(namespace string) client.SecretsInterface

func (*Fake) ServerAPIVersions ¶

func (c *Fake) ServerAPIVersions() (*api.APIVersions, error)

func (*Fake) ServerVersion ¶

func (c *Fake) ServerVersion() (*version.Info, error)

func (*Fake) Services ¶

func (c *Fake) Services(namespace string) client.ServiceInterface

type FakeAction ¶

type FakeAction struct {
	Action string
	Value  interface{}
}

type FakeEndpoints ¶

type FakeEndpoints struct {
	Fake      *Fake
	Namespace string
}

FakeEndpoints implements EndpointInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeEndpoints) Create ¶

func (c *FakeEndpoints) Create(endpoints *api.Endpoints) (*api.Endpoints, error)

func (*FakeEndpoints) Get ¶

func (c *FakeEndpoints) Get(name string) (*api.Endpoints, error)

func (*FakeEndpoints) List ¶

func (c *FakeEndpoints) List(selector labels.Selector) (*api.EndpointsList, error)

func (*FakeEndpoints) Update ¶

func (c *FakeEndpoints) Update(endpoints *api.Endpoints) (*api.Endpoints, error)

func (*FakeEndpoints) Watch ¶

func (c *FakeEndpoints) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeEvents ¶

type FakeEvents struct {
	Fake *Fake
}

FakeEvents implements EventInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeEvents) Create ¶

func (c *FakeEvents) Create(event *api.Event) (*api.Event, error)

Create makes a new event. Returns the copy of the event the server returns, or an error.

func (*FakeEvents) Delete ¶

func (c *FakeEvents) Delete(name string) error

func (*FakeEvents) Get ¶

func (c *FakeEvents) Get(id string) (*api.Event, error)

Get returns the given event, or an error.

func (*FakeEvents) GetFieldSelector ¶

func (c *FakeEvents) GetFieldSelector(involvedObjectName, involvedObjectNamespace, involvedObjectKind, involvedObjectUID *string) fields.Selector

func (*FakeEvents) List ¶

func (c *FakeEvents) List(label labels.Selector, field fields.Selector) (*api.EventList, error)

List returns a list of events matching the selectors.

func (*FakeEvents) Search ¶

func (c *FakeEvents) Search(objOrRef runtime.Object) (*api.EventList, error)

Search returns a list of events matching the specified object.

func (*FakeEvents) Update ¶

func (c *FakeEvents) Update(event *api.Event) (*api.Event, error)

Update replaces an existing event. Returns the copy of the event the server returns, or an error.

func (*FakeEvents) Watch ¶

func (c *FakeEvents) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

Watch starts watching for events matching the given selectors.

type FakeLimitRanges ¶

type FakeLimitRanges struct {
	Fake      *Fake
	Namespace string
}

FakeLimitRanges implements PodsInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the methods you want to test easier.

func (*FakeLimitRanges) Create ¶

func (c *FakeLimitRanges) Create(limitRange *api.LimitRange) (*api.LimitRange, error)

func (*FakeLimitRanges) Delete ¶

func (c *FakeLimitRanges) Delete(name string) error

func (*FakeLimitRanges) Get ¶

func (c *FakeLimitRanges) Get(name string) (*api.LimitRange, error)

func (*FakeLimitRanges) List ¶

func (c *FakeLimitRanges) List(selector labels.Selector) (*api.LimitRangeList, error)

func (*FakeLimitRanges) Update ¶

func (c *FakeLimitRanges) Update(limitRange *api.LimitRange) (*api.LimitRange, error)

func (*FakeLimitRanges) Watch ¶

func (c *FakeLimitRanges) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeNamespaces ¶

type FakeNamespaces struct {
	Fake *Fake
}

FakeNamespaces implements NamespacesInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the methods you want to test easier.

func (*FakeNamespaces) Create ¶

func (c *FakeNamespaces) Create(namespace *api.Namespace) (*api.Namespace, error)

func (*FakeNamespaces) Delete ¶

func (c *FakeNamespaces) Delete(name string) error

func (*FakeNamespaces) Finalize ¶

func (c *FakeNamespaces) Finalize(namespace *api.Namespace) (*api.Namespace, error)

func (*FakeNamespaces) Get ¶

func (c *FakeNamespaces) Get(name string) (*api.Namespace, error)

func (*FakeNamespaces) List ¶

func (c *FakeNamespaces) List(labels labels.Selector, field fields.Selector) (*api.NamespaceList, error)

func (*FakeNamespaces) Status ¶

func (c *FakeNamespaces) Status(namespace *api.Namespace) (*api.Namespace, error)

func (*FakeNamespaces) Update ¶

func (c *FakeNamespaces) Update(namespace *api.Namespace) (*api.Namespace, error)

func (*FakeNamespaces) Watch ¶

func (c *FakeNamespaces) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeNodes ¶

type FakeNodes struct {
	Fake *Fake
}

FakeNodes implements MinionInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeNodes) Create ¶

func (c *FakeNodes) Create(minion *api.Node) (*api.Node, error)

func (*FakeNodes) Delete ¶

func (c *FakeNodes) Delete(name string) error

func (*FakeNodes) Get ¶

func (c *FakeNodes) Get(name string) (*api.Node, error)

func (*FakeNodes) List ¶

func (c *FakeNodes) List(label labels.Selector, field fields.Selector) (*api.NodeList, error)

func (*FakeNodes) Update ¶

func (c *FakeNodes) Update(minion *api.Node) (*api.Node, error)

func (*FakeNodes) UpdateStatus ¶

func (c *FakeNodes) UpdateStatus(minion *api.Node) (*api.Node, error)

func (*FakeNodes) Watch ¶

func (c *FakeNodes) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakePersistentVolumeClaims ¶

type FakePersistentVolumeClaims struct {
	Fake      *Fake
	Namespace string
}

func (*FakePersistentVolumeClaims) Create ¶

func (*FakePersistentVolumeClaims) Delete ¶

func (c *FakePersistentVolumeClaims) Delete(name string) error

func (*FakePersistentVolumeClaims) Get ¶

func (*FakePersistentVolumeClaims) List ¶

func (*FakePersistentVolumeClaims) Update ¶

func (*FakePersistentVolumeClaims) UpdateStatus ¶

func (*FakePersistentVolumeClaims) Watch ¶

func (c *FakePersistentVolumeClaims) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakePersistentVolumes ¶

type FakePersistentVolumes struct {
	Fake      *Fake
	Namespace string
}

func (*FakePersistentVolumes) Create ¶

func (*FakePersistentVolumes) Delete ¶

func (c *FakePersistentVolumes) Delete(name string) error

func (*FakePersistentVolumes) Get ¶

func (*FakePersistentVolumes) List ¶

func (*FakePersistentVolumes) Update ¶

func (*FakePersistentVolumes) UpdateStatus ¶

func (*FakePersistentVolumes) Watch ¶

func (c *FakePersistentVolumes) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakePods ¶

type FakePods struct {
	Fake      *Fake
	Namespace string
}

FakePods implements PodsInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the methods you want to test easier.

func (*FakePods) Bind ¶

func (c *FakePods) Bind(bind *api.Binding) error

func (*FakePods) Create ¶

func (c *FakePods) Create(pod *api.Pod) (*api.Pod, error)

func (*FakePods) Delete ¶

func (c *FakePods) Delete(name string) error

func (*FakePods) Get ¶

func (c *FakePods) Get(name string) (*api.Pod, error)

func (*FakePods) List ¶

func (c *FakePods) List(selector labels.Selector) (*api.PodList, error)

func (*FakePods) Update ¶

func (c *FakePods) Update(pod *api.Pod) (*api.Pod, error)

func (*FakePods) UpdateStatus ¶

func (c *FakePods) UpdateStatus(pod *api.Pod) (*api.Pod, error)

func (*FakePods) Watch ¶

func (c *FakePods) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeReplicationControllers ¶

type FakeReplicationControllers struct {
	Fake      *Fake
	Namespace string
}

FakeReplicationControllers implements ReplicationControllerInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeReplicationControllers) Create ¶

func (*FakeReplicationControllers) Delete ¶

func (c *FakeReplicationControllers) Delete(name string) error

func (*FakeReplicationControllers) Get ¶

func (*FakeReplicationControllers) List ¶

func (*FakeReplicationControllers) Update ¶

func (*FakeReplicationControllers) Watch ¶

func (c *FakeReplicationControllers) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeResourceQuotas ¶

type FakeResourceQuotas struct {
	Fake      *Fake
	Namespace string
}

FakeResourceQuotas implements ResourceQuotaInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the methods you want to test easier.

func (*FakeResourceQuotas) Create ¶

func (c *FakeResourceQuotas) Create(resourceQuota *api.ResourceQuota) (*api.ResourceQuota, error)

func (*FakeResourceQuotas) Delete ¶

func (c *FakeResourceQuotas) Delete(name string) error

func (*FakeResourceQuotas) Get ¶

func (c *FakeResourceQuotas) Get(name string) (*api.ResourceQuota, error)

func (*FakeResourceQuotas) List ¶

func (*FakeResourceQuotas) Update ¶

func (c *FakeResourceQuotas) Update(resourceQuota *api.ResourceQuota) (*api.ResourceQuota, error)

func (*FakeResourceQuotas) UpdateStatus ¶

func (c *FakeResourceQuotas) UpdateStatus(resourceQuota *api.ResourceQuota) (*api.ResourceQuota, error)

func (*FakeResourceQuotas) Watch ¶

func (c *FakeResourceQuotas) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeSecrets ¶

type FakeSecrets struct {
	Fake      *Fake
	Namespace string
}

Fake implements SecretInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeSecrets) Create ¶

func (c *FakeSecrets) Create(secret *api.Secret) (*api.Secret, error)

func (*FakeSecrets) Delete ¶

func (c *FakeSecrets) Delete(name string) error

func (*FakeSecrets) Get ¶

func (c *FakeSecrets) Get(name string) (*api.Secret, error)

func (*FakeSecrets) List ¶

func (c *FakeSecrets) List(labels labels.Selector, field fields.Selector) (*api.SecretList, error)

func (*FakeSecrets) Update ¶

func (c *FakeSecrets) Update(secret *api.Secret) (*api.Secret, error)

func (*FakeSecrets) Watch ¶

func (c *FakeSecrets) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type FakeServices ¶

type FakeServices struct {
	Fake      *Fake
	Namespace string
}

Fake implements ServiceInterface. Meant to be embedded into a struct to get a default implementation. This makes faking out just the method you want to test easier.

func (*FakeServices) Create ¶

func (c *FakeServices) Create(service *api.Service) (*api.Service, error)

func (*FakeServices) Delete ¶

func (c *FakeServices) Delete(name string) error

func (*FakeServices) Get ¶

func (c *FakeServices) Get(name string) (*api.Service, error)

func (*FakeServices) List ¶

func (c *FakeServices) List(selector labels.Selector) (*api.ServiceList, error)

func (*FakeServices) Update ¶

func (c *FakeServices) Update(service *api.Service) (*api.Service, error)

func (*FakeServices) Watch ¶

func (c *FakeServices) Watch(label labels.Selector, field fields.Selector, resourceVersion string) (watch.Interface, error)

type ObjectRetriever ¶

type ObjectRetriever interface {
	// Kind should return a resource or a list of resources (depending on the provided kind and
	// name). It should return an error if the caller should communicate an error to the server.
	Kind(kind, name string) (runtime.Object, error)
	// Add adds a runtime object for test purposes into this object.
	Add(runtime.Object) error
}

ObjectRetriever abstracts the implementation for retrieving or setting generic objects. It is intended to be used to fake calls to a server by returning objects based on their kind and name.

func NewObjects ¶

func NewObjects(scheme *runtime.Scheme) ObjectRetriever

NewObjects implements the ObjectRetriever interface by introspecting the objects provided to Add() and returning them when the Kind method is invoked. If an api.List object is provided to Add(), each child item is added. If an object is added that is itself a list (PodList, ServiceList) then that is added to the "PodList" kind. If no PodList is added, the retriever will take any loaded Pods and return them in a list. If an api.Status is added, and the Details.Kind field is set, that status will be returned instead (as an error if Status != Success, or as a runtime.Object if Status == Success). If multiple PodLists are provided, they will be returned in order by the Kind call, and the last PodList will be reused for subsequent calls.

type ReactionFunc ¶

type ReactionFunc func(FakeAction) (runtime.Object, error)

ReactionFunc is a function that returns an object or error for a given Action

func ObjectReaction ¶

func ObjectReaction(o ObjectRetriever, mapper meta.RESTMapper) ReactionFunc

ObjectReaction returns a ReactionFunc that takes a generic action string of the form <verb>-<resource> or <verb>-<subresource>-<resource> and attempts to return a runtime Object or error that matches the requested action. For instance, list-replicationControllers should attempt to return a list of replication controllers. This method delegates to the ObjectRetriever interface to satisfy retrieval of lists or retrieval of single items. TODO: add support for sub resources

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL