...
1 package k8s_test
2
3 import (
4 "strconv"
5 "testing"
6
7 "github.com/stretchr/testify/assert"
8
9 "github.com/emissary-ingress/emissary/v3/pkg/k8s"
10 )
11
12 func TestQKind(t *testing.T) {
13 t.Parallel()
14 testcases := []struct {
15 InputResource k8s.Resource
16 ExpectedQKind string
17 }{
18
19 {k8s.Resource{"apiVersion": "apps/v1", "kind": "Deployment"}, "Deployment.v1.apps"},
20 {k8s.Resource{"apiVersion": "v1", "kind": "Service"}, "Service.v1."},
21
22 {k8s.Resource{"kind": "KindOnly"}, "KindOnly.."},
23 {k8s.Resource{"apiVersion": "group/version"}, ".version.group"},
24 {k8s.Resource{}, ".."},
25 {k8s.Resource{"kind": 7, "apiVersion": "v1"}, ".v1."},
26 {k8s.Resource{"kind": "Pod", "apiVersion": 1}, "Pod.."},
27 }
28 for i, testcase := range testcases {
29 testcase := testcase
30 t.Run(strconv.Itoa(i), func(t *testing.T) {
31 actualQKind := testcase.InputResource.QKind()
32 assert.Equal(t, testcase.ExpectedQKind, actualQKind)
33 })
34 }
35 }
36
View as plain text