diff options
Diffstat (limited to 'plugin/transfer/failed_write_test.go')
-rw-r--r-- | plugin/transfer/failed_write_test.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/plugin/transfer/failed_write_test.go b/plugin/transfer/failed_write_test.go new file mode 100644 index 000000000..90b5c4de2 --- /dev/null +++ b/plugin/transfer/failed_write_test.go @@ -0,0 +1,31 @@ +package transfer + +import ( + "context" + "fmt" + "testing" + + "github.com/coredns/coredns/plugin/test" + + "github.com/miekg/dns" +) + +type badwriter struct { + dns.ResponseWriter + count int +} + +func (w *badwriter) WriteMsg(res *dns.Msg) error { return fmt.Errorf("failed to write msg") } + +func TestWriteMessageFailed(t *testing.T) { + transfer := newTestTransfer() + ctx := context.TODO() + w := &badwriter{ResponseWriter: &test.ResponseWriter{}} + m := &dns.Msg{} + m.SetAxfr("example.org.") + + _, err := transfer.ServeDNS(ctx, w, m) + if err == nil { + t.Error("Expected error, got none") + } +} |