ctx_value_test.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package ctx_value
  2. import (
  3. "testing"
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0"
  5. . "gitp78su.ipnodns.ru/svi/kern/v4/lev0/core_spec"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  7. )
  8. type tester struct {
  9. t *testing.T
  10. val ICtxValue
  11. createdAt ITime
  12. }
  13. func TestCtxValue(t *testing.T) {
  14. sf := &tester{
  15. t: t,
  16. }
  17. sf.new()
  18. }
  19. // Создаёт значение локального контекста.
  20. func (sf *tester) new() {
  21. sf.t.Log("new")
  22. sf.val = NewCtxValue(lev0.LetTxt("test_key"), 5, "test_value")
  23. if sf.val == nil {
  24. sf.t.Fatalf("new(): val==nil")
  25. }
  26. if val := sf.val.Val().(defs.Int); val != 5 {
  27. sf.t.Fatalf("new(): val(%v)!=5", val)
  28. }
  29. create := sf.val.CreateAt()
  30. if create.Time().Get() == "" {
  31. sf.t.Fatalf("new(): create is empty")
  32. }
  33. sf.createdAt = create
  34. if comment := sf.val.Comment(); comment.Get() != "test_value" {
  35. sf.t.Fatalf("new(): comment(%v)!='test_value'", comment)
  36. }
  37. if key := sf.val.Key(); key.Get() != "test_key" {
  38. sf.t.Fatalf("new(): key(%v)!='test_key'", key)
  39. }
  40. if update := sf.val.UpdateAt(); update.Time().Get() != "" {
  41. sf.t.Fatalf("new(): update not empty")
  42. }
  43. }