testing

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2021 License: Apache-2.0 Imports: 53 Imported by: 0

Documentation

Overview

Package testing contains test helpers for reconcilers.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeFactory

func MakeFactory(ctor Ctor) rt.Factory

MakeFactory creates a testing factory for our controller.Reconciler, and initializes a Reconciler using the given Ctor as part of the process.

func NewConfigMap

func NewConfigMap(name string, data map[string]string) *corev1.ConfigMap

NewConfigMap returns a ConfigMap object.

func NewRoleBinding added in v1.3.0

func NewRoleBinding(sa *corev1.ServiceAccount) func() *rbacv1.RoleBinding

func NewScheme

func NewScheme() *runtime.Scheme

NewScheme returns a new scheme populated with the types defined in clientSetSchemes.

func NewServiceAccount added in v1.3.0

func NewServiceAccount(src kmeta.OwnerRefable) serviceAccountCtorWithOptions

func NewTestDeploymentReconciler added in v1.3.0

func NewTestDeploymentReconciler(ctx context.Context, ls *Listers) common.GenericDeploymentReconciler

NewTestDeploymentReconciler returns a GenericServiceReconciler initialized with test clients.

func NewTestServiceReconciler added in v1.3.0

func NewTestServiceReconciler(ctx context.Context, ls *Listers) common.GenericServiceReconciler

NewTestServiceReconciler returns a GenericServiceReconciler initialized with test clients.

func Populate

func Populate(srcCpy v1alpha1.EventSource)

Populate populates an event source with generic attributes.

func SetEnvVar

func SetEnvVar(t *testing.T, name, val string) (unset func())

SetEnvVar sets the value of an env var and returns a function that can be deferred to unset that variable.

func TestControllerConstructor

func TestControllerConstructor(t *testing.T, ctor injection.ControllerConstructor)

TestControllerConstructor tests that a controller constructor meets our requirements.

func TestControllerConstructorFailures

func TestControllerConstructorFailures(t *testing.T, ctor injection.ControllerConstructor)

TestControllerConstructorFailures tests that a controller constructor fails when various requirements are not met.

func TestReconcileAdapter added in v1.3.0

func TestReconcileAdapter(t *testing.T, ctor Ctor, src v1alpha1.EventSource, adapterBuilder interface{})

Test the Reconcile() method of the controller.Reconciler implemented by source Reconcilers, with focus on the generic ReconcileSource logic executed by the generic adapter reconciler embedded in every source Reconciler.

The environment for each test case is set up as follows:

  1. MakeFactory initializes fake clients with the objects declared in the test case
  2. MakeFactory injects those clients into a context along with fake event recorders, etc.
  3. A Reconciler is constructed via a Ctor function using the values injected above
  4. The Reconciler returned by MakeFactory is used to run the test case

func ToUnstructured

func ToUnstructured(t *testing.T, objs []runtime.Object) (unstr []runtime.Object)

ToUnstructured takes a list of k8s resources and converts them to Unstructured objects. We must pass objects as Unstructured to the dynamic client fake, or it won't handle them properly.

Types

type Ctor

Ctor constructs a controller.Reconciler.

type Listers

type Listers struct {
	// contains filtered or unexported fields
}

Listers returns listers and objects filtered from those listers.

func NewListers

func NewListers(scheme *runtime.Scheme, objs []runtime.Object) Listers

NewListers returns a new instance of Listers initialized with the given objects.

func (*Listers) GetDeploymentLister

func (l *Listers) GetDeploymentLister() appslistersv1.DeploymentLister

GetDeploymentLister returns a lister for Deployment objects.

func (*Listers) GetHTTPPollerSourceLister added in v1.4.0

func (l *Listers) GetHTTPPollerSourceLister() listersv1alpha1.HTTPPollerSourceLister

GetHTTPPollerSourceLister returns a Lister for HTTPPollerSource objects.

func (*Listers) GetKubeObjects

func (l *Listers) GetKubeObjects() []runtime.Object

GetKubeObjects returns objects from Kubernetes APIs.

func (*Listers) GetRoleBindingLister added in v1.3.0

func (l *Listers) GetRoleBindingLister() rbaclistersv1.RoleBindingLister

GetRoleBindingLister returns a lister for RoleBinding objects

func (*Listers) GetServiceAccountLister added in v1.3.0

func (l *Listers) GetServiceAccountLister() corelistersv1.ServiceAccountLister

GetServiceAccountLister returns a lister for ServiceAccount objects.

func (*Listers) GetServiceLister

func (l *Listers) GetServiceLister() servinglistersv1.ServiceLister

GetServiceLister returns a lister for Knative Service objects.

func (*Listers) GetServingObjects

func (l *Listers) GetServingObjects() []runtime.Object

GetServingObjects returns objects from the serving API.

func (*Listers) GetSlackSourceLister

func (l *Listers) GetSlackSourceLister() listersv1alpha1.SlackSourceLister

GetSlackSourceLister returns a Lister for SlackSource objects.

func (*Listers) GetSourcesObjects

func (l *Listers) GetSourcesObjects() []runtime.Object

GetSourcesObjects returns objects from the sources API.

func (*Listers) GetWebhookSourceLister added in v1.4.0

func (l *Listers) GetWebhookSourceLister() listersv1alpha1.WebhookSourceLister

GetWebhookSourceLister returns a Lister for WebhookSource objects.

func (*Listers) GetZendeskSourceLister

func (l *Listers) GetZendeskSourceLister() listersv1alpha1.ZendeskSourceLister

GetZendeskSourceLister returns a Lister for ZendeskSource objects.

func (*Listers) IndexerFor

func (l *Listers) IndexerFor(obj runtime.Object) cache.Indexer

IndexerFor returns the indexer for the given object.

Jump to

Keyboard shortcuts

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