mirror of
https://github.com/nxshock/logwriter.git
synced 2025-07-02 00:23:41 +05:00
Initial commit
This commit is contained in:
commit
ba9d5318ac
8 changed files with 403 additions and 0 deletions
160
logwriter_test.go
Normal file
160
logwriter_test.go
Normal file
|
@ -0,0 +1,160 @@
|
|||
package logwriter
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestBasicPrint(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Print("text")
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 6 {
|
||||
t.Errorf("expected 6, got %d", n)
|
||||
}
|
||||
if lw.newLine {
|
||||
t.Error("newLine must be false")
|
||||
}
|
||||
}
|
||||
|
||||
func TestBasicPrintln(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Println("text")
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 7 {
|
||||
t.Errorf("expected 7, got %d", n)
|
||||
}
|
||||
if !lw.newLine {
|
||||
t.Error("newLine must be true")
|
||||
}
|
||||
}
|
||||
|
||||
func TestBasicPrintf(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Printf("%s %d", "string", 1)
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 10 {
|
||||
t.Errorf("expected 10, got %d", n)
|
||||
}
|
||||
if lw.newLine {
|
||||
t.Error("newLine must be false")
|
||||
}
|
||||
}
|
||||
|
||||
func TestWriteWithEndLine(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Write([]byte("text\n"))
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 7 {
|
||||
t.Errorf("expected 7, got %d", n)
|
||||
}
|
||||
if !lw.newLine {
|
||||
t.Error("newLine must be true")
|
||||
}
|
||||
}
|
||||
|
||||
func TestWriteWithoutEndLine(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Write([]byte("text"))
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 6 {
|
||||
t.Errorf("expected 6, got %d", n)
|
||||
}
|
||||
if lw.newLine {
|
||||
t.Error("newLine must be false")
|
||||
}
|
||||
}
|
||||
|
||||
func TestClose(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
_, err := lw.Write([]byte("text"))
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
err = lw.Close()
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
if !lw.newLine {
|
||||
t.Error("newLine must be true")
|
||||
}
|
||||
|
||||
if buf.String() != "- text\n" {
|
||||
t.Errorf(`expected "- text\n", got "%s"`, buf.String())
|
||||
}
|
||||
}
|
||||
|
||||
func TestWriteMultipleLines(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Write([]byte("line1\nline2\nline3"))
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 23 {
|
||||
t.Errorf("expected 23, got %d", n)
|
||||
}
|
||||
if lw.newLine {
|
||||
t.Error("newLine must be false")
|
||||
}
|
||||
}
|
||||
|
||||
func TestPrintMultipleLines(t *testing.T) {
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
lw := New(buf)
|
||||
lw.TimeFormat = "-"
|
||||
|
||||
n, err := lw.Print("line1\nline2\nline3")
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if n != 23 {
|
||||
t.Errorf("expected 23, got %d", n)
|
||||
}
|
||||
if lw.newLine {
|
||||
t.Error("newLine must be false")
|
||||
}
|
||||
if buf.String() != "- line1\n- line2\n- line3" {
|
||||
t.Errorf("wrong output:\n%s", buf.String())
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue