testutils

package
v0.2.1-0...-4d7afa4 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2025 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Overview

Package testutils is for test utilities.

Index

Constants

View Source
const (
	ColorRed   = "\x1b[31m"
	ColorGreen = "\x1b[32m"
	ColorReset = "\x1b[0m"
)

Colors for terminal output.

Variables

This section is empty.

Functions

func CompareIgnoringAnsi

func CompareIgnoringAnsi(expected, actual string) bool

CompareIgnoringAnsi compares two strings after stripping ANSI special characters.

func CreateFakeDiscoveryClient

func CreateFakeDiscoveryClient(resources map[string][]metav1.APIResource) discovery.DiscoveryInterface

CreateFakeDiscoveryClient is a helper function to create a fake discovery client for testing.

func Green

func Green(input string) string

Green takes a multiline string, splits it by line, and adds green coloring to each line. It returns a single string with all lines joined back together.

func Red

func Red(input string) string

Red takes a multiline string, splits it by line, and adds red coloring to each line. It returns a single string with all lines joined back together.

func SetupKubeTestLogger

func SetupKubeTestLogger(t *testing.T)

SetupKubeTestLogger sets the global logger for use of the Kube environment to the T.Log of this test.

func TestLogger

func TestLogger(t *testing.T, verbose bool) logging.Logger

TestLogger coerces the T.Log into the shape of a Logr logger.

Types

type CRDBuilder

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

CRDBuilder helps construct CRD resources for testing.

func NewCRD

func NewCRD(name, group, kind string) *CRDBuilder

NewCRD creates a new CRDBuilder.

func (*CRDBuilder) Build

Build returns the built CRD.

func (*CRDBuilder) WithClusterScope

func (b *CRDBuilder) WithClusterScope() *CRDBuilder

WithClusterScope sets the CRD to be cluster-scoped.

func (*CRDBuilder) WithListKind

func (b *CRDBuilder) WithListKind(listKind string) *CRDBuilder

WithListKind sets the ListKind name for the CRD.

func (*CRDBuilder) WithNamespaceScope

func (b *CRDBuilder) WithNamespaceScope() *CRDBuilder

WithNamespaceScope sets the CRD to be namespace-scoped.

func (*CRDBuilder) WithPlural

func (b *CRDBuilder) WithPlural(plural string) *CRDBuilder

WithPlural sets the plural name for the CRD.

func (*CRDBuilder) WithSchema

func (b *CRDBuilder) WithSchema(schema *extv1.JSONSchemaProps) *CRDBuilder

WithSchema adds an OpenAPI v3 schema to the first version.

func (*CRDBuilder) WithScope

func (b *CRDBuilder) WithScope(scope extv1.ResourceScope) *CRDBuilder

WithScope sets the scope (Namespaced or Cluster) for the CRD.

func (*CRDBuilder) WithSingular

func (b *CRDBuilder) WithSingular(singular string) *CRDBuilder

WithSingular sets the singular name for the CRD.

func (*CRDBuilder) WithStandardSchema

func (b *CRDBuilder) WithStandardSchema(specFieldName string) *CRDBuilder

WithStandardSchema adds a standard schema with common Kubernetes fields and a spec field.

func (*CRDBuilder) WithStringFieldSchema

func (b *CRDBuilder) WithStringFieldSchema(fieldName string) *CRDBuilder

WithStringFieldSchema adds a simple string field schema to the CRD.

func (*CRDBuilder) WithVersion

func (b *CRDBuilder) WithVersion(name string, served, storage bool) *CRDBuilder

WithVersion adds a version to the CRD.

type CompositionBuilder

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

CompositionBuilder helps construct Composition objects for testing.

func NewComposition

func NewComposition(name string) *CompositionBuilder

NewComposition creates a new CompositionBuilder.

func (*CompositionBuilder) Build

Build returns the built Composition.

func (*CompositionBuilder) BuildAsUnstructured

func (b *CompositionBuilder) BuildAsUnstructured() *un.Unstructured

BuildAsUnstructured returns the built Composition as an unstructured object.

func (*CompositionBuilder) WithCompositeTypeRef

func (b *CompositionBuilder) WithCompositeTypeRef(apiVersion, kind string) *CompositionBuilder

WithCompositeTypeRef sets the composite type reference.

func (*CompositionBuilder) WithPipelineMode

func (b *CompositionBuilder) WithPipelineMode() *CompositionBuilder

WithPipelineMode sets the composition mode to pipeline.

func (*CompositionBuilder) WithPipelineStep

func (b *CompositionBuilder) WithPipelineStep(step, functionName string, input map[string]interface{}) *CompositionBuilder

WithPipelineStep adds a pipeline step to the composition.

type DiffProcessor

type DiffProcessor interface {
	Initialize(ctx context.Context) error
	ProcessAll(stdout io.Writer, ctx context.Context, resources []*un.Unstructured) error
	ProcessResource(stdout io.Writer, ctx context.Context, res *un.Unstructured) error
}

DiffProcessor defines the interface for processing resources for diffing.

type DiffProcessorBuilder

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

DiffProcessorBuilder helps build mock DiffProcessor instances.

func NewMockDiffProcessor

func NewMockDiffProcessor() *DiffProcessorBuilder

NewMockDiffProcessor creates a new DiffProcessorBuilder.

func (*DiffProcessorBuilder) Build

Build creates and returns the configured mock DiffProcessor.

func (*DiffProcessorBuilder) WithDiffOutput

func (b *DiffProcessorBuilder) WithDiffOutput(output string) *DiffProcessorBuilder

WithDiffOutput sets a PerformDiff implementation that writes a specific output.

func (*DiffProcessorBuilder) WithFailedInitialize

func (b *DiffProcessorBuilder) WithFailedInitialize(errMsg string) *DiffProcessorBuilder

WithFailedInitialize sets a failing Initialize implementation.

func (*DiffProcessorBuilder) WithFailedPerformDiff

func (b *DiffProcessorBuilder) WithFailedPerformDiff(errMsg string) *DiffProcessorBuilder

WithFailedPerformDiff sets a failing PerformDiff implementation.

func (*DiffProcessorBuilder) WithInitialize

func (b *DiffProcessorBuilder) WithInitialize(fn func(context.Context) error) *DiffProcessorBuilder

WithInitialize adds an implementation for the Initialize method.

func (*DiffProcessorBuilder) WithPerformDiff

WithPerformDiff adds an implementation for the PerformDiff method.

func (*DiffProcessorBuilder) WithSuccessfulInitialize

func (b *DiffProcessorBuilder) WithSuccessfulInitialize() *DiffProcessorBuilder

WithSuccessfulInitialize sets a successful Initialize implementation.

func (*DiffProcessorBuilder) WithSuccessfulPerformDiff

func (b *DiffProcessorBuilder) WithSuccessfulPerformDiff() *DiffProcessorBuilder

