Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package orusapi
import (
"bytes"
"testing"
"github.com/rs/zerolog"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestLogging(t *testing.T) {
var (
buf bytes.Buffer
log zerolog.Logger
)
var o LoggingOptions
require.NoError(t, o.Setup(&log, &buf))
assert.Equal(t, zerolog.WarnLevel, o.log.GetLevel())
o.Verbose()
assert.Equal(t, zerolog.InfoLevel, o.log.GetLevel())
o.Verbose()
assert.Equal(t, zerolog.DebugLevel, o.log.GetLevel())
o.Verbose()
assert.Equal(t, zerolog.TraceLevel, o.log.GetLevel())
require.NoError(t, o.Level("fatal"))
assert.Equal(t, zerolog.FatalLevel, o.log.GetLevel())
require.NoError(t, o.Level("info"))
assert.Equal(t, zerolog.InfoLevel, o.log.GetLevel())
require.NoError(t, o.Format("pretty"))
log.Warn().Msg("this is a warning")
assert.Contains(t, buf.String(), "WRN")
buf.Reset()
require.NoError(t, o.Format("json"))
log.Warn().Msg("this is a warning")
assert.Contains(t, buf.String(), "{")
}