From 4b14243e9bb9fb6147771e7a5b76c934a28acdd7 Mon Sep 17 00:00:00 2001 From: Yong Tang Date: Fri, 1 Sep 2017 10:21:05 -0700 Subject: Add k8s tags to related tests (#1018) , so that `make test` will pass by default. Also fixed several ineffassign and golint issues. Signed-off-by: Yong Tang --- test/kubernetes_api_fallthrough_test.go | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 test/kubernetes_api_fallthrough_test.go (limited to 'test/kubernetes_api_fallthrough_test.go') diff --git a/test/kubernetes_api_fallthrough_test.go b/test/kubernetes_api_fallthrough_test.go new file mode 100644 index 000000000..20c0aaa21 --- /dev/null +++ b/test/kubernetes_api_fallthrough_test.go @@ -0,0 +1,53 @@ +// +build k8s + +package test + +import ( + "testing" + "time" + + "github.com/coredns/coredns/middleware/test" + + "github.com/miekg/dns" +) + +func TestKubernetesAPIFallthrough(t *testing.T) { + tests := []test.Case{ + { + Qname: "svc-1-a.test-1.svc.cluster.local.", Qtype: dns.TypeA, + Rcode: dns.RcodeSuccess, + Answer: []dns.RR{ + test.A("svc-1-a.test-1.svc.cluster.local. 303 IN A 10.0.0.100"), + }, + }, + } + + corefile := + `.:0 { + kubernetes cluster.local { + endpoint http://nonexistance:8080,http://invalidip:8080,http://localhost:8080 + namespaces test-1 + pods disabled + }` + + server, udp, _, err := CoreDNSServerAndPorts(corefile) + if err != nil { + t.Fatalf("Could not get CoreDNS serving instance: %s", err) + } + defer server.Stop() + + // Work-around for timing condition that results in no-data being returned in test environment. + time.Sleep(3 * time.Second) + + for _, tc := range tests { + + c := new(dns.Client) + m := tc.Msg() + + res, _, err := c.Exchange(m, udp) + if err != nil { + t.Fatalf("Could not send query: %s", err) + } + test.SortAndCheck(t, res, tc) + } +} -- cgit v1.2.3