WithSuccessfulPerformDiff sets a successful PerformDiff implementation.

type MockApplyClient

type MockApplyClient struct {
	InitializeFn  func(ctx context.Context) error
	ApplyFn       func(ctx context.Context, obj *un.Unstructured) (*un.Unstructured, error)
	DryRunApplyFn func(ctx context.Context, obj *un.Unstructured) (*un.Unstructured, error)
}

MockApplyClient implements the kubernetes.ApplyClient interface.

func (*MockApplyClient) Apply

Apply implements kubernetes.ApplyClient.

func (*MockApplyClient) DryRunApply

func (m *MockApplyClient) DryRunApply(ctx context.Context, obj *un.Unstructured) (*un.Unstructured, error)

DryRunApply implements kubernetes.ApplyClient.

func (*MockApplyClient) Initialize

func (m *MockApplyClient) Initialize(ctx context.Context) error

Initialize implements kubernetes.ApplyClient.

type MockApplyClientBuilder

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

MockApplyClientBuilder helps build kubernetes.ApplyClient mocks.

func NewMockApplyClient

func NewMockApplyClient() *MockApplyClientBuilder

NewMockApplyClient creates a new MockApplyClientBuilder.

func (*MockApplyClientBuilder) Build

Build returns the built mock.

func (*MockApplyClientBuilder) WithApply

WithApply sets the Apply behavior.

func (*MockApplyClientBuilder) WithDryRunApply

WithDryRunApply sets the DryRunApply behavior.

func (*MockApplyClientBuilder) WithFailedDryRun

func (b *MockApplyClientBuilder) WithFailedDryRun(errMsg string) *MockApplyClientBuilder

WithFailedDryRun sets DryRunApply to return an error.

func (*MockApplyClientBuilder) WithInitialize

func (b *MockApplyClientBuilder) WithInitialize(fn func(context.Context) error) *MockApplyClientBuilder

WithInitialize sets the Initialize behavior.

func (*MockApplyClientBuilder) WithSuccessfulDryRun

func (b *MockApplyClientBuilder) WithSuccessfulDryRun() *MockApplyClientBuilder

WithSuccessfulDryRun sets DryRunApply to return the input resource.

type MockCompositionClient

type MockCompositionClient struct {
	InitializeFn              func(ctx context.Context) error
	FindMatchingCompositionFn func(ctx context.Context, res *un.Unstructured) (*xpextv1.Composition, error)
	ListCompositionsFn        func(ctx context.Context) ([]*xpextv1.Composition, error)
	GetCompositionFn          func(ctx context.Context, name string) (*xpextv1.Composition, error)
	FindXRsUsingCompositionFn func(ctx context.Context, compositionName string, namespace string) ([]*un.Unstructured, error)
}

MockCompositionClient implements the crossplane.CompositionClient interface.

func (*MockCompositionClient) FindMatchingComposition

func (m *MockCompositionClient) FindMatchingComposition(ctx context.Context, res *un.Unstructured) (*xpextv1.Composition, error)

FindMatchingComposition implements crossplane.CompositionClient.

func (*MockCompositionClient) FindXRsUsingComposition

func (m *MockCompositionClient) FindXRsUsingComposition(ctx context.Context, compositionName string, namespace string) ([]*un.Unstructured, error)

FindXRsUsingComposition implements crossplane.CompositionClient.

func (*MockCompositionClient) GetComposition

func (m *MockCompositionClient) GetComposition(ctx context.Context, name string) (*xpextv1.Composition, error)

GetComposition implements crossplane.CompositionClient.

func (*MockCompositionClient) Initialize

func (m *MockCompositionClient) Initialize(ctx context.Context) error

Initialize implements crossplane.CompositionClient.

func (*MockCompositionClient) ListCompositions

func (m *MockCompositionClient) ListCompositions(ctx context.Context) ([]*xpextv1.Composition, error)

ListCompositions implements crossplane.CompositionClient.

type MockCompositionClientBuilder

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

MockCompositionClientBuilder helps build crossplane.CompositionClient mocks.

func NewMockCompositionClient

func NewMockCompositionClient() *MockCompositionClientBuilder

NewMockCompositionClient creates a new MockCompositionClientBuilder.

func (*MockCompositionClientBuilder) Build

Build returns the built mock.

func (*MockCompositionClientBuilder) WithFailedInitialize

func (b *MockCompositionClientBuilder) WithFailedInitialize(errMsg string) *MockCompositionClientBuilder

WithFailedInitialize mocks a failed call to Initialize.

func (*MockCompositionClientBuilder) WithFindMatchingComposition

WithFindMatchingComposition sets the FindMatchingComposition behavior.

func (*MockCompositionClientBuilder) WithFindXRsError

WithFindXRsError sets FindXRsUsingComposition to return an error.

func (*MockCompositionClientBuilder) WithFindXRsUsingComposition

WithFindXRsUsingComposition sets the FindXRsUsingComposition behavior.

func (*MockCompositionClientBuilder) WithGetComposition

WithGetComposition sets the GetComposition behavior.

func (*MockCompositionClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockCompositionClientBuilder) WithListCompositions

WithListCompositions sets the ListCompositions behavior.

func (*MockCompositionClientBuilder) WithNoMatchingComposition

func (b *MockCompositionClientBuilder) WithNoMatchingComposition() *MockCompositionClientBuilder

WithNoMatchingComposition sets FindMatchingComposition to return "not found".

func (*MockCompositionClientBuilder) WithSuccessfulCompositionFetch

func (b *MockCompositionClientBuilder) WithSuccessfulCompositionFetch(comp *xpextv1.Composition) *MockCompositionClientBuilder

WithSuccessfulCompositionFetch sets up a successful composition fetch.

func (*MockCompositionClientBuilder) WithSuccessfulCompositionFetches

func (b *MockCompositionClientBuilder) WithSuccessfulCompositionFetches(comps []*xpextv1.Composition) *MockCompositionClientBuilder

WithSuccessfulCompositionFetches sets up successful composition fetches for multiple compositions.

func (*MockCompositionClientBuilder) WithSuccessfulCompositionMatch

func (b *MockCompositionClientBuilder) WithSuccessfulCompositionMatch(comp *xpextv1.Composition) *MockCompositionClientBuilder

WithSuccessfulCompositionMatch sets FindMatchingComposition to return a specific composition.

func (*MockCompositionClientBuilder) WithSuccessfulInitialize

func (b *MockCompositionClientBuilder) WithSuccessfulInitialize() *MockCompositionClientBuilder

WithSuccessfulInitialize mocks a successful call to Initialize.

func (*MockCompositionClientBuilder) WithXRsForComposition

func (b *MockCompositionClientBuilder) WithXRsForComposition(compositionName, namespace string, xrs []*un.Unstructured) *MockCompositionClientBuilder

WithXRsForComposition sets FindXRsUsingComposition to return specific XRs for a given composition name and namespace.

