safe_bool_test.go 997 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package safe_bool
  2. import "testing"
  3. /*
  4. Тест для потокобезопасного булевого признака
  5. */
  6. // Тестер для булевого признака
  7. type tester struct {
  8. t *testing.T
  9. sb *БезопБул
  10. }
  11. func TestSafeBool(t *testing.T) {
  12. test := &tester{
  13. t: t,
  14. }
  15. test.create()
  16. test.set()
  17. }
  18. // Присовение и сброс признака
  19. func (сам *tester) set() {
  20. сам.t.Logf("=set=\n")
  21. сам.sb.Уст()
  22. if isReset := сам.sb.Получ(); !isReset {
  23. сам.t.Errorf("create(): isReset==true\n")
  24. }
  25. сам.sb.Сброс()
  26. if isSet := сам.sb.Получ(); isSet {
  27. сам.t.Errorf("create(): isSet==true\n")
  28. }
  29. }
  30. // Создание признака
  31. func (сам *tester) create() {
  32. сам.t.Logf("=create=\n")
  33. сам.sb = НовБезопБул()
  34. if сам.sb == nil {
  35. сам.t.Errorf("create(): safeBool==nil\n")
  36. }
  37. if isSet := сам.sb.Получ(); isSet {
  38. сам.t.Errorf("create(): isSet==true\n")
  39. }
  40. }