aboutsummaryrefslogtreecommitdiff
path: root/plugin/dnstap/setup_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/dnstap/setup_test.go')
-rw-r--r--plugin/dnstap/setup_test.go40
1 files changed, 26 insertions, 14 deletions
diff --git a/plugin/dnstap/setup_test.go b/plugin/dnstap/setup_test.go
index 129107efd..6b9ad284b 100644
--- a/plugin/dnstap/setup_test.go
+++ b/plugin/dnstap/setup_test.go
@@ -8,26 +8,38 @@ import (
func TestConfig(t *testing.T) {
tests := []struct {
- file string
- path string
- full bool
- proto string
- fail bool
+ in string
+ endpoint string
+ full bool
+ proto string
+ fail bool
}{
{"dnstap dnstap.sock full", "dnstap.sock", true, "unix", false},
{"dnstap unix://dnstap.sock", "dnstap.sock", false, "unix", false},
{"dnstap tcp://127.0.0.1:6000", "127.0.0.1:6000", false, "tcp", false},
{"dnstap", "fail", false, "tcp", true},
}
- for _, c := range tests {
- cad := caddy.NewTestController("dns", c.file)
- conf, err := parseConfig(cad)
- if c.fail {
- if err == nil {
- t.Errorf("%s: %s", c.file, err)
- }
- } else if err != nil || conf.target != c.path || conf.full != c.full || conf.proto != c.proto {
- t.Errorf("Expected: %+v\nhave: %+v\nerror: %s", c, conf, err)
+ for i, tc := range tests {
+ c := caddy.NewTestController("dns", tc.in)
+ tap, err := parseConfig(c)
+ if tc.fail && err == nil {
+ t.Fatalf("Test %d: expected test to fail: %s: %s", i, tc.in, err)
+ }
+ if tc.fail {
+ continue
+ }
+
+ if err != nil {
+ t.Fatalf("Test %d: expected no error, got %s", i, err)
+ }
+ if x := tap.io.(*dio).endpoint; x != tc.endpoint {
+ t.Errorf("Test %d: expected endpoint %s, got %s", i, tc.endpoint, x)
+ }
+ if x := tap.io.(*dio).proto; x != tc.proto {
+ t.Errorf("Test %d: expected proto %s, got %s", i, tc.proto, x)
+ }
+ if x := tap.IncludeRawMessage; x != tc.full {
+ t.Errorf("Test %d: expected IncludeRawMessage %t, got %t", i, tc.full, x)
}
}
}