type MockDefinitionClient

type MockDefinitionClient struct {
	InitializeFn      func(ctx context.Context) error
	GetXRDsFn         func(ctx context.Context) ([]*un.Unstructured, error)
	GetXRDForClaimFn  func(ctx context.Context, gvk schema.GroupVersionKind) (*un.Unstructured, error)
	GetXRDForXRFn     func(ctx context.Context, gvk schema.GroupVersionKind) (*un.Unstructured, error)
	IsClaimResourceFn func(ctx context.Context, resource *un.Unstructured) bool
}

MockDefinitionClient implements the crossplane.DefinitionClient interface.

func (*MockDefinitionClient) GetXRDForClaim

GetXRDForClaim implements crossplane.DefinitionClient.

func (*MockDefinitionClient) GetXRDForXR

GetXRDForXR implements crossplane.DefinitionClient.

func (*MockDefinitionClient) GetXRDs

func (m *MockDefinitionClient) GetXRDs(ctx context.Context) ([]*un.Unstructured, error)

GetXRDs implements crossplane.DefinitionClient.

func (*MockDefinitionClient) Initialize

func (m *MockDefinitionClient) Initialize(ctx context.Context) error

Initialize implements crossplane.DefinitionClient.

func (*MockDefinitionClient) IsClaimResource

func (m *MockDefinitionClient) IsClaimResource(ctx context.Context, resource *un.Unstructured) bool

IsClaimResource implements crossplane.DefinitionClient.

type MockDefinitionClientBuilder

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

MockDefinitionClientBuilder helps build crossplane.DefinitionClient mocks.

func NewMockDefinitionClient

func NewMockDefinitionClient() *MockDefinitionClientBuilder

NewMockDefinitionClient creates a new MockDefinitionClientBuilder.

func (*MockDefinitionClientBuilder) Build

Build returns the built mock.

func (*MockDefinitionClientBuilder) WithEmptyXRDsFetch

WithEmptyXRDsFetch sets GetXRDs to return an empty set of XRDs.

func (*MockDefinitionClientBuilder) WithFailedInitialize

func (b *MockDefinitionClientBuilder) WithFailedInitialize(errMsg string) *MockDefinitionClientBuilder

WithFailedInitialize mocks a failed call to Initialize.

func (*MockDefinitionClientBuilder) WithFailedXRDsFetch

func (b *MockDefinitionClientBuilder) WithFailedXRDsFetch(errMsg string) *MockDefinitionClientBuilder

WithFailedXRDsFetch sets GetXRDs to return an error.

func (*MockDefinitionClientBuilder) WithGetXRDForClaim

WithGetXRDForClaim sets the GetXRDForClaim behavior.

func (*MockDefinitionClientBuilder) WithGetXRDForXR

WithGetXRDForXR sets the GetXRDForXR behavior.

func (*MockDefinitionClientBuilder) WithGetXRDs

WithGetXRDs sets the GetXRDs behavior.

func (*MockDefinitionClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockDefinitionClientBuilder) WithIsClaimResource

WithIsClaimResource sets the IsClaimResource behavior.

func (*MockDefinitionClientBuilder) WithSuccessfulInitialize

func (b *MockDefinitionClientBuilder) WithSuccessfulInitialize() *MockDefinitionClientBuilder

WithSuccessfulInitialize mocks a successful call to Initialize.

func (*MockDefinitionClientBuilder) WithSuccessfulXRDsFetch

func (b *MockDefinitionClientBuilder) WithSuccessfulXRDsFetch(xrds []*un.Unstructured) *MockDefinitionClientBuilder

WithSuccessfulXRDsFetch sets GetXRDs to return specific XRDs.

func (*MockDefinitionClientBuilder) WithV1XRDForXR

WithV1XRDForXR sets the GetXRDForXR behavior to return a v1 XRD.

func (*MockDefinitionClientBuilder) WithV2XRDForXR

WithV2XRDForXR sets the GetXRDForXR behavior to return a v1 XRD.

func (*MockDefinitionClientBuilder) WithXRDForClaim

func (b *MockDefinitionClientBuilder) WithXRDForClaim(unstructured *un.Unstructured) *MockDefinitionClientBuilder

WithXRDForClaim sets the GetXRDForXR behavior to return the specified XR.

func (*MockDefinitionClientBuilder) WithXRDForXR

WithXRDForXR sets the GetXRDForXR behavior to return the specified XR.

type MockDiffCalculator

type MockDiffCalculator struct {
	CalculateDiffFn                 func(context.Context, *un.Unstructured, *un.Unstructured) (*dt.ResourceDiff, error)
	CalculateDiffsFn                func(context.Context, *cmp.Unstructured, render.Outputs) (map[string]*dt.ResourceDiff, error)
	CalculateRemovedResourceDiffsFn func(context.Context, *un.Unstructured, map[string]bool) (map[string]*dt.ResourceDiff, error)
}

MockDiffCalculator is a mock implementation of DiffCalculator for testing.

func (*MockDiffCalculator) CalculateDiff

func (m *MockDiffCalculator) CalculateDiff(ctx context.Context, composite *un.Unstructured, desired *un.Unstructured) (*dt.ResourceDiff, error)

CalculateDiff implements DiffCalculator.

func (*MockDiffCalculator) CalculateDiffs

func (m *MockDiffCalculator) CalculateDiffs(ctx context.Context, xr *cmp.Unstructured, desired render.Outputs) (map[string]*dt.ResourceDiff, error)

CalculateDiffs implements DiffCalculator.

func (*MockDiffCalculator) CalculateRemovedResourceDiffs

func (m *MockDiffCalculator) CalculateRemovedResourceDiffs(ctx context.Context, xr *un.Unstructured, renderedResources map[string]bool) (map[string]*dt.ResourceDiff, error)

CalculateRemovedResourceDiffs implements DiffCalculator.

type MockDiffProcessor

type MockDiffProcessor struct {
	// Function fields for mocking behavior
	InitializeFn  func(ctx context.Context) error
	PerformDiffFn func(ctx context.Context, stdout io.Writer, resources []*un.Unstructured, compositionProvider types.CompositionProvider) error
}

MockDiffProcessor implements the DiffProcessor interface for testing.

func (*MockDiffProcessor) Initialize

func (m *MockDiffProcessor) Initialize(ctx context.Context) error

Initialize implements the DiffProcessor interface.

func (*MockDiffProcessor) PerformDiff

func (m *MockDiffProcessor) PerformDiff(ctx context.Context, stdout io.Writer, resources []*un.Unstructured, compositionProvider types.CompositionProvider) error

PerformDiff implements the DiffProcessor.PerformDiff method.

type MockDiffRenderer

type MockDiffRenderer struct {
	RenderDiffsFn func(io.Writer, map[string]*dt.ResourceDiff) error
}

MockDiffRenderer provides a mock implementation for DiffRenderer.

func (*MockDiffRenderer) RenderDiffs

