You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
963 B
35 lines
963 B
package log |
|
|
|
import ( |
|
"bytes" |
|
"strings" |
|
"testing" |
|
"time" |
|
|
|
"github.com/stretchr/testify/assert" |
|
) |
|
|
|
func TestPatternDefault(t *testing.T) { |
|
buf := &bytes.Buffer{} |
|
p := newPatternRender("%L %T %f %M") |
|
p.Render(buf, map[string]interface{}{_level: _infoLevel.String(), _log: "hello", _time: time.Now().Format(_timeFormat), _source: "xxx:123"}) |
|
|
|
fields := strings.Fields(buf.String()) |
|
assert.Equal(t, 4, len(fields)) |
|
assert.Equal(t, "INFO", fields[0]) |
|
assert.Equal(t, "hello", fields[3]) |
|
} |
|
|
|
func TestKV(t *testing.T) { |
|
buf := &bytes.Buffer{} |
|
p := newPatternRender("%M") |
|
p.Render(buf, map[string]interface{}{_level: _infoLevel.String(), _log: "2233", "hello": "test"}) |
|
assert.Equal(t, "hello=test 2233", buf.String()) |
|
} |
|
|
|
func TestBadSymbol(t *testing.T) { |
|
buf := &bytes.Buffer{} |
|
p := newPatternRender("%12 %% %xd %M") |
|
p.Render(buf, map[string]interface{}{_level: _infoLevel.String(), _log: "2233"}) |
|
assert.Equal(t, "%12 %% %xd 2233", buf.String()) |
|
}
|
|
|