test

package
v0.10.1 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2019 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Overview

Copyright 2018 the Heptio Ark contributors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2018 the Heptio Ark contributors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2018 the Heptio Ark contributors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AssertDeepEqual added in v0.9.0

func AssertDeepEqual(t *testing.T, expected, actual interface{}) bool

AssertDeepEqual asserts the semantic equality of objects. This function exists in order to make sure time.Time and metav1.Time objects can be compared correctly. See https://github.com/stretchr/testify/issues/502.

func AssertErrorMatches added in v0.10.0

func AssertErrorMatches(t *testing.T, expected string, actual error) bool

AssertErrorMatches asserts that if expected is the empty string, actual is nil, otherwise, that actual's error string matches expected.

func CompareActions added in v0.8.0

func CompareActions(t *testing.T, expected, actual []core.Action)

CompareActions checks slices of actual and expected Actions for equality (ignoring order). It checks that the lengths of the slices are the same, that each actual Action has a corresponding expected Action, and that each expected Action has a corresponding actual Action.

func GetAsMap added in v0.9.0

func GetAsMap(j string) (map[string]interface{}, error)

func NewLogger added in v0.5.0

func NewLogger() logrus.FieldLogger

func TimesAreEqual added in v0.9.0

func TimesAreEqual(t1, t2 time.Time) bool

TimesAreEqual compares two times for equality. This function is used by equality.Semantic.DeepEqual to compare two time objects without having to call a method.

func UnstructuredOrDie added in v0.9.0

func UnstructuredOrDie(data string) *unstructured.Unstructured

func ValidatePatch added in v0.9.0

func ValidatePatch(t *testing.T, action core.Action, expected interface{}, decodeFunc func(*json.Decoder) (interface{}, error))

ValidatePatch tests the validity of an action. It checks that the action is a PatchAction, that the patch decodes from JSON with the provided decode func and has no extraneous fields, and that the decoded patch matches the expected.

Types

type FakeBlockStore added in v0.10.0

type FakeBlockStore struct {
	// SnapshotID->VolumeID
	SnapshotsTaken sets.String

	// VolumeID -> (SnapshotID, Type, Iops)
	SnapshottableVolumes map[string]api.VolumeBackupInfo

	// VolumeBackupInfo -> VolumeID
	RestorableVolumes map[api.VolumeBackupInfo]string

	VolumeID    string
	VolumeIDSet string

	Error error
}

func (*FakeBlockStore) CreateSnapshot added in v0.10.0

func (bs *FakeBlockStore) CreateSnapshot(volumeID, volumeAZ string, tags map[string]string) (string, error)

func (*FakeBlockStore) CreateVolumeFromSnapshot added in v0.10.0

func (bs *FakeBlockStore) CreateVolumeFromSnapshot(snapshotID, volumeType, volumeAZ string, iops *int64) (string, error)

func (*FakeBlockStore) DeleteSnapshot added in v0.10.0

func (bs *FakeBlockStore) DeleteSnapshot(snapshotID string) error

func (*FakeBlockStore) GetVolumeID added in v0.10.0

func (bs *FakeBlockStore) GetVolumeID(pv runtime.Unstructured) (string, error)

func (*FakeBlockStore) GetVolumeInfo added in v0.10.0

func (bs *FakeBlockStore) GetVolumeInfo(volumeID, volumeAZ string) (string, *int64, error)

func (*FakeBlockStore) Init added in v0.10.0

func (bs *FakeBlockStore) Init(config map[string]string) error

func (*FakeBlockStore) SetVolumeID added in v0.10.0

func (bs *FakeBlockStore) SetVolumeID(pv runtime.Unstructured, volumeID string) (runtime.Unstructured, error)

type FakeDiscoveryHelper added in v0.4.0

type FakeDiscoveryHelper struct {
	ResourceList       []*metav1.APIResourceList
	Mapper             meta.RESTMapper
	AutoReturnResource bool
	APIGroupsList      []metav1.APIGroup
}

func NewFakeDiscoveryHelper added in v0.5.0

func NewFakeDiscoveryHelper(autoReturnResource bool, resources map[schema.GroupVersionResource]schema.GroupVersionResource) *FakeDiscoveryHelper

func (*FakeDiscoveryHelper) APIGroups added in v0.9.1

func (dh *FakeDiscoveryHelper) APIGroups() []metav1.APIGroup

func (*FakeDiscoveryHelper) Refresh added in v0.4.0

func (dh *FakeDiscoveryHelper) Refresh() error

func (*FakeDiscoveryHelper) ResourceFor added in v0.5.0

func (*FakeDiscoveryHelper) Resources added in v0.4.0

func (dh *FakeDiscoveryHelper) Resources() []*metav1.APIResourceList

type FakeDynamicClient

type FakeDynamicClient struct {
	mock.Mock
}

func (*FakeDynamicClient) Create

func (*FakeDynamicClient) Get added in v0.5.0

func (*FakeDynamicClient) List

func (*FakeDynamicClient) Patch added in v0.9.0

func (c *FakeDynamicClient) Patch(name string, data []byte) (*unstructured.Unstructured, error)