func (m *MockDiffRenderer) RenderDiffs(w io.Writer, diffs map[string]*dt.ResourceDiff) error

RenderDiffs implements RenderDiffs from the DiffRenderer interface.

type MockDynamicClient

type MockDynamicClient struct {
	ResourceFn func(gvr schema.GroupVersionResource) dynamic.NamespaceableResourceInterface
}

MockDynamicClient mocks the dynamic.Interface.

func (*MockDynamicClient) Resource

Resource implements the dynamic.Interface method.

type MockEnvironmentClient

type MockEnvironmentClient struct {
	InitializeFn            func(ctx context.Context) error
	GetEnvironmentConfigsFn func(ctx context.Context) ([]*un.Unstructured, error)
	GetEnvironmentConfigFn  func(ctx context.Context, name string) (*un.Unstructured, error)
}

MockEnvironmentClient implements the crossplane.EnvironmentClient interface.

func (*MockEnvironmentClient) GetEnvironmentConfig

func (m *MockEnvironmentClient) GetEnvironmentConfig(ctx context.Context, name string) (*un.Unstructured, error)

GetEnvironmentConfig implements crossplane.EnvironmentClient.

func (*MockEnvironmentClient) GetEnvironmentConfigs

func (m *MockEnvironmentClient) GetEnvironmentConfigs(ctx context.Context) ([]*un.Unstructured, error)

GetEnvironmentConfigs implements crossplane.EnvironmentClient.

func (*MockEnvironmentClient) Initialize

func (m *MockEnvironmentClient) Initialize(ctx context.Context) error

Initialize implements crossplane.EnvironmentClient.

type MockEnvironmentClientBuilder

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

MockEnvironmentClientBuilder helps build crossplane.EnvironmentClient mocks.

func NewMockEnvironmentClient

func NewMockEnvironmentClient() *MockEnvironmentClientBuilder

NewMockEnvironmentClient creates a new MockEnvironmentClientBuilder.

func (*MockEnvironmentClientBuilder) Build

Build returns the built mock.

func (*MockEnvironmentClientBuilder) WithFailedInitialize

func (b *MockEnvironmentClientBuilder) WithFailedInitialize(errMsg string) *MockEnvironmentClientBuilder

WithFailedInitialize mocks a failed call to Initialize.

func (*MockEnvironmentClientBuilder) WithGetEnvironmentConfig

WithGetEnvironmentConfig sets the GetEnvironmentConfig behavior.

func (*MockEnvironmentClientBuilder) WithGetEnvironmentConfigs

func (b *MockEnvironmentClientBuilder) WithGetEnvironmentConfigs(fn func(context.Context) ([]*un.Unstructured, error)) *MockEnvironmentClientBuilder

WithGetEnvironmentConfigs sets the GetEnvironmentConfigs behavior.

func (*MockEnvironmentClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockEnvironmentClientBuilder) WithSuccessfulEnvironmentConfigsFetch

func (b *MockEnvironmentClientBuilder) WithSuccessfulEnvironmentConfigsFetch(configs []*un.Unstructured) *MockEnvironmentClientBuilder

WithSuccessfulEnvironmentConfigsFetch sets GetEnvironmentConfigs to return specific configs.

func (*MockEnvironmentClientBuilder) WithSuccessfulInitialize

func (b *MockEnvironmentClientBuilder) WithSuccessfulInitialize() *MockEnvironmentClientBuilder

WithSuccessfulInitialize mocks a successful call to Initialize.

type MockFunctionClient

type MockFunctionClient struct {
	InitializeFn               func(ctx context.Context) error
	GetFunctionsFromPipelineFn func(comp *xpextv1.Composition) ([]pkgv1.Function, error)
	ListFunctionsFn            func(ctx context.Context) ([]pkgv1.Function, error)
}

MockFunctionClient implements the crossplane.FunctionClient interface.

func (*MockFunctionClient) GetFunctionsFromPipeline

func (m *MockFunctionClient) GetFunctionsFromPipeline(comp *xpextv1.Composition) ([]pkgv1.Function, error)

GetFunctionsFromPipeline implements crossplane.FunctionClient.

func (*MockFunctionClient) Initialize

func (m *MockFunctionClient) Initialize(ctx context.Context) error

Initialize implements crossplane.FunctionClient.

func (*MockFunctionClient) ListFunctions

func (m *MockFunctionClient) ListFunctions(ctx context.Context) ([]pkgv1.Function, error)

ListFunctions implements crossplane.FunctionClient.

type MockFunctionClientBuilder

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

MockFunctionClientBuilder helps build crossplane.FunctionClient mocks.

func NewMockFunctionClient

func NewMockFunctionClient() *MockFunctionClientBuilder

NewMockFunctionClient creates a new MockFunctionClientBuilder.

func (*MockFunctionClientBuilder) Build

Build returns the built mock.

func (*MockFunctionClientBuilder) WithFailedFunctionsFetch

func (b *MockFunctionClientBuilder) WithFailedFunctionsFetch(errMsg string) *MockFunctionClientBuilder

WithFailedFunctionsFetch sets GetFunctionsFromPipeline to return an error.

func (*MockFunctionClientBuilder) WithFailedInitialize

func (b *MockFunctionClientBuilder) WithFailedInitialize(errMsg string) *MockFunctionClientBuilder

WithFailedInitialize mocks a failed call to Initialize.

func (*MockFunctionClientBuilder) WithGetFunctionsFromPipeline

func (b *MockFunctionClientBuilder) WithGetFunctionsFromPipeline(fn func(*xpextv1.Composition) ([]pkgv1.Function, error)) *MockFunctionClientBuilder

WithGetFunctionsFromPipeline sets the GetFunctionsFromPipeline behavior.

func (*MockFunctionClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockFunctionClientBuilder) WithListFunctions

WithListFunctions sets the ListFunctions behavior.

func (*MockFunctionClientBuilder) WithSuccessfulFunctionsFetch

func (b *MockFunctionClientBuilder) WithSuccessfulFunctionsFetch(functions []pkgv1.Function) *MockFunctionClientBuilder

WithSuccessfulFunctionsFetch sets GetFunctionsFromPipeline to return specific functions.

func (*MockFunctionClientBuilder) WithSuccessfulInitialize

func (b *MockFunctionClientBuilder) WithSuccessfulInitialize() *MockFunctionClientBuilder

WithSuccessfulInitialize mocks a successful call to Initialize.

type MockNamespaceableResourceInterface

