Merge pull request #360 from nats-io/fix_setlogger

[FIXED] SetLogger to be able to set debug/trace to 0
This commit is contained in:
Derek Collison
2016-10-06 08:50:55 -07:00
committed by GitHub
2 changed files with 15 additions and 2 deletions

View File

@@ -39,10 +39,13 @@ type Logger interface {
func (s *Server) SetLogger(logger Logger, debugFlag, traceFlag bool) {
if debugFlag {
atomic.StoreInt32(&debug, 1)
} else {
atomic.StoreInt32(&debug, 0)
}
if traceFlag {
atomic.StoreInt32(&trace, 1)
} else {
atomic.StoreInt32(&trace, 0)
}
log.Lock()

View File

@@ -8,7 +8,8 @@ import (
func TestSetLogger(t *testing.T) {
server := &Server{}
server.SetLogger(&DummyLogger{}, true, true)
dl := &DummyLogger{}
server.SetLogger(dl, true, true)
// We assert that the logger has change to the DummyLogger
_ = log.logger.(*DummyLogger)
@@ -20,6 +21,15 @@ func TestSetLogger(t *testing.T) {
if trace != 1 {
t.Fatalf("Expected trace 1, received value %d\n", trace)
}
// Make sure that we can reset to fal
server.SetLogger(dl, false, false)
if debug != 0 {
t.Fatalf("Expected debug 0, got %v", debug)
}
if trace != 0 {
t.Fatalf("Expected trace 0, got %v", trace)
}
}
type DummyLogger struct{}