func (*FakeDynamicClient) Watch

type FakeDynamicFactory

type FakeDynamicFactory struct {
	mock.Mock
}

func (*FakeDynamicFactory) ClientForGroupVersionResource

func (df *FakeDynamicFactory) ClientForGroupVersionResource(gv schema.GroupVersion, resource metav1.APIResource, namespace string) (client.Dynamic, error)

type FakeFileSystem added in v0.9.0

type FakeFileSystem struct {
	ReadDirCalls []string
	// contains filtered or unexported fields
}

func NewFakeFileSystem added in v0.9.0

func NewFakeFileSystem() *FakeFileSystem

func (*FakeFileSystem) Create added in v0.9.0

func (fs *FakeFileSystem) Create(name string) (io.WriteCloser, error)

func (*FakeFileSystem) DirExists added in v0.9.0

func (fs *FakeFileSystem) DirExists(path string) (bool, error)

func (*FakeFileSystem) MkdirAll added in v0.9.0

func (fs *FakeFileSystem) MkdirAll(path string, perm os.FileMode) error

func (*FakeFileSystem) ReadDir added in v0.9.0

func (fs *FakeFileSystem) ReadDir(dirname string) ([]os.FileInfo, error)

func (*FakeFileSystem) ReadFile added in v0.9.0

func (fs *FakeFileSystem) ReadFile(filename string) ([]byte, error)

func (*FakeFileSystem) RemoveAll added in v0.9.0

func (fs *FakeFileSystem) RemoveAll(path string) error

func (*FakeFileSystem) Stat added in v0.10.0

func (fs *FakeFileSystem) Stat(path string) (os.FileInfo, error)

func (*FakeFileSystem) TempDir added in v0.9.0

func (fs *FakeFileSystem) TempDir(dir, prefix string) (string, error)

func (*FakeFileSystem) TempFile added in v0.9.0

func (fs *FakeFileSystem) TempFile(dir, prefix string) (filesystem.NameWriteCloser, error)

func (*FakeFileSystem) WithDirectories added in v0.9.0

func (fs *FakeFileSystem) WithDirectories(path ...string) *FakeFileSystem

func (*FakeFileSystem) WithDirectory added in v0.9.0

func (fs *FakeFileSystem) WithDirectory(path string) *FakeFileSystem

func (*FakeFileSystem) WithFile added in v0.9.0

func (fs *FakeFileSystem) WithFile(path string, data []byte) *FakeFileSystem

func (*FakeFileSystem) WithFileAndMode added in v0.10.0

func (fs *FakeFileSystem) WithFileAndMode(path string, data []byte, mode os.FileMode) *FakeFileSystem

type FakeMapper

type FakeMapper struct {
	meta.RESTMapper
	AutoReturnResource bool
	Resources          map[schema.GroupVersionResource]schema.GroupVersionResource
}

func (*FakeMapper) ResourceFor

type LocationInfo added in v0.10.0

type LocationInfo struct {
	Name, Provider string
	Config         map[string]string
}

type MockPodCommandExecutor added in v0.9.0

type MockPodCommandExecutor struct {
	mock.Mock
}

func (*MockPodCommandExecutor) ExecutePodCommand added in v0.9.0

func (e *MockPodCommandExecutor) ExecutePodCommand(log logrus.FieldLogger, item map[string]interface{}, namespace, name, hookName string, hook *v1.ExecHook) error

type TestBackup

type TestBackup struct {
	*v1.Backup
}

func NewTestBackup

func NewTestBackup() *TestBackup

func (*TestBackup) WithDeletionTimestamp added in v0.7.0

func (b *TestBackup) WithDeletionTimestamp(time time.Time) *TestBackup

func (*TestBackup) WithExcludedNamespaces

func (b *TestBackup) WithExcludedNamespaces(ns ...string) *TestBackup

func (*TestBackup) WithExcludedResources

func (b *TestBackup) WithExcludedResources(r ...string) *TestBackup

func (*TestBackup) WithExpiration

func (b *TestBackup) WithExpiration(expiration time.Time) *TestBackup

func (*TestBackup) WithFinalizers added in v0.7.0

func (b *TestBackup) WithFinalizers(finalizers ...string) *TestBackup

func (*TestBackup) WithIncludedNamespaces

func (b *TestBackup) WithIncludedNamespaces(ns ...string) *TestBackup

func (*TestBackup) WithIncludedResources

func (b *TestBackup) WithIncludedResources(r ...string) *TestBackup

func (*TestBackup) WithLabel

func (b *TestBackup) WithLabel(key, value string) *TestBackup

func (*TestBackup) WithName

func (b *TestBackup) WithName(name string) *TestBackup

func (*TestBackup) WithNamespace

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

func (*TestBackup) WithPhase

func (b *TestBackup) WithPhase(phase v1.BackupPhase) *TestBackup

func (*TestBackup) WithResourceVersion added in v0.7.0

func (b *TestBackup) WithResourceVersion(version string) *TestBackup

func (*TestBackup) WithSnapshot

func (b *TestBackup) WithSnapshot(pv string, snapshot string) *TestBackup

