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