2015-10-13 12:27:29 -04:00
|
|
|
package log
|
|
|
|
|
|
|
|
import (
|
2015-11-03 14:24:29 -05:00
|
|
|
"bytes"
|
2015-11-28 17:13:45 -05:00
|
|
|
"log"
|
2015-10-13 12:27:29 -04:00
|
|
|
"testing"
|
|
|
|
|
2016-01-18 06:24:33 -05:00
|
|
|
"github.com/v2ray/v2ray-core/common/serial"
|
2015-12-02 09:27:18 -05:00
|
|
|
v2testing "github.com/v2ray/v2ray-core/testing"
|
|
|
|
"github.com/v2ray/v2ray-core/testing/assert"
|
2015-10-13 12:27:29 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestLogLevelSetting(t *testing.T) {
|
2015-12-02 09:27:18 -05:00
|
|
|
v2testing.Current(t)
|
2015-10-13 12:27:29 -04:00
|
|
|
|
|
|
|
assert.Pointer(debugLogger).Equals(noOpLoggerInstance)
|
|
|
|
SetLogLevel(DebugLevel)
|
|
|
|
assert.Pointer(debugLogger).Equals(streamLoggerInstance)
|
|
|
|
|
|
|
|
SetLogLevel(InfoLevel)
|
|
|
|
assert.Pointer(debugLogger).Equals(noOpLoggerInstance)
|
|
|
|
assert.Pointer(infoLogger).Equals(streamLoggerInstance)
|
|
|
|
}
|
2015-11-03 14:24:29 -05:00
|
|
|
|
|
|
|
func TestStreamLogger(t *testing.T) {
|
2015-12-02 09:27:18 -05:00
|
|
|
v2testing.Current(t)
|
2015-11-03 14:24:29 -05:00
|
|
|
|
|
|
|
buffer := bytes.NewBuffer(make([]byte, 0, 1024))
|
2015-12-05 15:10:14 -05:00
|
|
|
infoLogger = &stdOutLogWriter{
|
2015-11-28 17:13:45 -05:00
|
|
|
logger: log.New(buffer, "", 0),
|
2015-11-03 14:24:29 -05:00
|
|
|
}
|
2016-01-18 06:24:33 -05:00
|
|
|
Info("Test ", "Stream Logger", " Format")
|
|
|
|
assert.StringLiteral(string(buffer.Bytes())).Equals("[Info]Test Stream Logger Format\n")
|
2015-11-03 14:30:14 -05:00
|
|
|
|
|
|
|
buffer.Reset()
|
2015-12-05 15:10:14 -05:00
|
|
|
errorLogger = infoLogger
|
2016-01-18 06:24:33 -05:00
|
|
|
Error("Test ", serial.StringLiteral("literal"), " Format")
|
|
|
|
assert.StringLiteral(string(buffer.Bytes())).Equals("[Error]Test literal Format\n")
|
2015-11-03 14:24:29 -05:00
|
|
|
}
|