MCPcopy
hub / github.com/uber-go/zap / TestIOCore

Function TestIOCore

zapcore/core_test.go:70–109  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

68}
69
70func TestIOCore(t *testing.T) {
71 temp, err := os.CreateTemp(t.TempDir(), "test.log")
72 require.NoError(t, err)
73
74 // Drop timestamps for simpler assertions (timestamp encoding is tested
75 // elsewhere).
76 cfg := testEncoderConfig()
77 cfg.TimeKey = ""
78
79 core := NewCore(
80 NewJSONEncoder(cfg),
81 temp,
82 InfoLevel,
83 ).With([]Field{makeInt64Field("k", 1)})
84 defer assert.NoError(t, core.Sync(), "Expected Syncing a temp file to succeed.")
85
86 t.Run("LevelOf", func(t *testing.T) {
87 assert.Equal(t, InfoLevel, LevelOf(core), "Incorrect Core Level")
88 })
89
90 if ce := core.Check(Entry{Level: DebugLevel, Message: "debug"}, nil); ce != nil {
91 ce.Write(makeInt64Field("k", 2))
92 }
93 if ce := core.Check(Entry{Level: InfoLevel, Message: "info"}, nil); ce != nil {
94 ce.Write(makeInt64Field("k", 3))
95 }
96 if ce := core.Check(Entry{Level: WarnLevel, Message: "warn"}, nil); ce != nil {
97 ce.Write(makeInt64Field("k", 4))
98 }
99
100 logged, err := os.ReadFile(temp.Name())
101 require.NoError(t, err, "Failed to read from temp file.")
102 require.Equal(
103 t,
104 `{"level":"info","msg":"info","k":1,"k":3}`+"\n"+
105 `{"level":"warn","msg":"warn","k":1,"k":4}`+"\n",
106 string(logged),
107 "Unexpected log output.",
108 )
109}
110
111func TestIOCoreSyncFail(t *testing.T) {
112 sink := &ztest.Discarder{}

Callers

nothing calls this directly

Calls 10

testEncoderConfigFunction · 0.85
NewCoreFunction · 0.85
NewJSONEncoderFunction · 0.85
makeInt64FieldFunction · 0.85
LevelOfFunction · 0.85
WithMethod · 0.65
SyncMethod · 0.65
CheckMethod · 0.65
WriteMethod · 0.65
NameMethod · 0.65

Tested by

no test coverage detected