From 944c2c74c0756e6b768757475546da459d06e95e Mon Sep 17 00:00:00 2001 From: Kevin Chabowski Date: Tue, 6 Aug 2013 14:14:10 +0200 Subject: Initial commit. --- LimitedWriter_test.go | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 LimitedWriter_test.go (limited to 'LimitedWriter_test.go') diff --git a/LimitedWriter_test.go b/LimitedWriter_test.go new file mode 100644 index 0000000..5af9d71 --- /dev/null +++ b/LimitedWriter_test.go @@ -0,0 +1,33 @@ +package kagus + +import ( + "bytes" + "testing" +) + +func TestLimitedWriting(t *testing.T) { + buf := new(bytes.Buffer) + lw := &LimitedWriter{buf, 10} + + if _, err := lw.Write([]byte{1, 2}); err != nil { + t.Fatalf("lw.Write failed: %s", err) + } + + if lw.N != 8 { + t.Fatalf("lw.N was supposed to be 8, is %d", lw.N) + } + + if !bytes.Equal(buf.Bytes(), []byte{1, 2}) { + t.Errorf("Unexpected content of buf: %v", buf.Bytes()) + } + + n, err := lw.Write([]byte{3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}) + if (n != 8) || (err != WriteLimitReached) { + t.Fatalf("lw.Write returned with unexpected n, err: %d, %s", n, err) + } + + n, err = lw.Write([]byte("trololo")) + if (n != 0) || (err != WriteLimitReached) { + t.Fatalf("lw.Write returned with unexpected n, err: %d, %s", n, err) + } +} -- cgit v1.2.3-54-g00ecf