slog_test.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. package slog
  2. import (
  3. "fmt"
  4. "os"
  5. "testing"
  6. "time"
  7. "wartank/pkg/mock/mockkernel"
  8. )
  9. /*
  10. Тестер для логера
  11. */
  12. // Создание тестера
  13. type tester struct {
  14. t *testing.T
  15. err error
  16. kern *mockkernel.MockKernel
  17. slog *Slog
  18. }
  19. func TestSlog(t *testing.T) {
  20. test := &tester{
  21. t: t,
  22. kern: mockkernel.NewMockKernel(),
  23. }
  24. test.create()
  25. _ = os.RemoveAll("./log")
  26. }
  27. // Создание логера
  28. func (sf *tester) create() {
  29. sf.t.Logf("=create=\n")
  30. sf.createBad1()
  31. sf.createBad2()
  32. sf.createGood1()
  33. }
  34. func (sf *tester) createGood1() {
  35. sf.t.Logf("=createGood1=\n")
  36. sf.slog, sf.err = NewSlog(sf.kern)
  37. if sf.err != nil {
  38. sf.t.Errorf("createGood1(): in create ISlog, err=\n\t%v", sf.err)
  39. }
  40. sf.kern.Slog_ = sf.slog
  41. sf.slog.Debugf("Проверка good1: %v\n", "test_123")
  42. sf.slog.Infof("Проверка good1: %v\n", "test_123")
  43. sf.slog.Warnf("Проверка good1: %v\n", "test_123")
  44. sf.slog.Errorf("Проверка good1: %v\n", fmt.Errorf("test_123").Error())
  45. sf.kern.CancelApp()
  46. time.Sleep(time.Millisecond * 150)
  47. sf.slog.Debugf("Проверка good1: %v\n", "test_123 bad")
  48. sf.slog.Infof("")
  49. sf.slog.Warnf("")
  50. sf.slog.Errorf("")
  51. sf.slog.close()
  52. }
  53. // Нет объекта ядра
  54. func (sf *tester) createBad2() {
  55. sf.t.Logf("=createBad2=\n")
  56. slog, err := NewSlog(nil)
  57. if err == nil {
  58. sf.t.Errorf("createBad2(): in create ISlog, err==nil")
  59. }
  60. if slog != nil {
  61. sf.t.Errorf("createBad2): slog!=nil")
  62. }
  63. }
  64. // Нет строки сборки
  65. func (sf *tester) createBad1() {
  66. sf.t.Logf("=createBad1=\n")
  67. slog, err := NewSlog(sf.kern)
  68. if err == nil {
  69. sf.t.Errorf("createBad1(): in create ISlog, err==nil")
  70. }
  71. if slog != nil {
  72. sf.t.Errorf("createBad1(): slog!=nil")
  73. }
  74. // os.RemoveAll(slog.)
  75. }