slog_test.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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.createBad2()
  31. sf.createGood1()
  32. }
  33. func (sf *tester) createGood1() {
  34. sf.t.Logf("=createGood1=\n")
  35. sf.slog, sf.err = NewSlog(sf.kern)
  36. if sf.err != nil {
  37. sf.t.Errorf("createGood1(): in create ISlog, err=\n\t%v", sf.err)
  38. }
  39. sf.kern.Slog_ = sf.slog
  40. sf.slog.Debugf("Проверка good1: %v\n", "test_123")
  41. sf.slog.Infof("Проверка good1: %v\n", "test_123")
  42. sf.slog.Warnf("Проверка good1: %v\n", "test_123")
  43. sf.slog.Errorf("Проверка good1: %v\n", fmt.Errorf("test_123").Error())
  44. sf.kern.CancelApp()
  45. time.Sleep(time.Millisecond * 150)
  46. sf.slog.Debugf("Проверка good1: %v\n", "test_123 bad")
  47. sf.slog.Infof("")
  48. sf.slog.Warnf("")
  49. sf.slog.Errorf("")
  50. sf.slog.close()
  51. }
  52. // Нет объекта ядра
  53. func (sf *tester) createBad2() {
  54. sf.t.Logf("=createBad2=\n")
  55. slog, err := NewSlog(nil)
  56. if err == nil {
  57. sf.t.Errorf("createBad2(): in create ISlog, err==nil")
  58. }
  59. if slog != nil {
  60. sf.t.Errorf("createBad2): slog!=nil")
  61. }
  62. }