log_test.go 937 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package log
  2. import (
  3. "bytes"
  4. "log"
  5. "testing"
  6. v2testing "github.com/v2ray/v2ray-core/testing"
  7. "github.com/v2ray/v2ray-core/testing/assert"
  8. )
  9. func TestLogLevelSetting(t *testing.T) {
  10. v2testing.Current(t)
  11. assert.Pointer(debugLogger).Equals(noOpLoggerInstance)
  12. SetLogLevel(DebugLevel)
  13. assert.Pointer(debugLogger).Equals(streamLoggerInstance)
  14. SetLogLevel(InfoLevel)
  15. assert.Pointer(debugLogger).Equals(noOpLoggerInstance)
  16. assert.Pointer(infoLogger).Equals(streamLoggerInstance)
  17. }
  18. func TestStreamLogger(t *testing.T) {
  19. v2testing.Current(t)
  20. buffer := bytes.NewBuffer(make([]byte, 0, 1024))
  21. infoLogger = &stdOutLogWriter{
  22. logger: log.New(buffer, "", 0),
  23. }
  24. Info("Test %s Format", "Stream Logger")
  25. assert.Bytes(buffer.Bytes()).Equals([]byte("[Info]Test Stream Logger Format\n"))
  26. buffer.Reset()
  27. errorLogger = infoLogger
  28. Error("Test No Format")
  29. assert.Bytes(buffer.Bytes()).Equals([]byte("[Error]Test No Format\n"))
  30. }