...
1 package daemonsetdns
2
3 import (
4 "testing"
5 "time"
6 )
7
8 func TestCorrectName(t *testing.T) {
9 type resp struct {
10 nodename string
11 daemonset string
12 namespace string
13 err error
14 }
15 tests := map[string]struct {
16 input string
17 want resp
18 }{
19 "simple": {
20 input: "worker1.vncserver.novnc.pod-locator.",
21 want: resp{nodename: "worker1", daemonset: "vncserver", namespace: "novnc", err: nil},
22 },
23 "multipart node name": {
24 input: "node1.worker1.vncserver.novnc.pod-locator.",
25 want: resp{nodename: "node1.worker1", daemonset: "vncserver", namespace: "novnc", err: nil},
26 },
27 "Invalid Name": {
28 input: "worker1.vncserver.novnc.pod.",
29 want: resp{nodename: "", daemonset: "", namespace: "", err: errDNSName},
30 },
31 "Invalid length": {
32 input: "vncserver.novnc.pod-locator.",
33 want: resp{nodename: "", daemonset: "", namespace: "", err: errDNSLen},
34 },
35 }
36
37 for name, tc := range tests {
38 t.Run(name, func(t *testing.T) {
39 nodeName, daemonset, namespace, err := extractName(tc.input)
40 got := resp{
41 nodename: nodeName,
42 daemonset: daemonset,
43 namespace: namespace,
44 err: err,
45 }
46 if tc.want != got {
47 t.Fatalf("Expected %#v, got %#v", tc.want, got)
48 }
49 })
50 }
51 }
52
53 func TestDNSTimeout(t *testing.T) {
54
55
56
57
58
59 if dnsTimeout != 30*time.Second {
60 t.Fatalf("Unexpected dns timeout, expected %v, found %v", "30s", dnsTimeout)
61 }
62 }
63
View as plain text