(t *testing.T, ns string, ipv6Compatible bool, kubernetesCompatible bool)
| 686 | } |
| 687 | |
| 688 | func 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. |
| 730 | func Identifier(t testing.TB) string { |
no test coverage detected
searching dependent graphs…