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