type MockNamespaceableResourceInterface struct {
	NamespaceFn func(namespace string) dynamic.ResourceInterface
	GetFn       func(ctx context.Context, name string, options metav1.GetOptions, subresources ...string) (*un.Unstructured, error)
	ListFn      func(ctx context.Context, opts metav1.ListOptions) (*un.UnstructuredList, error)
	CreateFn    func(ctx context.Context, obj *un.Unstructured, options metav1.CreateOptions, subresources ...string) (*un.Unstructured, error)
	UpdateFn    func(ctx context.Context, obj *un.Unstructured, options metav1.UpdateOptions, subresources ...string) (*un.Unstructured, error)
	DeleteFn    func(ctx context.Context, name string, options metav1.DeleteOptions, subresources ...string) error
	PatchFn     func(ctx context.Context, name string, pt k8stypes.PatchType, data []byte, options metav1.PatchOptions, subresources ...string) (*un.Unstructured, error)
}

MockNamespaceableResourceInterface implements dynamic.NamespaceableResourceInterface.

func (*MockNamespaceableResourceInterface) Apply

Apply implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) ApplyStatus

ApplyStatus implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Create

Create implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Delete

func (m *MockNamespaceableResourceInterface) Delete(ctx context.Context, name string, options metav1.DeleteOptions, subresources ...string) error

Delete implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) DeleteCollection

DeleteCollection implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Get

func (m *MockNamespaceableResourceInterface) Get(ctx context.Context, name string, options metav1.GetOptions, subresources ...string) (*un.Unstructured, error)

Get implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) List

List implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Namespace

Namespace implements dynamic.NamespaceableResourceInterface.

func (*MockNamespaceableResourceInterface) Patch

func (m *MockNamespaceableResourceInterface) Patch(ctx context.Context, name string, pt k8stypes.PatchType, data []byte, options metav1.PatchOptions, subresources ...string) (*un.Unstructured, error)

Patch implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Update

Update implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) UpdateStatus

UpdateStatus implements dynamic.ResourceInterface.

func (*MockNamespaceableResourceInterface) Watch

Watch implements dynamic.ResourceInterface.

type MockResourceClient

type MockResourceClient struct {
	InitializeFn              func(ctx context.Context) error
	GetResourceFn             func(ctx context.Context, gvk schema.GroupVersionKind, namespace, name string) (*un.Unstructured, error)
	ListResourcesFn           func(ctx context.Context, gvk schema.GroupVersionKind, namespace string) ([]*un.Unstructured, error)
	GetResourcesByLabelFn     func(ctx context.Context, gvk schema.GroupVersionKind, namespace string, sel metav1.LabelSelector) ([]*un.Unstructured, error)
	GetAllResourcesByLabelsFn func(ctx context.Context, gvks []schema.GroupVersionKind, selectors []metav1.LabelSelector) ([]*un.Unstructured, error)
	GetGVKsForGroupKindFn     func(ctx context.Context, group, kind string) ([]schema.GroupVersionKind, error)
	IsNamespacedResourceFn    func(ctx context.Context, gvk schema.GroupVersionKind) (bool, error)
}

MockResourceClient implements the kubernetes.ResourceClient interface.

func (*MockResourceClient) GetAllResourcesByLabels

func (m *MockResourceClient) GetAllResourcesByLabels(ctx context.Context, gvks []schema.GroupVersionKind, selectors []metav1.LabelSelector) ([]*un.Unstructured, error)

GetAllResourcesByLabels implements kubernetes.ResourceClient.

func (*MockResourceClient) GetGVKsForGroupKind

func (m *MockResourceClient) GetGVKsForGroupKind(ctx context.Context, group, kind string) ([]schema.GroupVersionKind, error)

GetGVKsForGroupKind implements kubernetes.ResourceClient.

func (*MockResourceClient) GetResource

func (m *MockResourceClient) GetResource(ctx context.Context, gvk schema.GroupVersionKind, namespace, name string) (*un.Unstructured, error)

GetResource implements kubernetes.ResourceClient.

func (*MockResourceClient) GetResourcesByLabel

func (m *MockResourceClient) GetResourcesByLabel(ctx context.Context, gvk schema.GroupVersionKind, namespace string, sel metav1.LabelSelector) ([]*un.Unstructured, error)

GetResourcesByLabel implements kubernetes.ResourceClient.

func (*MockResourceClient) Initialize

func (m *MockResourceClient) Initialize(ctx context.Context) error

Initialize implements kubernetes.ResourceClient.

func (*MockResourceClient) IsNamespacedResource

func (m *MockResourceClient) IsNamespacedResource(ctx context.Context, gvk schema.GroupVersionKind) (bool, error)

IsNamespacedResource implements kubernetes.ResourceClient.

func (*MockResourceClient) ListResources

func (m *MockResourceClient) ListResources(ctx context.Context, gvk schema.GroupVersionKind, namespace string) ([]*un.Unstructured, error)

ListResources implements kubernetes.ResourceClient.

type MockResourceClientBuilder

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

MockResourceClientBuilder helps build kubernetes.ResourceClient mocks.

func NewMockResourceClient

func NewMockResourceClient() *MockResourceClientBuilder

NewMockResourceClient creates a new MockResourceClientBuilder.

func (*MockResourceClientBuilder) Build

Build returns the built mock.

func (*MockResourceClientBuilder) WithClusterScopedResource

func (b *MockResourceClientBuilder) WithClusterScopedResource(gvks ...schema.GroupVersionKind) *MockResourceClientBuilder

WithClusterScopedResource sets specific GVKs to be cluster-scoped.

func (*MockResourceClientBuilder) WithEmptyListResources

func (b *MockResourceClientBuilder) WithEmptyListResources() *MockResourceClientBuilder

WithEmptyListResources mimics an empty but successful response.

func (*MockResourceClientBuilder) WithFoundGVKs

WithFoundGVKs sets the GetGVKsForGroupKind behavior.

func (*MockResourceClientBuilder) WithGetAllResourcesByLabels

WithGetAllResourcesByLabels sets the GetAllResourcesByLabels behavior.

func (*MockResourceClientBuilder) WithGetResource

WithGetResource sets the GetResource behavior.

func (*MockResourceClientBuilder) WithGetResourcesByLabel

WithGetResourcesByLabel sets the GetResourcesByLabel behavior.

func (*MockResourceClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockResourceClientBuilder) WithIsNamespacedResource

WithIsNamespacedResource sets the IsNamespacedResource behavior.

func (*MockResourceClientBuilder) WithListResources

WithListResources sets the ListResources behavior.

func (*MockResourceClientBuilder) WithListResourcesFailure

func (b *MockResourceClientBuilder) WithListResourcesFailure(errorStr string) *MockResourceClientBuilder

WithListResourcesFailure mimics a failed response.

func (*MockResourceClientBuilder) WithNamespacedResource

func (b *MockResourceClientBuilder) WithNamespacedResource(gvks ...schema.GroupVersionKind) *MockResourceClientBuilder

WithNamespacedResource sets specific GVKs to be namespaced.

func (*MockResourceClientBuilder) WithResourceNotFound

func (b *MockResourceClientBuilder) WithResourceNotFound() *MockResourceClientBuilder

WithResourceNotFound sets GetResource to always return "not found".

