package slog import ( "fmt" "os" "testing" "time" "wartank/pkg/mock/mockkernel" ) /* Тестер для логера */ // Создание тестера type tester struct { t *testing.T err error kern *mockkernel.MockKernel slog *Slog } func TestSlog(t *testing.T) { test := &tester{ t: t, kern: mockkernel.NewMockKernel(), } test.create() _ = os.RemoveAll("./log") } // Создание логера func (сам *tester) create() { сам.t.Logf("=create=\n") сам.createBad2() сам.createGood1() } func (сам *tester) createGood1() { сам.t.Logf("=createGood1=\n") сам.slog, сам.err = NewSlog(сам.kern) if сам.err != nil { сам.t.Errorf("createGood1(): in create ISlog, err=\n\t%v", сам.err) } сам.kern.Slog_ = сам.slog сам.slog.Debugf("Проверка good1: %v\n", "test_123") сам.slog.Infof("Проверка good1: %v\n", "test_123") сам.slog.Warnf("Проверка good1: %v\n", "test_123") сам.slog.Errorf("Проверка good1: %v\n", fmt.Errorf("test_123").Error()) сам.kern.CancelApp() time.Sleep(time.Millisecond * 150) сам.slog.Debugf("Проверка good1: %v\n", "test_123 bad") сам.slog.Infof("") сам.slog.Warnf("") сам.slog.Errorf("") сам.slog.close() } // Нет объекта ядра func (сам *tester) createBad2() { сам.t.Logf("=createBad2=\n") slog, err := NewSlog(nil) if err == nil { сам.t.Errorf("createBad2(): in create ISlog, err==nil") } if slog != nil { сам.t.Errorf("createBad2): slog!=nil") } }