diff options
author | 2018-01-07 16:32:59 +0000 | |
---|---|---|
committer | 2018-01-07 16:32:59 +0000 | |
commit | c6febe6250361eee580dbb8a601a444f23ed7ac2 (patch) | |
tree | ee81ab66cfa382d66bc085d31804efb8c1059af2 /plugin/hosts/setup_test.go | |
parent | 84ebbbc7225a8d7eb5e00c0c525f7e12932a9fe4 (diff) | |
download | coredns-c6febe6250361eee580dbb8a601a444f23ed7ac2.tar.gz coredns-c6febe6250361eee580dbb8a601a444f23ed7ac2.tar.zst coredns-c6febe6250361eee580dbb8a601a444f23ed7ac2.zip |
Add pkg/fall for Fallthrough (#1355)
* Add pkg/fall for Fallthrough
Move this into it's own package to facilitate tests. Important bug
was fixed: make the names fully qualified.
Add fall package to hosts, reverse, etcd, and fix kubernetes and any
tests. The k8s tests are still as-is, might need a future cleanup.
Diffstat (limited to 'plugin/hosts/setup_test.go')
-rw-r--r-- | plugin/hosts/setup_test.go | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/plugin/hosts/setup_test.go b/plugin/hosts/setup_test.go index b401d58dc..58351cc52 100644 --- a/plugin/hosts/setup_test.go +++ b/plugin/hosts/setup_test.go @@ -3,6 +3,8 @@ package hosts import ( "testing" + "github.com/coredns/coredns/plugin/pkg/fall" + "github.com/mholt/caddy" ) @@ -12,48 +14,48 @@ func TestHostsParse(t *testing.T) { shouldErr bool expectedPath string expectedOrigins []string - expectedFallthrough bool + expectedFallthrough *fall.F }{ { `hosts `, - false, "/etc/hosts", nil, false, + false, "/etc/hosts", nil, nil, }, { `hosts /tmp`, - false, "/tmp", nil, false, + false, "/tmp", nil, nil, }, { `hosts /etc/hosts miek.nl.`, - false, "/etc/hosts", []string{"miek.nl."}, false, + false, "/etc/hosts", []string{"miek.nl."}, nil, }, { `hosts /etc/hosts miek.nl. pun.gent.`, - false, "/etc/hosts", []string{"miek.nl.", "pun.gent."}, false, + false, "/etc/hosts", []string{"miek.nl.", "pun.gent."}, nil, }, { `hosts { fallthrough }`, - false, "/etc/hosts", nil, true, + false, "/etc/hosts", nil, fall.Zero(), }, { `hosts /tmp { fallthrough }`, - false, "/tmp", nil, true, + false, "/tmp", nil, fall.Zero(), }, { `hosts /etc/hosts miek.nl. { fallthrough }`, - false, "/etc/hosts", []string{"miek.nl."}, true, + false, "/etc/hosts", []string{"miek.nl."}, fall.Zero(), }, { `hosts /etc/hosts miek.nl 10.0.0.9/8 { fallthrough }`, - false, "/etc/hosts", []string{"miek.nl.", "10.in-addr.arpa."}, true, + false, "/etc/hosts", []string{"miek.nl.", "10.in-addr.arpa."}, fall.Zero(), }, } @@ -70,8 +72,8 @@ func TestHostsParse(t *testing.T) { t.Fatalf("Test %d expected %v, got %v", i, test.expectedPath, h.path) } } else { - if h.Fallthrough != test.expectedFallthrough { - t.Fatalf("Test %d expected fallthrough of %v, got %v", i, test.expectedFallthrough, h.Fallthrough) + if !h.Fall.Equal(test.expectedFallthrough) { + t.Fatalf("Test %d expected fallthrough of %v, got %v", i, test.expectedFallthrough, h.Fall) } if len(h.Origins) != len(test.expectedOrigins) { t.Fatalf("Test %d expected %v, got %v", i, test.expectedOrigins, h.Origins) @@ -90,7 +92,7 @@ func TestHostsInlineParse(t *testing.T) { inputFileRules string shouldErr bool expectedbyAddr map[string][]string - expectedFallthrough bool + expectedFallthrough *fall.F }{ { `hosts highly_unlikely_to_exist_hosts_file example.org { @@ -103,28 +105,28 @@ func TestHostsInlineParse(t *testing.T) { `example.org.`, }, }, - true, + fall.Zero(), }, { `hosts highly_unlikely_to_exist_hosts_file example.org { - 10.0.0.1 example.org - }`, + 10.0.0.1 example.org + }`, false, map[string][]string{ `10.0.0.1`: { `example.org.`, }, }, - false, + nil, }, { `hosts highly_unlikely_to_exist_hosts_file example.org { - fallthrough - 10.0.0.1 example.org - }`, + fallthrough + 10.0.0.1 example.org + }`, true, map[string][]string{}, - true, + fall.Zero(), }, } @@ -137,8 +139,8 @@ func TestHostsInlineParse(t *testing.T) { } else if err != nil && !test.shouldErr { t.Fatalf("Test %d expected no errors, but got '%v'", i, err) } else if !test.shouldErr { - if h.Fallthrough != test.expectedFallthrough { - t.Fatalf("Test %d expected fallthrough of %v, got %v", i, test.expectedFallthrough, h.Fallthrough) + if !h.Fall.Equal(test.expectedFallthrough) { + t.Fatalf("Test %d expected fallthrough of %v, got %v", i, test.expectedFallthrough, h.Fall) } for k, expectedVal := range test.expectedbyAddr { if val, ok := h.hmap.byAddr[k]; !ok { |