Skip to content

Commit

Permalink
✅ Add field_test, ExampleSyncWhenStop test
Browse files Browse the repository at this point in the history
  • Loading branch information
nkmr-jp committed Sep 9, 2023
1 parent bc427ed commit 1a621ca
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 5 deletions.
31 changes: 27 additions & 4 deletions example_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ import (
"go.uber.org/zap"
"log"
"os"
"syscall"
"time"
)

var (
Expand Down Expand Up @@ -138,8 +140,8 @@ func ExampleSetVersion() {

// Output:
// {"severity":"DEBUG","caller":"zl/zl.go:82","message":"INIT_LOGGER","version":"v1.0.0","console":"Severity: DEBUG, Output: ConsoleAndFile, File: ./log/example-set-version_v1.0.0.jsonl"}
// {"severity":"INFO","caller":"https://github.com/nkmr-jp/zl/blob/v1.0.0/example_test.go#L133","message":"INFO_MESSAGE","version":"v1.0.0","detail":"detail info xxxxxxxxxxxxxxxxx"}
// {"severity":"WARN","caller":"https://github.com/nkmr-jp/zl/blob/v1.0.0/example_test.go#L134","message":"WARN_MESSAGE","version":"v1.0.0","detail":"detail info xxxxxxxxxxxxxxxxx"}
// {"severity":"INFO","caller":"https://github.com/nkmr-jp/zl/blob/v1.0.0/example_test.go#L135","message":"INFO_MESSAGE","version":"v1.0.0","detail":"detail info xxxxxxxxxxxxxxxxx"}
// {"severity":"WARN","caller":"https://github.com/nkmr-jp/zl/blob/v1.0.0/example_test.go#L136","message":"WARN_MESSAGE","version":"v1.0.0","detail":"detail info xxxxxxxxxxxxxxxxx"}

}

Expand Down Expand Up @@ -304,13 +306,34 @@ func ExampleDump() {
}

func ExampleSyncWhenStop() {
// syscall.SIGINT
setupForExampleTest()
zl.SetLevel(zl.DebugLevel)
zl.SetRotateFileName("./log/example-SyncWhenStop.jsonl")
zl.Init()
zl.SyncWhenStop()

go func() {
time.Sleep(time.Millisecond * 50)
syscall.Kill(os.Getpid(), syscall.SIGINT)
}()
time.Sleep(time.Millisecond * 100)

// syscall.SIGTERM
fmt.Println()
setupForExampleTest()
zl.SetLevel(zl.DebugLevel)
zl.SetRotateFileName("./log/example-SyncWhenStop.jsonl")
zl.Init()
defer zl.Sync()
zl.SyncWhenStop()
zl.Info("TEST")

go func() {
time.Sleep(time.Millisecond * 50)
syscall.Kill(os.Getpid(), syscall.SIGTERM)
}()
time.Sleep(time.Millisecond * 100)

// Output:
// os.Exit(130) called.
// os.Exit(143) called.
}
33 changes: 33 additions & 0 deletions field_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package zl

import (
"github.com/stretchr/testify/assert"
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
"testing"
)

func TestConsole(t *testing.T) {
field := Console("test")
expected := zap.Field{Key: consoleFieldDefault, Type: zapcore.StringType, String: "test"}
assert.Equal(t, expected, field)
}

func TestConsolep(t *testing.T) {
val := "pointerTest"
field := Consolep(&val)
expected := zap.Field{Key: consoleFieldDefault, Type: zapcore.StringType, String: "pointerTest"}
assert.Equal(t, expected, field)

nilField := Consolep(nil)
expectedNil := zap.Field{Key: consoleFieldDefault, Type: zapcore.StringType, String: ""}
assert.Equal(t, expectedNil, nilField)
}

func TestConsolef(t *testing.T) {
format := "Hello %s"
name := "World"
field := Consolef(format, name)
expected := zap.Field{Key: consoleFieldDefault, Type: zapcore.StringType, String: "Hello World"}
assert.Equal(t, expected, field)
}
7 changes: 6 additions & 1 deletion zl.go
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,12 @@ func SyncWhenStop() {

iDebug(fmt.Sprintf("GOT_SIGNAL_%v", strings.ToUpper(s.String())))
Sync() // flush log buffer
os.Exit(128 + sigCode)

if isTest {
fmt.Printf("os.Exit(%d) called.", 128+sigCode)
} else {
os.Exit(128 + sigCode)
}
}()
}

Expand Down

0 comments on commit 1a621ca

Please sign in to comment.