Added ReadOptions; Changed proto; Reimplemented Log(er)

This commit is contained in:
Milos Gajdos
2019-11-27 17:31:35 +00:00
parent 9e177be560
commit 7deafbc5ce
8 changed files with 195 additions and 115 deletions

View File

@@ -6,21 +6,27 @@ import (
)
func TestLogger(t *testing.T) {
// set size to some value
size := 100
// override the global logger
logger = NewLog(Size(size))
// make sure we have the right size of the logger ring buffer
if logger.(*defaultLogger).Size() != DefaultSize {
t.Errorf("expected buffer size: %d, got: %d", DefaultSize, logger.(*defaultLogger).Size())
if logger.(*defaultLog).Size() != size {
t.Errorf("expected buffer size: %d, got: %d", size, logger.(*defaultLog).Size())
}
// Log some cruft
Log("foobar")
Logf("foo %s", "bar")
Info("foobar")
// increase the log level
level = LevelDebug
Debugf("foo %s", "bar")
// Check if the logs are stored in the logger ring buffer
expectedEntries := []string{"foobar", "foo bar"}
entries := logger.Read(len(expectedEntries))
expected := []string{"foobar", "foo bar"}
entries := logger.Read(Count(len(expected)))
for i, entry := range entries {
if !reflect.DeepEqual(entry, expectedEntries[i]) {
t.Errorf("expected %s, got %s", expectedEntries[i], entry)
if !reflect.DeepEqual(entry.Value, expected[i]) {
t.Errorf("expected %s, got %s", expected[i], entry.Value)
}
}
}