slog_test.go 1.7 KB

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