func (*MockResourceClientBuilder) WithResourcesExist

func (b *MockResourceClientBuilder) WithResourcesExist(resources ...*un.Unstructured) *MockResourceClientBuilder

WithResourcesExist sets up GetResource to return resources from a map.

func (*MockResourceClientBuilder) WithResourcesFoundByLabel

func (b *MockResourceClientBuilder) WithResourcesFoundByLabel(resources []*un.Unstructured, label, value string) *MockResourceClientBuilder

WithResourcesFoundByLabel sets GetResourcesByLabel to return resources for a specific label.

func (*MockResourceClientBuilder) WithSuccessfulInitialize

func (b *MockResourceClientBuilder) WithSuccessfulInitialize() *MockResourceClientBuilder

WithSuccessfulInitialize sets a successful Initialize implementation.

func (*MockResourceClientBuilder) WithoutFoundGVKs

WithoutFoundGVKs sets the GetGVKsForGroupKind behavior.

type MockResourceInterface

type MockResourceInterface struct {
	GetFn    func(ctx context.Context, name string, options metav1.GetOptions, subresources ...string) (*un.Unstructured, error)
	ListFn   func(ctx context.Context, opts metav1.ListOptions) (*un.UnstructuredList, error)
	CreateFn func(ctx context.Context, obj *un.Unstructured, options metav1.CreateOptions, subresources ...string) (*un.Unstructured, error)
	UpdateFn func(ctx context.Context, obj *un.Unstructured, options metav1.UpdateOptions, subresources ...string) (*un.Unstructured, error)
	DeleteFn func(ctx context.Context, name string, options metav1.DeleteOptions, subresources ...string) error
	PatchFn  func(ctx context.Context, name string, pt k8stypes.PatchType, data []byte, options metav1.PatchOptions, subresources ...string) (*un.Unstructured, error)
}

MockResourceInterface mocks dynamic.ResourceInterface for namespaced resources.

func (*MockResourceInterface) Apply

Apply implements dynamic.ResourceInterface.

func (*MockResourceInterface) ApplyStatus

ApplyStatus implements dynamic.ResourceInterface.

func (*MockResourceInterface) Create

func (m *MockResourceInterface) Create(ctx context.Context, obj *un.Unstructured, options metav1.CreateOptions, subresources ...string) (*un.Unstructured, error)

Create implements dynamic.ResourceInterface.

func (*MockResourceInterface) Delete

func (m *MockResourceInterface) Delete(ctx context.Context, name string, options metav1.DeleteOptions, subresources ...string) error

Delete implements dynamic.ResourceInterface.

func (*MockResourceInterface) DeleteCollection

DeleteCollection implements dynamic.ResourceInterface.

func (*MockResourceInterface) Get

func (m *MockResourceInterface) Get(ctx context.Context, name string, options metav1.GetOptions, subresources ...string) (*un.Unstructured, error)

Get implements dynamic.ResourceInterface.

func (*MockResourceInterface) List

List implements dynamic.ResourceInterface.

func (*MockResourceInterface) Patch

func (m *MockResourceInterface) Patch(ctx context.Context, name string, pt k8stypes.PatchType, data []byte, options metav1.PatchOptions, subresources ...string) (*un.Unstructured, error)

Patch implements dynamic.ResourceInterface.

func (*MockResourceInterface) Update

func (m *MockResourceInterface) Update(ctx context.Context, obj *un.Unstructured, options metav1.UpdateOptions, subresources ...string) (*un.Unstructured, error)

Update implements dynamic.ResourceInterface.

func (*MockResourceInterface) UpdateStatus

UpdateStatus implements dynamic.ResourceInterface.

func (*MockResourceInterface) Watch

Watch implements dynamic.ResourceInterface.

type MockResourceTreeClient

type MockResourceTreeClient struct {
	InitializeFn      func(ctx context.Context) error
	GetResourceTreeFn func(ctx context.Context, root *un.Unstructured) (*resource.Resource, error)
}

MockResourceTreeClient implements the crossplane.ResourceTreeClient interface.

func (*MockResourceTreeClient) GetResourceTree

func (m *MockResourceTreeClient) GetResourceTree(ctx context.Context, root *un.Unstructured) (*resource.Resource, error)

GetResourceTree implements crossplane.ResourceTreeClient.

func (*MockResourceTreeClient) Initialize

func (m *MockResourceTreeClient) Initialize(ctx context.Context) error

Initialize implements crossplane.ResourceTreeClient.

type MockResourceTreeClientBuilder

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

MockResourceTreeClientBuilder helps build crossplane.ResourceTreeClient mocks.

func NewMockResourceTreeClient

func NewMockResourceTreeClient() *MockResourceTreeClientBuilder

NewMockResourceTreeClient creates a new MockResourceTreeClientBuilder.

func (*MockResourceTreeClientBuilder) Build

Build returns the built mock.

func (*MockResourceTreeClientBuilder) WithEmptyResourceTree

WithEmptyResourceTree sets GetResourceTree to return just the root with no children.

func (*MockResourceTreeClientBuilder) WithFailedInitialize

func (b *MockResourceTreeClientBuilder) WithFailedInitialize(errMsg string) *MockResourceTreeClientBuilder

WithFailedInitialize mocks a failed call to Initialize.

func (*MockResourceTreeClientBuilder) WithFailedResourceTreeFetch

func (b *MockResourceTreeClientBuilder) WithFailedResourceTreeFetch(errMsg string) *MockResourceTreeClientBuilder

WithFailedResourceTreeFetch sets GetResourceTree to return an error.

func (*MockResourceTreeClientBuilder) WithGetResourceTree

WithGetResourceTree sets the GetResourceTree behavior.

func (*MockResourceTreeClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockResourceTreeClientBuilder) WithResourceTreeFromXRAndComposed

func (b *MockResourceTreeClientBuilder) WithResourceTreeFromXRAndComposed(xr *un.Unstructured, composed []*un.Unstructured) *MockResourceTreeClientBuilder

WithResourceTreeFromXRAndComposed creates a basic resource tree from an XR and composed resources.

func (*MockResourceTreeClientBuilder) WithSuccessfulInitialize

func (b *MockResourceTreeClientBuilder) WithSuccessfulInitialize() *MockResourceTreeClientBuilder

WithSuccessfulInitialize mocks a successful call to Initialize.

func (*MockResourceTreeClientBuilder) WithSuccessfulResourceTreeFetch

func (b *MockResourceTreeClientBuilder) WithSuccessfulResourceTreeFetch(resourceTree *resource.Resource) *MockResourceTreeClientBuilder

WithSuccessfulResourceTreeFetch sets GetResourceTree to return a specific tree.

type MockSchemaClient

