README
¶
Builder package for tests
This package holds Builder
functions that can be used to create struct in
tests with less noise.
One of the most important characteristic of a unit test (and any type of test really) is readability. This means it should be easy to read and clearly show the intent of the test. The setup (and cleanup) of the tests should be as small as possible to avoid the noise. Those builders exists to help with that.
There are two types of functions defined in this package:
*Builders*: Create and return a struct
*Modifiers*: Return a function that will operate on a given struct.
// Definition
type TriggerBindingOp func(*v1alpha1.TriggerBinding)
// Builder
func TriggerBinding(name, namespace string, ops ...TriggerBindingOp) *v1alpha1.TriggerBinding {
// […]
}
// Modifier
func TriggerBindingSpec(ops ...TriggerBindingSpecOp) TriggerBindingOp {
// […]
}
The main reason to define the Op
type, and using it in the methods signatures
is to group Modifier function together. It makes it easier to see what is a
Modifier (or Builder) and on what it operates.
The go tests in this package exemplify the consolidation that can be achieved by using the builders:
Documentation
¶
Index ¶
- func ClusterTriggerBinding(name string, ops ...ClusterTriggerBindingOp) *v1alpha1.ClusterTriggerBinding
- func EventListener(name, namespace string, ops ...EventListenerOp) *v1alpha1.EventListener
- func EventListenerPodTemplateSpec(ops ...EventListenerPodTemplateOp) v1alpha1.PodTemplate
- func NewAddressable(hostname string) *duckv1alpha1.Addressable
- func Param(name, value string) v1alpha1.Param
- func Trigger(name, namespace string, ops ...TriggerOp) *v1alpha1.Trigger
- func TriggerBinding(name, namespace string, ops ...TriggerBindingOp) *v1alpha1.TriggerBinding
- func TriggerTemplate(name, namespace string, ops ...TriggerTemplateOp) *v1alpha1.TriggerTemplate
- type ClusterTriggerBindingOp
- type EventInterceptorOp
- type EventListenerKubernetesResourceOp
- type EventListenerOp
- type EventListenerPodTemplateOp
- type EventListenerResourceOp
- type EventListenerSpecOp
- func EventListenerPodTemplate(podTemplate v1alpha1.PodTemplate) EventListenerSpecOp
- func EventListenerReplicas(replicas int32) EventListenerSpecOp
- func EventListenerResources(ops ...EventListenerResourceOp) EventListenerSpecOp
- func EventListenerServiceAccount(saName string) EventListenerSpecOp
- func EventListenerTrigger(ttName, apiVersion string, ops ...EventListenerTriggerOp) EventListenerSpecOp
- func EventListenerTriggerRef(trName string) EventListenerSpecOp
- type EventListenerStatusOp
- type EventListenerTriggerOp
- func EventListenerCELInterceptor(filter string, ops ...EventInterceptorOp) EventListenerTriggerOp
- func EventListenerTriggerBinding(ref, kind, apiVersion string, ops ...TriggerBindingSpecOp) EventListenerTriggerOp
- func EventListenerTriggerInterceptor(name, version, kind, namespace string, ops ...EventInterceptorOp) EventListenerTriggerOp
- func EventListenerTriggerName(name string) EventListenerTriggerOp
- func EventListenerTriggerServiceAccount(saName, namespace string) EventListenerTriggerOp
- type MetaOp
- type ObjectMetaOp
- type TriggerBindingOp
- type TriggerBindingSpecOp
- type TriggerInterceptorOp
- type TriggerOp
- type TriggerSpecOp
- func TriggerSpecBinding(ref, kind, name, apiVersion string, ops ...TriggerBindingSpecOp) TriggerSpecOp
- func TriggerSpecCELInterceptor(filter string, ops ...TriggerInterceptorOp) TriggerSpecOp
- func TriggerSpecInterceptor(name, version, kind, namespace string, ops ...TriggerInterceptorOp) TriggerSpecOp
- func TriggerSpecName(name string) TriggerSpecOp
- func TriggerSpecServiceAccountName(saName string) TriggerSpecOp
- func TriggerSpecTemplate(ttName, apiVersion string) TriggerSpecOp
- type TriggerTemplateOp
- type TriggerTemplateSpecOp
- type TypeMetaOp
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ClusterTriggerBinding ¶
func ClusterTriggerBinding(name string, ops ...ClusterTriggerBindingOp) *v1alpha1.ClusterTriggerBinding
ClusterTriggerBinding creates a ClusterTriggerBinding with default values. Any number of ClusterTriggerBinding modifiers can be passed.
func EventListener ¶
func EventListener(name, namespace string, ops ...EventListenerOp) *v1alpha1.EventListener
EventListener creates an EventListener with default values. Any number of EventListenerOp modifiers can be passed to transform it.
func EventListenerPodTemplateSpec ¶
func EventListenerPodTemplateSpec(ops ...EventListenerPodTemplateOp) v1alpha1.PodTemplate
EventListenerPodTemplateSpec creates an PodTemplate. Any number of EventListenerPodTemplateOp modifiers can be passed to transform it.
func NewAddressable ¶
func NewAddressable(hostname string) *duckv1alpha1.Addressable
func Trigger ¶
func Trigger(name, namespace string, ops ...TriggerOp) *v1alpha1.Trigger
Trigger creates an Trigger with default values. Any number of TriggerOp modifiers can be passed to transform it.
func TriggerBinding ¶
func TriggerBinding(name, namespace string, ops ...TriggerBindingOp) *v1alpha1.TriggerBinding
TriggerBinding creates a TriggerBinding with default values. Any number of TriggerBinding modifiers can be passed.
func TriggerTemplate ¶
func TriggerTemplate(name, namespace string, ops ...TriggerTemplateOp) *v1alpha1.TriggerTemplate
TriggerTemplate creates a TriggerTemplate with default values. Any number of TriggerTemplate modifiers can be passed.
Types ¶
type ClusterTriggerBindingOp ¶
type ClusterTriggerBindingOp func(*v1alpha1.ClusterTriggerBinding)
ClusterTriggerBindingOp is an operation which modifies the ClusterTriggerBinding.
func ClusterTriggerBindingMeta ¶
func ClusterTriggerBindingMeta(ops ...MetaOp) ClusterTriggerBindingOp
ClusterTriggerBindingSpec sets the specified spec of the ClusterTriggerBinding. Any number of ClusterTriggerBindingSpecOp modifiers can be passed.
func ClusterTriggerBindingSpec ¶
func ClusterTriggerBindingSpec(ops ...TriggerBindingSpecOp) ClusterTriggerBindingOp
ClusterTriggerBindingSpec sets the specified spec of the ClusterTriggerBinding. Any number of ClusterTriggerBindingSpecOp modifiers can be passed.
type EventInterceptorOp ¶
type EventInterceptorOp func(*v1alpha1.EventInterceptor)
EventInterceptorOp is an operation which modifies the EventInterceptor.
func EventInterceptorParam ¶
func EventInterceptorParam(name, value string) EventInterceptorOp
EventInterceptorParam adds a parameter to the EventInterceptor.
func EventListenerCELOverlay ¶
func EventListenerCELOverlay(key, expression string) EventInterceptorOp
type EventListenerKubernetesResourceOp ¶
type EventListenerKubernetesResourceOp func(*v1alpha1.KubernetesResource)
EventListenerKubernetesResourceOp is an operation which modifies the Kubernetes Resources.
func EventListenerPodSpec ¶
func EventListenerPodSpec(podSpec duckv1.WithPodSpec) EventListenerKubernetesResourceOp
EventListenerPodSpec sets the specified podSpec duck type to the EventListener.
func EventListenerServiceType ¶
func EventListenerServiceType(svcType string) EventListenerKubernetesResourceOp
EventListenerServiceType sets the specified service type to the EventListener.
type EventListenerOp ¶
type EventListenerOp func(*v1alpha1.EventListener)
EventListenerOp is an operation which modifies the EventListener.
func EventListenerMeta ¶
func EventListenerMeta(ops ...MetaOp) EventListenerOp
EventListenerMeta sets the Meta structs of the EventListener. Any number of MetaOp modifiers can be passed.
func EventListenerSpec ¶
func EventListenerSpec(ops ...EventListenerSpecOp) EventListenerOp
EventListenerSpec sets the specified spec of the EventListener. Any number of EventListenerSpecOp modifiers can be passed to create/modify it.
func EventListenerStatus ¶
func EventListenerStatus(ops ...EventListenerStatusOp) EventListenerOp
EventListenerStatus sets the specified status of the EventListener. Any number of EventListenerStatusOp modifiers can be passed to create/modify it.
type EventListenerPodTemplateOp ¶
type EventListenerPodTemplateOp func(*v1alpha1.PodTemplate)
EventListenerPodTemplateOp is an operation which modifies the PodTemplate.
func EventListenerPodTemplateNodeSelector ¶
func EventListenerPodTemplateNodeSelector(nodeSelector map[string]string) EventListenerPodTemplateOp
EventListenerPodTemplateNodeSelector sets the specified NodeSelector of the EventListener PodTemplate.
func EventListenerPodTemplateTolerations ¶
func EventListenerPodTemplateTolerations(tolerations []corev1.Toleration) EventListenerPodTemplateOp
EventListenerPodTemplateTolerations sets the specified Tolerations of the EventListener PodTemplate.
type EventListenerResourceOp ¶
type EventListenerResourceOp func(*v1alpha1.Resources)
EventListenerResourceOp is an operation which modifies the EventListener spec Resources.
func EventListenerKubernetesResources ¶
func EventListenerKubernetesResources(ops ...EventListenerKubernetesResourceOp) EventListenerResourceOp
EventListenerKubernetesResources set specified Kubernetes resource to the EventListener.
type EventListenerSpecOp ¶
type EventListenerSpecOp func(*v1alpha1.EventListenerSpec)
EventListenerSpecOp is an operation which modifies the EventListenerSpec.
func EventListenerPodTemplate ¶
func EventListenerPodTemplate(podTemplate v1alpha1.PodTemplate) EventListenerSpecOp
EventListenerPodTemplate sets the specified pod template of the EventListener.
func EventListenerReplicas ¶
func EventListenerReplicas(replicas int32) EventListenerSpecOp
EventListenerReplicas sets the specified Replicas of the EventListener.
func EventListenerResources ¶
func EventListenerResources(ops ...EventListenerResourceOp) EventListenerSpecOp
EventListenerResources set specified resources to the EventListener.
func EventListenerServiceAccount ¶
func EventListenerServiceAccount(saName string) EventListenerSpecOp
EventListenerServiceAccount sets the specified ServiceAccountName of the EventListener.
func EventListenerTrigger ¶
func EventListenerTrigger(ttName, apiVersion string, ops ...EventListenerTriggerOp) EventListenerSpecOp
EventListenerTrigger adds an EventListenerTrigger to the EventListenerSpec Triggers. Any number of EventListenerTriggerOp modifiers can be passed to create/modify it.
func EventListenerTriggerRef ¶
func EventListenerTriggerRef(trName string) EventListenerSpecOp
EventListenerTriggerRef adds an EventListenerTrigger with TriggerRef to the EventListenerSpec Triggers.
type EventListenerStatusOp ¶
type EventListenerStatusOp func(*v1alpha1.EventListenerStatus)
EventListenerStatusOp is an operation which modifies the EventListenerStatus.
func EventListenerAddress ¶
func EventListenerAddress(hostname string) EventListenerStatusOp
EventListenerAddress sets the EventListenerAddress on the EventListenerStatus
func EventListenerCondition ¶
func EventListenerCondition(t apis.ConditionType, status corev1.ConditionStatus, message, reason string) EventListenerStatusOp
EventListenerCondition sets the specified condition on the EventListenerStatus.
func EventListenerConfig ¶
func EventListenerConfig(generatedResourceName string) EventListenerStatusOp
EventListenerConfig sets the EventListenerConfiguration on the EventListenerStatus.
type EventListenerTriggerOp ¶
type EventListenerTriggerOp func(*v1alpha1.EventListenerTrigger)
EventListenerTriggerOp is an operation which modifies the Trigger.
func EventListenerCELInterceptor ¶
func EventListenerCELInterceptor(filter string, ops ...EventInterceptorOp) EventListenerTriggerOp
EventListenerCELInterceptor adds a CEL filter to the EventListenerTrigger.
func EventListenerTriggerBinding ¶
func EventListenerTriggerBinding(ref, kind, apiVersion string, ops ...TriggerBindingSpecOp) EventListenerTriggerOp
EventListenerTriggerBinding adds a Binding to the Trigger in EventListenerSpec Triggers.
func EventListenerTriggerInterceptor ¶
func EventListenerTriggerInterceptor(name, version, kind, namespace string, ops ...EventInterceptorOp) EventListenerTriggerOp
EventListenerTriggerInterceptor adds an objectRef to an interceptor Service to the EventListenerTrigger.
func EventListenerTriggerName ¶
func EventListenerTriggerName(name string) EventListenerTriggerOp
EventListenerTriggerName adds a Name to the Trigger in EventListenerSpec Triggers.
func EventListenerTriggerServiceAccount ¶
func EventListenerTriggerServiceAccount(saName, namespace string) EventListenerTriggerOp
EventListenerTriggerServiceAccount set the specified ServiceAccountName of the EventListenerTrigger.
type MetaOp ¶
type MetaOp interface{}
MetaOp is an interface that is used in other builders. Other builders should have a Meta function that accepts ...MetaOp where ObjectMetaOp/TypeMetaOp are the underlying type.
type ObjectMetaOp ¶
type ObjectMetaOp func(m *metav1.ObjectMeta)
ObjectMetaOp is an operation which modifies the ObjectMeta.
func Annotation ¶
func Annotation(key, value string) ObjectMetaOp
Annotation adds a single annotation to the ObjectMeta.
type TriggerBindingOp ¶
type TriggerBindingOp func(*v1alpha1.TriggerBinding)
TriggerBindingOp is an operation which modifies the TriggerBinding.
func TriggerBindingMeta ¶
func TriggerBindingMeta(ops ...MetaOp) TriggerBindingOp
TriggerBindingMeta sets the Meta structs of the TriggerBinding. Any number of MetaOp modifiers can be passed.
func TriggerBindingSpec ¶
func TriggerBindingSpec(ops ...TriggerBindingSpecOp) TriggerBindingOp
TriggerBindingSpec sets the specified spec of the TriggerBinding. Any number of TriggerBindingSpecOp modifiers can be passed.
type TriggerBindingSpecOp ¶
type TriggerBindingSpecOp func(*v1alpha1.TriggerBindingSpec)
TriggerBindingSpecOp is an operation which modifies the TriggerBindingSpec.
func TriggerBindingParam ¶
func TriggerBindingParam(name, value string) TriggerBindingSpecOp
TriggerBindingParam adds a param to the TriggerBindingSpec.
type TriggerInterceptorOp ¶
type TriggerInterceptorOp func(*v1alpha1.TriggerInterceptor)
TriggerInterceptorOp is an operation which modifies the EventInterceptor.
func TriggerSpecCELOverlay ¶
func TriggerSpecCELOverlay(key, expression string) TriggerInterceptorOp
TriggerSpecCELOverlay modifies CEL interceptor
func TriggerSpecInterceptorParam ¶
func TriggerSpecInterceptorParam(name, value string) TriggerInterceptorOp
TriggerSpecInterceptorParam adds a parameter to the TriggerInterceptor.
type TriggerOp ¶
type TriggerOp func(*v1alpha1.Trigger)
TriggerOp is an operation which modifies the Trigger.
func TriggerSpec ¶
func TriggerSpec(ops ...TriggerSpecOp) TriggerOp
TriggerSpec sets the specified spec of the EventListener. Any number of EventListenerSpecOp modifiers can be passed to create/modify it.
type TriggerSpecOp ¶
type TriggerSpecOp func(*v1alpha1.TriggerSpec)
TriggerSpecOp is an operation which modifies the EventListenerSpec.
func TriggerSpecBinding ¶
func TriggerSpecBinding(ref, kind, name, apiVersion string, ops ...TriggerBindingSpecOp) TriggerSpecOp
TriggerSpecBinding adds a Binding to the Trigger in TriggerSpec.
func TriggerSpecCELInterceptor ¶
func TriggerSpecCELInterceptor(filter string, ops ...TriggerInterceptorOp) TriggerSpecOp
TriggerSpecCELInterceptor adds a CEL filter to the TriggerSpecTrigger.
func TriggerSpecInterceptor ¶
func TriggerSpecInterceptor(name, version, kind, namespace string, ops ...TriggerInterceptorOp) TriggerSpecOp
TriggerSpecInterceptor adds an objectRef to an interceptor Service to the TriggerSpec.
func TriggerSpecName ¶
func TriggerSpecName(name string) TriggerSpecOp
TriggerSpecName adds a Name to the Trigger in TriggerSpec.
func TriggerSpecServiceAccountName ¶
func TriggerSpecServiceAccountName(saName string) TriggerSpecOp
TriggerSpecServiceAccountName set the specified ServiceAccount of the Trigger.
func TriggerSpecTemplate ¶
func TriggerSpecTemplate(ttName, apiVersion string) TriggerSpecOp
TriggerSpecTemplate adds an TriggerTemplate to the TriggerSpec.
type TriggerTemplateOp ¶
type TriggerTemplateOp func(*v1alpha1.TriggerTemplate)
TriggerTemplateOp is an operation which modifies an TriggerTemplate struct.
func TriggerTemplateMeta ¶
func TriggerTemplateMeta(ops ...MetaOp) TriggerTemplateOp
TriggerTemplateMeta sets the Meta structs of the TriggerTemplate. Any number of MetaOp modifiers can be passed.
func TriggerTemplateSpec ¶
func TriggerTemplateSpec(ops ...TriggerTemplateSpecOp) TriggerTemplateOp
TriggerTemplateSpec sets the TriggerTemplateSpec. Any number of TriggerTemplate modifiers can be passed.
type TriggerTemplateSpecOp ¶
type TriggerTemplateSpecOp func(*v1alpha1.TriggerTemplateSpec)
TriggerTemplateSpecOp is an operation which modifies a TriggerTemplateSpec struct.
func TriggerResourceTemplate ¶
func TriggerResourceTemplate(resourceTemplate runtime.RawExtension) TriggerTemplateSpecOp
TriggerResourceTemplate adds a ResourceTemplate to the TriggerTemplateSpec.
func TriggerTemplateParam ¶
func TriggerTemplateParam(name, description, defaultValue string) TriggerTemplateSpecOp
TriggerTemplateParam adds a ParamSpec to the TriggerTemplateSpec.
type TypeMetaOp ¶
type TypeMetaOp func(m *metav1.TypeMeta)
TypeMetaOp is an operation which modifies the TypeMeta.