func (*TestBackup) WithSnapshotVolumes added in v0.4.0

func (b *TestBackup) WithSnapshotVolumes(value bool) *TestBackup

func (*TestBackup) WithSnapshotVolumesPointer added in v0.4.0

func (b *TestBackup) WithSnapshotVolumesPointer(value *bool) *TestBackup

func (*TestBackup) WithStartTimestamp added in v0.10.0

func (b *TestBackup) WithStartTimestamp(startTime time.Time) *TestBackup

func (*TestBackup) WithStorageLocation added in v0.10.0

func (b *TestBackup) WithStorageLocation(location string) *TestBackup

func (*TestBackup) WithTTL

func (b *TestBackup) WithTTL(ttl time.Duration) *TestBackup

func (*TestBackup) WithVersion

func (b *TestBackup) WithVersion(version int) *TestBackup

func (*TestBackup) WithVolumeBackupInfo added in v0.10.0

func (b *TestBackup) WithVolumeBackupInfo(pv, snapshotID, volumeType, az string, iops *int64) *TestBackup

func (*TestBackup) WithVolumeSnapshotLocations added in v0.10.0

func (b *TestBackup) WithVolumeSnapshotLocations(locations ...string) *TestBackup

type TestBackupStorageLocation added in v0.10.0

type TestBackupStorageLocation struct {
	*v1.BackupStorageLocation
}

func NewTestBackupStorageLocation added in v0.10.0

func NewTestBackupStorageLocation() *TestBackupStorageLocation

func (*TestBackupStorageLocation) WithLabel added in v0.10.0

func (*TestBackupStorageLocation) WithName added in v0.10.0

func (*TestBackupStorageLocation) WithNamespace added in v0.10.0

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

func (*TestBackupStorageLocation) WithObjectStorage added in v0.10.0

func (b *TestBackupStorageLocation) WithObjectStorage(bucketName string) *TestBackupStorageLocation

func (*TestBackupStorageLocation) WithProvider added in v0.10.0

type TestRestore

type TestRestore struct {
	*api.Restore
}

func NewDefaultTestRestore added in v0.4.0

func NewDefaultTestRestore() *TestRestore

func NewTestRestore

func NewTestRestore(ns, name string, phase api.RestorePhase) *TestRestore

func (*TestRestore) WithBackup

func (r *TestRestore) WithBackup(name string) *TestRestore

func (*TestRestore) WithErrors

func (r *TestRestore) WithErrors(i int) *TestRestore

func (*TestRestore) WithExcludedNamespace added in v0.4.0

func (r *TestRestore) WithExcludedNamespace(name string) *TestRestore

func (*TestRestore) WithExcludedResource added in v0.4.0

func (r *TestRestore) WithExcludedResource(resource string) *TestRestore

func (*TestRestore) WithIncludedNamespace added in v0.4.0

func (r *TestRestore) WithIncludedNamespace(name string) *TestRestore

func (*TestRestore) WithIncludedResource added in v0.4.0

func (r *TestRestore) WithIncludedResource(resource string) *TestRestore

func (*TestRestore) WithMappedNamespace added in v0.4.0

func (r *TestRestore) WithMappedNamespace(from string, to string) *TestRestore

func (*TestRestore) WithRestorePVs added in v0.4.0

func (r *TestRestore) WithRestorePVs(value bool) *TestRestore

func (*TestRestore) WithSchedule added in v0.10.0

func (r *TestRestore) WithSchedule(name string) *TestRestore

func (*TestRestore) WithValidationError

func (r *TestRestore) WithValidationError(err string) *TestRestore

type TestSchedule

type TestSchedule struct {
	*api.Schedule
}

func NewTestSchedule

func NewTestSchedule(namespace, name string) *TestSchedule

func (*TestSchedule) WithCronSchedule

func (s *TestSchedule) WithCronSchedule(cronExpression string) *TestSchedule

func (*TestSchedule) WithLastBackupTime

func (s *TestSchedule) WithLastBackupTime(timeString string) *TestSchedule

func (*TestSchedule) WithPhase

func (s *TestSchedule) WithPhase(phase api.SchedulePhase) *TestSchedule

func (*TestSchedule) WithValidationError

func (s *TestSchedule) WithValidationError(msg string) *TestSchedule

type TestVolumeSnapshotLocation added in v0.10.0

type TestVolumeSnapshotLocation struct {
	*v1.VolumeSnapshotLocation
}

func NewTestVolumeSnapshotLocation added in v0.10.0

func NewTestVolumeSnapshotLocation() *TestVolumeSnapshotLocation

func (*TestVolumeSnapshotLocation) WithName added in v0.10.0

func (*TestVolumeSnapshotLocation) WithProvider added in v0.10.0

func (location *TestVolumeSnapshotLocation) WithProvider(name string) *TestVolumeSnapshotLocation

func (*TestVolumeSnapshotLocation) WithProviderConfig added in v0.10.0

func (location *TestVolumeSnapshotLocation) WithProviderConfig(info []LocationInfo) []*TestVolumeSnapshotLocation

Jump to

Keyboard shortcuts

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