aboutsummaryrefslogtreecommitdiff
path: root/plugin/kubernetes/setup_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/kubernetes/setup_test.go')
-rw-r--r--plugin/kubernetes/setup_test.go78
1 files changed, 46 insertions, 32 deletions
diff --git a/plugin/kubernetes/setup_test.go b/plugin/kubernetes/setup_test.go
index 224c168a1..6f726c7c4 100644
--- a/plugin/kubernetes/setup_test.go
+++ b/plugin/kubernetes/setup_test.go
@@ -19,7 +19,7 @@ func TestKubernetesParse(t *testing.T) {
expectedResyncPeriod time.Duration // expected resync period value
expectedLabelSelector string // expected label selector value
expectedPodMode string
- expectedFallthrough bool
+ expectedFallthrough *[]string
expectedUpstreams []string
}{
// positive
@@ -32,7 +32,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -44,7 +44,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -57,7 +57,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -71,7 +71,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -85,7 +85,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -99,7 +99,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -113,7 +113,7 @@ func TestKubernetesParse(t *testing.T) {
30 * time.Second,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -127,7 +127,7 @@ func TestKubernetesParse(t *testing.T) {
15 * time.Minute,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -141,7 +141,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"environment=prod",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -155,7 +155,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"application=nginx,environment in (production,qa,staging)",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -173,7 +173,7 @@ func TestKubernetesParse(t *testing.T) {
15 * time.Minute,
"application=nginx,environment in (production,qa,staging)",
podModeDisabled,
- true,
+ &[]string{},
nil,
},
// negative
@@ -188,7 +188,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -202,7 +202,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -216,7 +216,7 @@ func TestKubernetesParse(t *testing.T) {
0 * time.Minute,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -230,7 +230,7 @@ func TestKubernetesParse(t *testing.T) {
0 * time.Second,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -244,7 +244,7 @@ func TestKubernetesParse(t *testing.T) {
0 * time.Second,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -258,7 +258,7 @@ func TestKubernetesParse(t *testing.T) {
0 * time.Second,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
{
@@ -272,7 +272,7 @@ func TestKubernetesParse(t *testing.T) {
0 * time.Second,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
// pods disabled
@@ -287,7 +287,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
// pods insecure
@@ -302,7 +302,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeInsecure,
- false,
+ nil,
nil,
},
// pods verified
@@ -317,7 +317,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeVerified,
- false,
+ nil,
nil,
},
// pods invalid
@@ -332,22 +332,22 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeVerified,
- false,
+ nil,
nil,
},
- // fallthrough invalid
+ // fallthrough with zones
{
`kubernetes coredns.local {
- fallthrough junk
+ fallthrough ip6.arpa inaddr.arpa foo.com
}`,
- true,
+ false,
"rong argument count",
- -1,
+ 1,
0,
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ &[]string{"ip6.arpa", "inaddr.arpa", "foo.com"},
nil,
},
// Valid upstream
@@ -362,7 +362,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
[]string{"13.14.15.16:53"},
},
// Invalid upstream
@@ -377,7 +377,7 @@ func TestKubernetesParse(t *testing.T) {
defaultResyncPeriod,
"",
podModeDisabled,
- false,
+ nil,
nil,
},
}
@@ -444,8 +444,22 @@ func TestKubernetesParse(t *testing.T) {
// fallthrough
foundFallthrough := k8sController.Fallthrough
- if foundFallthrough != test.expectedFallthrough {
- t.Errorf("Test %d: Expected kubernetes controller to be initialized with fallthrough '%v'. Instead found fallthrough '%v' for input '%s'", i, test.expectedFallthrough, foundFallthrough, test.input)
+ if foundFallthrough != nil {
+ failed := false
+ if test.expectedFallthrough == nil {
+ failed = true
+ } else if len(*foundFallthrough) != len(*test.expectedFallthrough) {
+ failed = true
+ } else {
+ for i := range *foundFallthrough {
+ if (*foundFallthrough)[i] != (*test.expectedFallthrough)[i] {
+ failed = true
+ }
+ }
+ }
+ if failed {
+ t.Errorf("Test %d: Expected kubernetes controller to be initialized with fallthrough '%v'. Instead found fallthrough '%v' for input '%s'", i, test.expectedFallthrough, foundFallthrough, test.input)
+ }
}
// upstream
foundUpstreams := k8sController.Proxy.Upstreams