Skip to content

Commit

Permalink
Update colorlog
Browse files Browse the repository at this point in the history
  • Loading branch information
choonsiong committed Jun 14, 2023
1 parent fa26c01 commit 2160b9a
Show file tree
Hide file tree
Showing 2 changed files with 108 additions and 1 deletion.
94 changes: 93 additions & 1 deletion logger/colorlog/colorlog_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package colorlog

import (
"bytes"
"errors"
"fmt"
"github.com/choonsiong/golib/v2/logger"
"reflect"
Expand All @@ -16,7 +17,7 @@ func TestNew(t *testing.T) {
want := &ColorLog{nil, logger.LevelDebug, sync.Mutex{}}

if !reflect.DeepEqual(got, want) {
t.Errorf("CommonLog.New() == %v; want %v", got, want)
t.Errorf("ColorLog.New() == %v; want %v", got, want)
}
}

Expand All @@ -36,3 +37,94 @@ func TestColorLog_PrintDebug(t *testing.T) {
t.Errorf("ColorLog.PrintDebug() == %q; want %q", got, want)
}
}

func TestColorLog_PrintInfo(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelInfo)

l.PrintInfo("test info", map[string]string{"key": "value"})

now := time.Now().UTC().Format(time.RFC3339)
want := now + ` INFO test info` + "\n\t" + `key: value` + "\n"
got := buffer.String()

if strings.Compare(got, want) != 0 {
t.Errorf("ColorLog.PrintInfo() == %q; want %q", got, want)
}
}

func TestColorLog_PrintError(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelError)

l.PrintError(errors.New("test error"), nil)

got := buffer.String()
want := `test error`

if !strings.Contains(got, want) {
t.Errorf("ColorLog.PrintError() == %q; want %q", got, want)
}

want = `ERROR`
if !strings.Contains(got, want) {
t.Errorf("ColorLog.PrintError() == %q; want %q", got, want)
}
}

func TestColorLog_PrintFatal(t *testing.T) {
t.Skip("not implement")
}

func TestColorLog_PrintWarning(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelWarning)

l.PrintWarning("test warning", map[string]string{"key": "value"})

now := time.Now().UTC().Format(time.RFC3339)
want := now + ` WARNING test warning` + "\n\t" + `key: value` + "\n"
got := buffer.String()

if strings.Compare(got, want) != 0 {
t.Errorf("ColorLog.PrintWarning() == %q; want %q", got, want)
}
}

func TestColorLog_Write(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelError)

_, err := l.Write([]byte("test write"))
if err != nil {
t.Fatal(err)
}

got := buffer.String()
want := `test write`

if !strings.Contains(got, want) {
t.Errorf("ColorLog.Write() == %q; want %q", got, want)
}

want = `ERROR`
if !strings.Contains(got, want) {
t.Errorf("ColorLog.Write() == %q; want %q", got, want)
}
}

func TestColorLog_print(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelDebug)
l.minLevel = 1
want := 0

got, err := l.print(-1, "", nil)
if err != nil {
t.Errorf("ColorLog.print() == %v; want nil", err)
}

if got != want {
t.Errorf("ColorLog.print(%v, %v, %v) == %d; want %d", -1, "", "", got, want)
}
}
15 changes: 15 additions & 0 deletions logger/commonlog/commonlog_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,21 @@ func TestCommonLog_PrintFatal(t *testing.T) {
t.Skip("not implement")
}

func TestCommonLog_PrintWarning(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelWarning)

l.PrintWarning("test warning", map[string]string{"key": "value"})

now := time.Now().UTC().Format(time.RFC3339)
want := now + ` WARNING test warning` + "\n\t" + `key: value` + "\n"
got := buffer.String()

if strings.Compare(got, want) != 0 {
t.Errorf("CommonLog.PrintWarning() == %q; want %q", got, want)
}
}

func TestCommonLog_Write(t *testing.T) {
buffer := new(bytes.Buffer)
l := New(buffer, logger.LevelError)
Expand Down

0 comments on commit 2160b9a

Please sign in to comment.