package safebool import "testing" /* Тест для потокобезопасного булевого признака */ // Тестер для булевого признака type tester struct { t *testing.T sb *SafeBool } func TestSafeBool(t *testing.T) { test := &tester{ t: t, } test.create() test.set() } // Присовение и сброс признака func (sf *tester) set() { sf.t.Logf("=set=\n") sf.sb.Set() if isReset := sf.sb.Get(); !isReset { sf.t.Errorf("create(): isReset==true\n") } sf.sb.Reset() if isSet := sf.sb.Get(); isSet { sf.t.Errorf("create(): isSet==true\n") } } // Создание признака func (sf *tester) create() { sf.t.Logf("=create=\n") sf.sb = NewSafeBool() if sf.sb == nil { sf.t.Errorf("create(): safeBool==nil\n") } if isSet := sf.sb.Get(); isSet { sf.t.Errorf("create(): isSet==true\n") } }