testutil

package
v1.5.0 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2017 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const SampleImageManifestSchema1 = `` /* 1130-byte string literal not displayed */

Variables

This section is empty.

Functions

func AssertManifestsEqual added in v1.5.0

func AssertManifestsEqual(t *testing.T, description string, ma distribution.Manifest, mb distribution.Manifest)

AssertManifestsEqual compares two manifests and returns if they are equal. Signatures of manifest schema 1 are not taken into account.

func CreateAndUploadTestManifest added in v1.5.0

func CreateAndUploadTestManifest(
	schemaVersion ManifestSchemaVersion,
	layerCount int,
	serverURL *url.URL,
	creds auth.CredentialStore,
	repoName, tag string,
) (dgst digest.Digest, canonical, manifestConfig string, manifest distribution.Manifest, err error)

CreateUploadTestManifest generates a random manifest blob and uploads it to the given repository. For this purpose, a given number of layers will be created and uploaded.

func CreateRandomTarFile

func CreateRandomTarFile() (rs io.ReadSeeker, dgst digest.Digest, err error)

createRandomTarFile creates a random tarfile, returning it as an io.ReadSeeker along with its digest. An error is returned if there is a problem generating valid content. Inspired by github.com/vendor/docker/distribution/testutil/tarfile.go.

func GetFakeImageGetHandler

func GetFakeImageGetHandler(t *testing.T, imgs ...imageapi.Image) core.ReactionFunc

GetFakeImageGetHandler returns a reaction function for use with fake os client returning one of given image objects if found.

func GetFakeImageStreamGetHandler added in v1.5.0

func GetFakeImageStreamGetHandler(t *testing.T, iss ...imageapi.ImageStream) core.ReactionFunc

GetFakeImageStreamGetHandler creates a test handler to be used as a reactor with core.Fake client that handles Get request on image stream resource. Matching is from given image stream list will be returned if found. Additionally, a shared image stream may be requested.

func GetFakeImageStreamImageGetHandler added in v1.5.0

func GetFakeImageStreamImageGetHandler(t *testing.T, iss *imageapi.ImageStream, imgs ...imageapi.Image) core.ReactionFunc

GetFakeImageStreamImageGetHandler returns a reaction function for use with fake os client returning one of given imagestream image objects if found.

func MakeSchema1Manifest added in v1.5.0

func MakeSchema1Manifest(name, tag string, layers []distribution.Descriptor) (string, distribution.Manifest, error)

MakeSchema1Manifest constructs a schema 1 manifest from a given list of digests and returns the digest of the manifest github.com/docker/distribution/testutil

func MakeSchema2Manifest added in v1.5.0

func MakeSchema2Manifest(config distribution.Descriptor, layers []distribution.Descriptor) (string, distribution.Manifest, error)

MakeSchema2Manifest constructs a schema 2 manifest from a given list of digests and returns the digest of the manifest

func NewBasicCredentialStore added in v1.3.3

func NewBasicCredentialStore(username, password string) auth.CredentialStore

NewBasicCredentialStore returns a test credential store for use with registry token handler and/or basic handler.

func NewImageForManifest

func NewImageForManifest(repoName string, rawManifest string, manifestConfig string, managedByOpenShift bool) (*imageapi.Image, error)

NewImageManifest creates a new Image object for the given manifest string. Note that the manifest must contain signatures if it is of schema 1.

func TestNewImageStreamObject

func TestNewImageStreamObject(namespace, name, tag, imageName, dockerImageReference string) *imageapi.ImageStream

TestNewImageStreamObject returns a new image stream object filled with given values.

func UploadPayloadAsBlob added in v1.5.0

func UploadPayloadAsBlob(
	payload []byte,
	serverURL *url.URL,
	creds auth.CredentialStore,
	repoName string,
) (distribution.Descriptor, error)

UploadPayloadAsBlob uploads a given payload to the registry serving at the given URL.

func UploadRandomTestBlob added in v1.5.0

func UploadRandomTestBlob(
	serverURL *url.URL,
	creds auth.CredentialStore,
	repoName string,
) (distribution.Descriptor, []byte, error)

UploadRandomTestBlob generates a random tar file and uploads it to the given repository.

func UploadTestBlobFromReader added in v1.5.0

func UploadTestBlobFromReader(
	dgst digest.Digest,
	reader io.ReadSeeker,
	serverURL *url.URL,
	creds auth.CredentialStore,
	repoName string,
) (distribution.Descriptor, []byte, error)

UploadTestBlobFromReader uploads a testing blob read from the given reader to the registry located at the given URL.

Types

type ConfigPayload added in v1.5.0

type ConfigPayload []byte

func MakeManifestConfig added in v1.5.0

func MakeManifestConfig() (ConfigPayload, distribution.Descriptor, error)

type LayerPayload added in v1.5.0

type LayerPayload []byte

func MakeRandomLayers added in v1.5.0

func MakeRandomLayers(layerCount int) ([]distribution.Descriptor, []LayerPayload, error)

type ManifestSchemaVersion added in v1.5.0

type ManifestSchemaVersion int
const (
	ManifestSchema1 ManifestSchemaVersion = 1
	ManifestSchema2 ManifestSchemaVersion = 2
)

type Payload added in v1.5.0

type Payload struct {
	Config ConfigPayload
	Layers []LayerPayload
}

func CreateRandomManifest added in v1.5.0

func CreateRandomManifest(schemaVersion ManifestSchemaVersion, layerCount int) (string, distribution.Manifest, *Payload, error)

Jump to

Keyboard shortcuts

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