quark_val_test.go 952 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package quark_val
  2. import "testing"
  3. type tester struct {
  4. t *testing.T
  5. }
  6. func TestQuarkVal(t *testing.T) {
  7. sf := &tester{
  8. t: t,
  9. }
  10. sf.newFix()
  11. sf.newMut()
  12. }
  13. // Создание нового мутабельного значения.
  14. func (sf *tester) newMut() {
  15. sf.t.Log("newMut")
  16. f := NewFieldMut(10)
  17. if f == nil {
  18. sf.t.Fatalf("newMut(): f==nil")
  19. }
  20. if v := f.Get(); v != 10 {
  21. sf.t.Fatalf("newMut(): v!=10")
  22. }
  23. Set(f, 32)
  24. if v := f.Get(); v != 32 {
  25. sf.t.Fatalf("newMut(): v(%v)!=32", v)
  26. }
  27. }
  28. // Создание нового фиксированного значения.
  29. func (sf *tester) newFix() {
  30. sf.t.Log("newFix")
  31. f := NewField(10)
  32. if f == nil {
  33. sf.t.Fatalf("newFix(): f==nil")
  34. }
  35. if v := f.Get(); v != 10 {
  36. sf.t.Fatalf("newFix(): v!=10")
  37. }
  38. // Эту функцию вызвать нельзя -- тип другой
  39. // Set(f, 34)
  40. // if v := f.Get(); v != 10 {
  41. // sf.t.Fatalf("newFix(): v(%v)!=10", v)
  42. // }
  43. }