type MockSchemaClient struct {
	InitializeFn       func(ctx context.Context) error
	GetCRDFn           func(ctx context.Context, gvk schema.GroupVersionKind) (*extv1.CustomResourceDefinition, error)
	GetCRDByNameFn     func(name string) (*extv1.CustomResourceDefinition, error)
	IsCRDRequiredFn    func(ctx context.Context, gvk schema.GroupVersionKind) bool
	ValidateResourceFn func(ctx context.Context, resource *un.Unstructured) error
	LoadCRDsFromXRDsFn func(ctx context.Context, xrds []*un.Unstructured) error
	GetAllCRDsFn       func() []*extv1.CustomResourceDefinition
}

MockSchemaClient implements the kubernetes.SchemaClient interface.

func (*MockSchemaClient) GetAllCRDs

func (m *MockSchemaClient) GetAllCRDs() []*extv1.CustomResourceDefinition

GetAllCRDs implements kubernetes.SchemaClient.

func (*MockSchemaClient) GetCRD

GetCRD implements kubernetes.SchemaClient.

func (*MockSchemaClient) GetCRDByName

func (m *MockSchemaClient) GetCRDByName(name string) (*extv1.CustomResourceDefinition, error)

GetCRDByName implements kubernetes.SchemaClient.

func (*MockSchemaClient) Initialize

func (m *MockSchemaClient) Initialize(ctx context.Context) error

Initialize implements kubernetes.SchemaClient.

func (*MockSchemaClient) IsCRDRequired

func (m *MockSchemaClient) IsCRDRequired(ctx context.Context, gvk schema.GroupVersionKind) bool

IsCRDRequired implements kubernetes.SchemaClient.

func (*MockSchemaClient) LoadCRDsFromXRDs

func (m *MockSchemaClient) LoadCRDsFromXRDs(ctx context.Context, xrds []*un.Unstructured) error

LoadCRDsFromXRDs implements kubernetes.SchemaClient.

func (*MockSchemaClient) ValidateResource

func (m *MockSchemaClient) ValidateResource(ctx context.Context, resource *un.Unstructured) error

ValidateResource implements kubernetes.SchemaClient.

type MockSchemaClientBuilder

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

MockSchemaClientBuilder helps build kubernetes.SchemaClient mocks.

func NewMockSchemaClient

func NewMockSchemaClient() *MockSchemaClientBuilder

NewMockSchemaClient creates a new MockSchemaClientBuilder.

func (*MockSchemaClientBuilder) Build

Build returns the built mock.

func (*MockSchemaClientBuilder) WithAllResourcesRequiringCRDs

func (b *MockSchemaClientBuilder) WithAllResourcesRequiringCRDs() *MockSchemaClientBuilder

WithAllResourcesRequiringCRDs sets all resources to require CRDs.

func (*MockSchemaClientBuilder) WithCRDNotFound

func (b *MockSchemaClientBuilder) WithCRDNotFound() *MockSchemaClientBuilder

WithCRDNotFound sets GetCRD to return a not found error.

func (*MockSchemaClientBuilder) WithCachingBehavior

func (b *MockSchemaClientBuilder) WithCachingBehavior() *MockSchemaClientBuilder

WithCachingBehavior creates a mock that simulates caching CRDs when GetCRD or LoadCRDsFromXRDs is called.

func (*MockSchemaClientBuilder) WithFoundCRD

WithFoundCRD sets GetCRD to return a specific CRD when the group and kind match.

func (*MockSchemaClientBuilder) WithFoundCRDs

WithFoundCRDs sets GetCRD to return specific CRDs when the group and kind match, with a fallback error.

func (*MockSchemaClientBuilder) WithGetAllCRDs

WithGetAllCRDs sets the GetAllCRDs behavior.

func (*MockSchemaClientBuilder) WithGetCRD

WithGetCRD sets the GetCRD behavior.

func (*MockSchemaClientBuilder) WithGetCRDByName

WithGetCRDByName sets the GetCRDByName behavior.

func (*MockSchemaClientBuilder) WithInitialize

WithInitialize sets the Initialize behavior.

func (*MockSchemaClientBuilder) WithIsCRDRequired

WithIsCRDRequired sets the IsCRDRequired behavior.

func (*MockSchemaClientBuilder) WithNoResourcesRequiringCRDs

func (b *MockSchemaClientBuilder) WithNoResourcesRequiringCRDs() *MockSchemaClientBuilder

WithNoResourcesRequiringCRDs sets all resources to not require CRDs.

func (*MockSchemaClientBuilder) WithResourcesRequiringCRDs

func (b *MockSchemaClientBuilder) WithResourcesRequiringCRDs(crdsRequiredGVKs ...schema.GroupVersionKind) *MockSchemaClientBuilder

WithResourcesRequiringCRDs sets only the specified GVKs to require CRDs.

func (*MockSchemaClientBuilder) WithSuccessfulCRDByNameFetch

func (b *MockSchemaClientBuilder) WithSuccessfulCRDByNameFetch(name string, crd *extv1.CustomResourceDefinition) *MockSchemaClientBuilder

WithSuccessfulCRDByNameFetch sets GetCRDByName to return a specific CRD for a given name.

func (*MockSchemaClientBuilder) WithSuccessfulCRDFetch

WithSuccessfulCRDFetch sets GetCRD to return a specific CRD.

func (*MockSchemaClientBuilder) WithValidateResource

WithValidateResource sets the ValidateResource behavior.

type MockSchemaValidator

type MockSchemaValidator struct {
	ValidateResourcesFn        func(ctx context.Context, xr *un.Unstructured, composed []cpd.Unstructured) error
	ValidateScopeConstraintsFn func(ctx context.Context, resource *un.Unstructured, expectedNamespace string, isClaimRoot bool) error
}

MockSchemaValidator Mock schema validator.

func (*MockSchemaValidator) EnsureComposedResourceCRDs

func (m *MockSchemaValidator) EnsureComposedResourceCRDs(_ context.Context, _ []*un.Unstructured) error

EnsureComposedResourceCRDs Implement other required methods of the SchemaValidator interface.

func (*MockSchemaValidator) ValidateResources

func (m *MockSchemaValidator) ValidateResources(ctx context.Context, xr *un.Unstructured, composed []cpd.Unstructured) error

ValidateResources validates a set of resources against schemas from the cluster.

func (*MockSchemaValidator) ValidateScopeConstraints

func (m *MockSchemaValidator) ValidateScopeConstraints(ctx context.Context, resource *un.Unstructured, expectedNamespace string, isClaimRoot bool) error

ValidateScopeConstraints validates that a resource has the appropriate namespace for its scope.

type MockTypeConverter

type MockTypeConverter struct {
	GVKToGVRFn              func(ctx context.Context, gvk schema.GroupVersionKind) (schema.GroupVersionResource, error)
	GetResourceNameForGVKFn func(ctx context.Context, gvk schema.GroupVersionKind) (string, error)
}

MockTypeConverter implements the kubernetes.TypeConverter interface.

func (*MockTypeConverter) GVKToGVR

