MCPcopy Create free account
hub / github.com/containerd/nerdctl / newBase

Function newBase

pkg/testutil/testutil.go:688–727  ·  view source on GitHub ↗
(t *testing.T, ns string, ipv6Compatible bool, kubernetesCompatible bool)

Source from the content-addressed store, hash-verified

686}
687
688func newBase(t *testing.T, ns string, ipv6Compatible bool, kubernetesCompatible bool) *Base {
689 base := &Base{
690 T: t,
691 Target: GetTarget(),
692 DaemonIsKillable: GetDaemonIsKillable(),
693 EnableIPv6: GetEnableIPv6(),
694 IPv6Compatible: ipv6Compatible,
695 EnableKubernetes: GetEnableKubernetes(),
696 KubernetesCompatible: kubernetesCompatible,
697 Env: os.Environ(),
698 }
699 if base.EnableIPv6 && !base.IPv6Compatible {
700 t.Skip("runner skips non-IPv6 compatible tests in the IPv6 environment")
701 } else if !base.EnableIPv6 && base.IPv6Compatible {
702 t.Skip("runner skips IPv6 compatible tests in the non-IPv6 environment")
703 }
704 if base.EnableKubernetes && !base.KubernetesCompatible {
705 t.Skip("runner skips non-Kubernetes compatible tests in the Kubernetes environment")
706 } else if !base.EnableKubernetes && base.KubernetesCompatible {
707 t.Skip("runner skips Kubernetes compatible tests in the non-Kubernetes environment")
708 }
709 if !GetFlakyEnvironment() && !GetEnableKubernetes() && !GetEnableIPv6() {
710 t.Skip("legacy tests are considered flaky by default and are skipped unless in the flaky environment")
711 }
712 var err error
713 base.Binary, err = exec.LookPath(base.Target)
714 if err != nil {
715 t.Fatal(err)
716 }
717
718 if IsDocker() {
719 if err = exec.Command(base.Binary, "compose", "version").Run(); err != nil {
720 t.Fatalf("docker does not support compose: %v", err)
721 }
722 } else {
723 base.Args = []string{"--namespace=" + ns}
724 }
725
726 return base
727}
728
729// Identifier can be used as a name of container, image, volume, network, etc.
730func Identifier(t testing.TB) string {

Callers 3

NewBaseWithNamespaceFunction · 0.85
NewBaseFunction · 0.85

Calls 9

GetTargetFunction · 0.85
GetDaemonIsKillableFunction · 0.85
GetEnableIPv6Function · 0.85
GetEnableKubernetesFunction · 0.85
GetFlakyEnvironmentFunction · 0.85
IsDockerFunction · 0.70
SkipMethod · 0.65
RunMethod · 0.65
CommandMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…