kint_test.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package kint
  2. import (
  3. "os"
  4. "testing"
  5. )
  6. type tester struct {
  7. t *testing.T
  8. }
  9. func TestKInt(t *testing.T) {
  10. sf := &tester{
  11. t: t,
  12. }
  13. sf.new()
  14. }
  15. // новый KInt
  16. func (sf *tester) new() {
  17. sf.t.Log("new")
  18. val := NewInt(12)
  19. if val == nil {
  20. sf.t.Fatalf("new(): val==nil")
  21. }
  22. val0 := val.Get()
  23. if val0 != 12 {
  24. sf.t.Fatalf("new(): val0=%v !12", val0)
  25. }
  26. val.Set(14)
  27. if val.Get() != 14 {
  28. sf.t.Fatalf("new(): val=%v !14", val.Get())
  29. }
  30. val.Reset()
  31. if val.Get() != 0 {
  32. sf.t.Fatalf("new(): val=%v !0", val.Get())
  33. }
  34. resStr := val.FromStr("26")
  35. if val.Get() != 26 {
  36. sf.t.Fatalf("new(): val=%v !26", val.Get())
  37. }
  38. resStr.Hassert("bad convert")
  39. resStr = val.FromStr("k26")
  40. if val.Get() != 26 {
  41. sf.t.Fatalf("new(): val=%v !26", val.Get())
  42. }
  43. if !resStr.IsErr() {
  44. sf.t.Fatalf("new(): err==nil")
  45. }
  46. strVal := val.ToStr()
  47. if strVal != "26" {
  48. sf.t.Fatalf("new(): val=%v !26", strVal)
  49. }
  50. binData := val.ToByte()
  51. if len(binData) != 8 {
  52. sf.t.Fatalf("new(): len=%v !8", len(binData))
  53. }
  54. resInt := val.FromByte(binData)
  55. resInt.Hassert("FromByte")
  56. binData = binData[:2]
  57. resInt = val.FromByte(binData)
  58. if !resStr.IsErr() {
  59. sf.t.Fatalf("new(): err==nil")
  60. }
  61. resInt = val.FromByte([]byte("travolta"))
  62. if !resStr.IsErr() {
  63. sf.t.Fatalf("new(): err==nil")
  64. }
  65. valBool := val.FromBool(true)
  66. if valBool != -1 {
  67. sf.t.Fatalf("new(): isVal==false")
  68. }
  69. valBool = val.FromBool(false)
  70. if valBool != 0 {
  71. sf.t.Fatalf("new(): isVal==true")
  72. }
  73. val.Set(3)
  74. isBool := val.ToBool()
  75. if !isBool {
  76. sf.t.Fatalf("new(): isBool==false")
  77. }
  78. _ = os.Unsetenv("TEST_VAL")
  79. _ = os.Setenv("TEST_VAL", "57")
  80. resInt = val.Getenv("TEST_VAL")
  81. resInt.Hassert("get env")
  82. if resInt.Val() != 57 {
  83. sf.t.Fatalf("new(): isVal==true")
  84. }
  85. _ = os.Unsetenv("TEST_VAL")
  86. _ = os.Setenv("TEST_VAL", "u578")
  87. resInt = val.Getenv("TEST_VAL")
  88. if resInt.IsOk() {
  89. sf.t.Fatalf("new(): ok==true")
  90. }
  91. if val.Get() != 57 {
  92. sf.t.Fatalf("new(): val=%v !57", val.Get())
  93. }
  94. val.Inc()
  95. if val.Get() != 58 {
  96. sf.t.Fatalf("new(): val=%v !58", val.Get())
  97. }
  98. val.Dec()
  99. if val.Get() != 57 {
  100. sf.t.Fatalf("new(): val=%v !57", val.Get())
  101. }
  102. }