diff options
author | 2017-06-28 18:44:30 -0400 | |
---|---|---|
committer | 2017-06-28 18:44:30 -0400 | |
commit | edf71fb16877109348efa8b7517043fdea9c5769 (patch) | |
tree | bc6a6a1ae0161e3fab58b6f0d9dc521538e3d6e0 /middleware/kubernetes/kubernetes_test.go | |
parent | 817f3960b81fc53f8991b4bb16a8922cb8317baa (diff) | |
download | coredns-edf71fb16877109348efa8b7517043fdea9c5769.tar.gz coredns-edf71fb16877109348efa8b7517043fdea9c5769.tar.zst coredns-edf71fb16877109348efa8b7517043fdea9c5769.zip |
middleware/kubernetes: Server side path lookups (#750)
* initial commit
* add config options
* add readme
* rewording
* revert unlreated change
* normalize host domain path
* add ndots opt, allow > 1 host domains, pull host domains from resolv.conf
* implementing review feedback
* update readme
* use dns lib, config format, defaults
* Correct autopath example.
Diffstat (limited to 'middleware/kubernetes/kubernetes_test.go')
-rw-r--r-- | middleware/kubernetes/kubernetes_test.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/middleware/kubernetes/kubernetes_test.go b/middleware/kubernetes/kubernetes_test.go index 2003513a4..8449101a5 100644 --- a/middleware/kubernetes/kubernetes_test.go +++ b/middleware/kubernetes/kubernetes_test.go @@ -480,3 +480,27 @@ func TestServices(t *testing.T) { } } + +func TestSplitSearchPath(t *testing.T) { + type testCase struct { + question string + namespace string + expectedName string + expectedSearch string + expectedOk bool + } + tests := []testCase{ + {question: "test.blah.com", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false}, + {question: "foo.com.ns2.svc.interwebs.nets", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false}, + {question: "foo.com.svc.interwebs.nets", namespace: "ns1", expectedName: "", expectedSearch: "", expectedOk: false}, + {question: "foo.com.ns1.svc.interwebs.nets", namespace: "ns1", expectedName: "foo.com", expectedSearch: "ns1.svc.interwebs.nets", expectedOk: true}, + } + zone := "interwebs.nets" + for _, c := range tests { + name, search, ok := splitSearch(zone, c.question, c.namespace) + if c.expectedName != name || c.expectedSearch != search || c.expectedOk != ok { + t.Errorf("Case %v: Expected name'%v', search:'%v', ok:'%v'. Got name:'%v', search:'%v', ok:'%v'.", c.question, c.expectedName, c.expectedSearch, c.expectedOk, name, search, ok) + } + } + +} |