log_msg_test.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package log_msg
  2. import (
  3. "strings"
  4. "testing"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  6. )
  7. type tester struct {
  8. t *testing.T
  9. }
  10. func TestLogMsg(t *testing.T) {
  11. sf := &tester{
  12. t: t,
  13. }
  14. sf.new()
  15. }
  16. // Создаёт сообщение.
  17. func (sf *tester) new() {
  18. sf.t.Log("new")
  19. sf.newBad1()
  20. sf.newGood1()
  21. }
  22. func (sf *tester) newGood1() {
  23. sf.t.Log("newGood1")
  24. _ = NewLogMsg(-3, defs.Txt("test msg -3"))
  25. _ = NewLogMsg(-2, defs.Txt("test msg -2"))
  26. _ = NewLogMsg(-1, defs.Txt("test msg -1"))
  27. msg := NewLogMsg(0, defs.Txt("test msg 0"))
  28. if msg := msg.Msg(); msg.Get() != "test msg 0" {
  29. sf.t.Fatalf("newGood1(): msg(%v)!='test msg 0'", msg)
  30. }
  31. if lvl := msg.Level(); lvl.Get() != "ERRO" {
  32. sf.t.Fatalf("newGood1(): lvl(%v)!='ERRO'", lvl)
  33. }
  34. if createAt := msg.CreateAt(); createAt.Time().Get() == "" {
  35. sf.t.Fatalf("newGood1(): createAt is empty")
  36. }
  37. if str := msg.String(); !strings.Contains(str, "ERRO 2") {
  38. sf.t.Fatalf("newGood1(): str(%v)!=`ERRO 2`", str)
  39. }
  40. }
  41. // Неправильный уровень сообщения.
  42. func (sf *tester) newBad1() {
  43. sf.t.Log("newBad1")
  44. defer func() {
  45. if _panic := recover(); _panic == nil {
  46. sf.t.Fatalf("newBad1(): panic==nil")
  47. }
  48. }()
  49. _ = NewLogMsg(-10, defs.Txt("test msg"))
  50. }