GVKToGVR implements kubernetes.TypeConverter.

func (*MockTypeConverter) GetResourceNameForGVK

func (m *MockTypeConverter) GetResourceNameForGVK(ctx context.Context, gvk schema.GroupVersionKind) (string, error)

GetResourceNameForGVK implements kubernetes.TypeConverter.

type MockTypeConverterBuilder

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

MockTypeConverterBuilder helps build kubernetes.TypeConverter mocks.

func NewMockTypeConverter

func NewMockTypeConverter() *MockTypeConverterBuilder

NewMockTypeConverter creates a new MockTypeConverterBuilder.

func (*MockTypeConverterBuilder) Build

Build returns the built mock.

func (*MockTypeConverterBuilder) WithDefaultGVKToGVR

func (b *MockTypeConverterBuilder) WithDefaultGVKToGVR() *MockTypeConverterBuilder

WithDefaultGVKToGVR sets a default implementation for GVKToGVR.

func (*MockTypeConverterBuilder) WithDefaultGetResourceNameForGVK

func (b *MockTypeConverterBuilder) WithDefaultGetResourceNameForGVK() *MockTypeConverterBuilder

WithDefaultGetResourceNameForGVK sets a default implementation for GetResourceNameForGVK.

func (*MockTypeConverterBuilder) WithGVKToGVR

WithGVKToGVR sets the GVKToGVR behavior.

func (*MockTypeConverterBuilder) WithGetResourceNameForGVK

WithGetResourceNameForGVK sets the GetResourceNameForGVK behavior.

func (*MockTypeConverterBuilder) WithResourceNameForGVK

func (b *MockTypeConverterBuilder) WithResourceNameForGVK(gvk schema.GroupVersionKind, resourceName string) *MockTypeConverterBuilder

WithResourceNameForGVK sets GetResourceNameForGVK to return a specific resource name for a given GVK.

func (*MockTypeConverterBuilder) WithResourceNameForGVKs

func (b *MockTypeConverterBuilder) WithResourceNameForGVKs(gvkMappings map[schema.GroupVersionKind]string) *MockTypeConverterBuilder

WithResourceNameForGVKs sets GetResourceNameForGVK to return specific resource names for given GVKs, with a fallback error.

type ResourceBuilder

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

ResourceBuilder helps construct unstructured resources for testing.

func NewResource

func NewResource(apiVersion, kind, name string) *ResourceBuilder

NewResource creates a new ResourceBuilder.

func (*ResourceBuilder) Build

func (b *ResourceBuilder) Build() *un.Unstructured

Build returns the built unstructured resource.

func (*ResourceBuilder) BuildUComposed

func (b *ResourceBuilder) BuildUComposed() *cpd.Unstructured

BuildUComposed returns the built unstructured resource as a *cpd.Unstructured.

func (*ResourceBuilder) BuildUComposite

func (b *ResourceBuilder) BuildUComposite() *cmp.Unstructured

BuildUComposite returns the built unstructured resource as a *cmp.Unstructured.

func (*ResourceBuilder) InNamespace

func (b *ResourceBuilder) InNamespace(namespace string) *ResourceBuilder

InNamespace sets the namespace for the resource.

func (*ResourceBuilder) WithAnnotations

func (b *ResourceBuilder) WithAnnotations(annotations map[string]string) *ResourceBuilder

WithAnnotations adds annotations to the resource.

func (*ResourceBuilder) WithCompositeOwner

func (b *ResourceBuilder) WithCompositeOwner(owner string) *ResourceBuilder

WithCompositeOwner sets up the resource as a cpd resource with the given composite owner.

func (*ResourceBuilder) WithCompositionResourceName

func (b *ResourceBuilder) WithCompositionResourceName(name string) *ResourceBuilder

WithCompositionResourceName sets the composition resource name annotation.

func (*ResourceBuilder) WithGenerateName

func (b *ResourceBuilder) WithGenerateName(generateName string) *ResourceBuilder

WithGenerateName sets the namespace for the resource.

func (*ResourceBuilder) WithLabels

func (b *ResourceBuilder) WithLabels(labels map[string]string) *ResourceBuilder

WithLabels adds labels to the resource.

func (*ResourceBuilder) WithNamespace

func (b *ResourceBuilder) WithNamespace(namespace string) *ResourceBuilder

WithNamespace sets the namespace for the resource.

func (*ResourceBuilder) WithOwnerReference

func (b *ResourceBuilder) WithOwnerReference(kind, name, apiVersion, uid string) *ResourceBuilder

WithOwnerReference appends an owner ref to a resource.

func (*ResourceBuilder) WithSpec

func (b *ResourceBuilder) WithSpec(spec map[string]interface{}) *ResourceBuilder

WithSpec sets the spec field of the resource.

func (*ResourceBuilder) WithSpecField

func (b *ResourceBuilder) WithSpecField(name string, value interface{}) *ResourceBuilder

WithSpecField sets a specific field in the spec.

func (*ResourceBuilder) WithStatus

func (b *ResourceBuilder) WithStatus(status map[string]interface{}) *ResourceBuilder

WithStatus sets the status field of the resource.

func (*ResourceBuilder) WithStatusField

func (b *ResourceBuilder) WithStatusField(name string, value interface{}) *ResourceBuilder

WithStatusField sets a specific field in the status.

type XRDBuilder

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

XRDBuilder helps construct XRD resources for testing.

func NewXRD

func NewXRD(name, group, kind string) *XRDBuilder

NewXRD creates a new XRDBuilder.

func (*XRDBuilder) Build

Build returns the built XRD.

func (*XRDBuilder) BuildAsUnstructured

func (b *XRDBuilder) BuildAsUnstructured() *un.Unstructured

BuildAsUnstructured returns the built XRD as an unstructured object.

func (*XRDBuilder) WithClaimNames

func (b *XRDBuilder) WithClaimNames(kind, plural string) *XRDBuilder

WithClaimNames sets the claim names for the XRD.

func (*XRDBuilder) WithPlural

func (b *XRDBuilder) WithPlural(plural string) *XRDBuilder

WithPlural sets the plural name for the XRD.

func (*XRDBuilder) WithRawSchema

func (b *XRDBuilder) WithRawSchema(rawJSON []byte) *XRDBuilder

WithRawSchema adds a raw JSON schema to the first version.

func (*XRDBuilder) WithSchema

func (b *XRDBuilder) WithSchema(schema *extv1.JSONSchemaProps) *XRDBuilder

WithSchema adds an OpenAPI v3 schema to the first version.

func (*XRDBuilder) WithSingular

func (b *XRDBuilder) WithSingular(singular string) *XRDBuilder

WithSingular sets the singular name for the XRD.

func (*XRDBuilder) WithVersion

func (b *XRDBuilder) WithVersion(name string, served, referenceable bool) *XRDBuilder

WithVersion adds a version to the XRD.

Jump to

Keyboard shortcuts

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