1
0
mirror of https://github.com/go-micro/go-micro.git synced 2025-01-05 10:20:53 +02:00
go-micro/debug/log/memory/memory_test.go

33 lines
808 B
Go
Raw Normal View History

2019-12-17 20:16:45 +02:00
package memory
2019-11-27 18:02:16 +02:00
import (
"reflect"
"testing"
2019-12-17 20:16:45 +02:00
2021-10-12 13:55:53 +02:00
"go-micro.dev/v4/debug/log"
2019-11-27 18:02:16 +02:00
)
func TestLogger(t *testing.T) {
// set size to some value
size := 100
// override the global logger
2019-12-17 20:16:45 +02:00
lg := NewLog(log.Size(size))
2019-11-27 18:02:16 +02:00
// make sure we have the right size of the logger ring buffer
2019-12-17 20:16:45 +02:00
if lg.(*memoryLog).Size() != size {
t.Errorf("expected buffer size: %d, got: %d", size, lg.(*memoryLog).Size())
2019-11-27 18:02:16 +02:00
}
// Log some cruft
2019-12-18 18:02:11 +02:00
lg.Write(log.Record{Message: "foobar"})
lg.Write(log.Record{Message: "foo bar"})
2019-11-27 18:02:16 +02:00
// Check if the logs are stored in the logger ring buffer
expected := []string{"foobar", "foo bar"}
2019-12-17 20:16:45 +02:00
entries, _ := lg.Read(log.Count(len(expected)))
2019-11-27 18:02:16 +02:00
for i, entry := range entries {
2019-12-18 18:02:11 +02:00
if !reflect.DeepEqual(entry.Message, expected[i]) {
t.Errorf("expected %s, got %s", expected[i], entry.Message)
2019-11-27 18:02:16 +02:00
}
}
}