integration

package
v0.11.0-rc3 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2022 License: Apache-2.0 Imports: 39 Imported by: 7

Documentation

Index

Constants

View Source
const (
	FeatureCacheExport      = "cache export"
	FeatureCacheImport      = "cache import"
	FeatureDirectPush       = "direct push"
	FeatureFrontendOutline  = "frontend outline"
	FeatureFrontendTargets  = "frontend targets"
	FeatureImageExporter    = "image exporter"
	FeatureInfo             = "info"
	FeatureMultiCacheExport = "multi cache export"
	FeatureMultiPlatform    = "multi-platform"
	FeatureOCIExporter      = "oci exporter"
	FeatureOCILayout        = "oci layout"
	FeatureProvenance       = "provenance"
	FeatureSBOM             = "sbom"
	FeatureSecurityMode     = "security mode"
	FeatureSourceDateEpoch  = "source date epoch"
)

Variables

View Source
var ErrRequirements = errors.Errorf("missing requirements")

Functions

func CheckFeatureCompat added in v0.11.0

func CheckFeatureCompat(t *testing.T, sb Sandbox, reason ...string)

func InitContainerdWorker added in v0.5.0

func InitContainerdWorker()

func InitDockerdWorker added in v0.8.0

func InitDockerdWorker()

InitDockerdWorker registers a dockerd worker with the global registry.

func InitOCIWorker added in v0.5.0

func InitOCIWorker()

func IsTestDockerd added in v0.10.1

func IsTestDockerd() bool

func IsTestDockerdMoby added in v0.11.0

func IsTestDockerdMoby(sb Sandbox) bool

func NewRegistry added in v0.5.0

func NewRegistry(dir string) (url string, cl func() error, err error)

func OfficialImages

func OfficialImages(names ...string) map[string]string

func Register added in v0.5.0

func Register(w Worker)

func Run

func Run(t *testing.T, testCases []Test, opt ...TestOpt)

func Tmpdir added in v0.11.0

func Tmpdir(t *testing.T, appliers ...fstest.Applier) (string, error)

Types

type Backend added in v0.7.0

type Backend interface {
	Address() string
	ContainerdAddress() string
	Rootless() bool
	Snapshotter() string
}

Backend is the minimal interface that describes a testing backend.

type BackendConfig added in v0.7.0

type BackendConfig struct {
	Logs       map[string]*bytes.Buffer
	ConfigFile string
}

BackendConfig is used to configure backends created by a worker.

type ConfigUpdater added in v0.5.0

type ConfigUpdater interface {
	UpdateConfigFile(string) string
}

type Sandbox

type Sandbox interface {
	Backend

	Context() context.Context
	Cmd(...string) *exec.Cmd
	PrintLogs(*testing.T)
	ClearLogs()
	NewRegistry() (string, error)
	Value(string) interface{} // chosen matrix value
	Name() string
}

type Test

type Test interface {
	Name() string
	Run(t *testing.T, sb Sandbox)
}

func TestFuncs added in v0.10.0

func TestFuncs(funcs ...func(t *testing.T, sb Sandbox)) []Test

type TestOpt

type TestOpt func(*testConf)

TestOpt is an option that can be used to configure a set of integration tests.

func WithMatrix

func WithMatrix(key string, m map[string]interface{}) TestOpt

func WithMirroredImages

func WithMirroredImages(m map[string]string) TestOpt

type Worker

type Worker interface {
	New(context.Context, *BackendConfig) (Backend, func() error, error)
	Name() string
	Rootless() bool
}

func List

func List() []Worker

Jump to

Keyboard shortcuts

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