diff options
Diffstat (limited to 'plugin/dnstap/setup_test.go')
-rw-r--r-- | plugin/dnstap/setup_test.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/plugin/dnstap/setup_test.go b/plugin/dnstap/setup_test.go new file mode 100644 index 000000000..fc1dc98e0 --- /dev/null +++ b/plugin/dnstap/setup_test.go @@ -0,0 +1,34 @@ +package dnstap + +import ( + "github.com/mholt/caddy" + "testing" +) + +func TestConfig(t *testing.T) { + tests := []struct { + file string + path string + full bool + socket bool + fail bool + }{ + {"dnstap dnstap.sock full", "dnstap.sock", true, true, false}, + {"dnstap unix://dnstap.sock", "dnstap.sock", false, true, false}, + {"dnstap tcp://127.0.0.1:6000", "127.0.0.1:6000", false, false, false}, + {"dnstap", "fail", false, true, true}, + } + for _, c := range tests { + cad := caddy.NewTestController("dns", c.file) + conf, err := parseConfig(&cad.Dispenser) + 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.socket != c.socket { + + t.Errorf("expected: %+v\nhave: %+v\nerror: %s\n", c, conf, err) + } + } +} |