Fix the delegation handling in the *file* and *dnssec* middleware. Refactor tests a bit and show that they are failling. Add a Tree printer, cleanups and tests. Fix wildcard test - should get no answer from empty-non-terminal
30 lines
735 B
Go
30 lines
735 B
Go
package file
|
|
|
|
import "testing"
|
|
|
|
func TestNameFromRight(t *testing.T) {
|
|
z := NewZone("example.org.", "stdin")
|
|
|
|
tests := []struct {
|
|
in string
|
|
labels int
|
|
shot bool
|
|
expected string
|
|
}{
|
|
{"example.org.", 0, false, "example.org."},
|
|
{"a.example.org.", 0, false, "example.org."},
|
|
{"a.example.org.", 1, false, "a.example.org."},
|
|
{"a.example.org.", 2, true, "a.example.org."},
|
|
{"a.b.example.org.", 2, false, "a.b.example.org."},
|
|
}
|
|
|
|
for i, tc := range tests {
|
|
got, shot := z.nameFromRight(tc.in, tc.labels)
|
|
if got != tc.expected {
|
|
t.Errorf("Test %d: expected %s, got %s\n", i, tc.expected, got)
|
|
}
|
|
if shot != tc.shot {
|
|
t.Errorf("Test %d: expected shot to be %t, got %t\n", i, tc.shot, shot)
|
|
}
|
|
}
|
|
}
|