kuma

Форк
0
54 строки · 2.3 Кб
1
package defaults
2

3
import (
4
	"strings"
5

6
	"github.com/gruntwork-io/terratest/modules/k8s"
7
	. "github.com/onsi/ginkgo/v2"
8
	. "github.com/onsi/gomega"
9

10
	. "github.com/kumahq/kuma/test/framework"
11
	"github.com/kumahq/kuma/test/framework/envs/kubernetes"
12
)
13

14
func Defaults() {
15
	meshName := "defaults-non-default"
16

17
	BeforeAll(func() {
18
		Expect(kubernetes.Cluster.Install(MeshKubernetes(meshName))).To(Succeed())
19
	})
20

21
	AfterAll(func() {
22
		Expect(kubernetes.Cluster.DeleteMesh(meshName)).To(Succeed())
23
	})
24

25
	policyCreated := func(typ, name string, namespace ...string) func() bool {
26
		return func() bool {
27
			output, err := k8s.RunKubectlAndGetOutputE(kubernetes.Cluster.GetTesting(), kubernetes.Cluster.GetKubectlOptions(namespace...), "get", typ)
28
			if err != nil {
29
				return false
30
			}
31
			return strings.Contains(output, name)
32
		}
33
	}
34

35
	It("should create default policies for default mesh", func() {
36
		Eventually(policyCreated("trafficpermission", "allow-all-default"), "30s", "1s").MustPassRepeatedly(3).Should(BeFalse())
37
		Eventually(policyCreated("trafficroute", "route-all-default"), "30s", "1s").MustPassRepeatedly(3).Should(BeFalse())
38
		Eventually(policyCreated("meshtimeout", "mesh-timeout-all-default", Config.KumaNamespace), "30s", "1s").MustPassRepeatedly(3).Should(BeTrue())
39
		Eventually(policyCreated("meshcircuitbreaker", "mesh-circuit-breaker-all-default", Config.KumaNamespace), "30s", "1s").MustPassRepeatedly(3).Should(BeTrue())
40
		Eventually(policyCreated("meshretry", "mesh-retry-all-default", Config.KumaNamespace), "30s", "1s").MustPassRepeatedly(3).Should(BeTrue())
41
	})
42

43
	It("should create default policies for non-default mesh", func() {
44
		Eventually(policyCreated("trafficpermission", "allow-all-"+meshName), "30s", "1s").Should(BeFalse())
45
		Eventually(policyCreated("trafficroute", "route-all-"+meshName), "30s", "1s").Should(BeFalse())
46
		Eventually(policyCreated("meshtimeout", "mesh-timeout-all-"+meshName, Config.KumaNamespace), "30s", "1s").Should(BeTrue())
47
		Eventually(policyCreated("meshcircuitbreaker", "mesh-circuit-breaker-all-"+meshName, Config.KumaNamespace), "30s", "1s").Should(BeTrue())
48
		Eventually(policyCreated("meshretry", "mesh-retry-all-"+meshName, Config.KumaNamespace), "30s", "1s").Should(BeTrue())
49
	})
50

51
	It("should create a zone", func() {
52
		Eventually(policyCreated("zone", "default"), "30s", "1s").Should(BeTrue())
53
	})
54
}
55

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.