value_test.gno
3.49 Kb ยท 113 lines
1package expect_test
2
3import (
4 "std"
5 "testing"
6
7 "gno.land/p/jeronimoalbi/expect"
8)
9
10func TestValue(t *testing.T) {
11 t.Run("equal", func(t *testing.T) {
12 t.Parallel()
13
14 expect.Value(t, "foo").ToEqual("foo")
15 expect.Value(t, []byte("foo")).ToEqual([]byte("foo"))
16 expect.Value(t, true).ToEqual(true)
17 expect.Value(t, float32(1)).ToEqual(float32(1))
18 expect.Value(t, float64(1)).ToEqual(float64(1))
19 expect.Value(t, uint(1)).ToEqual(uint(1))
20 expect.Value(t, uint8(1)).ToEqual(uint8(1))
21 expect.Value(t, uint16(1)).ToEqual(uint16(1))
22 expect.Value(t, uint32(1)).ToEqual(uint32(1))
23 expect.Value(t, uint64(1)).ToEqual(uint64(1))
24 expect.Value(t, int(1)).ToEqual(int(1))
25 expect.Value(t, int8(1)).ToEqual(int8(1))
26 expect.Value(t, int16(1)).ToEqual(int16(1))
27 expect.Value(t, int32(1)).ToEqual(int32(1))
28 expect.Value(t, int64(1)).ToEqual(int64(1))
29 })
30
31 t.Run("not to equal", func(t *testing.T) {
32 t.Parallel()
33
34 expect.Value(t, "foo").Not().ToEqual("bar")
35 expect.Value(t, []byte("foo")).Not().ToEqual([]byte("bar"))
36 expect.Value(t, true).Not().ToEqual(false)
37 expect.Value(t, float32(1)).Not().ToEqual(float32(2))
38 expect.Value(t, float64(1)).Not().ToEqual(float64(2))
39 expect.Value(t, uint(1)).Not().ToEqual(uint(2))
40 expect.Value(t, uint8(1)).Not().ToEqual(uint8(2))
41 expect.Value(t, uint16(1)).Not().ToEqual(uint16(2))
42 expect.Value(t, uint32(1)).Not().ToEqual(uint32(2))
43 expect.Value(t, uint64(1)).Not().ToEqual(uint64(2))
44 expect.Value(t, int(1)).Not().ToEqual(int(2))
45 expect.Value(t, int8(1)).Not().ToEqual(int8(2))
46 expect.Value(t, int16(1)).Not().ToEqual(int16(2))
47 expect.Value(t, int32(1)).Not().ToEqual(int32(2))
48 expect.Value(t, int64(1)).Not().ToEqual(int64(2))
49 })
50
51 t.Run("to be nil", func(t *testing.T) {
52 t.Parallel()
53 expect.Value(t, nil).ToBeNil()
54 })
55
56 t.Run("not to be nil", func(t *testing.T) {
57 t.Parallel()
58 expect.Value(t, "").Not().ToBeNil()
59 })
60
61 t.Run("to be truthy", func(t *testing.T) {
62 t.Parallel()
63
64 expect.Value(t, "true").AsBoolean().ToBeTruthy()
65 expect.Value(t, "TRUE").AsBoolean().ToBeTruthy()
66 expect.Value(t, "t").AsBoolean().ToBeTruthy()
67 expect.Value(t, "1").AsBoolean().ToBeTruthy()
68 expect.Value(t, []byte("foo")).AsBoolean().ToBeTruthy()
69 })
70
71 t.Run("not to be truthy", func(t *testing.T) {
72 t.Parallel()
73
74 expect.Value(t, "false").AsBoolean().Not().ToBeTruthy()
75 expect.Value(t, "FALSE").AsBoolean().Not().ToBeTruthy()
76 expect.Value(t, "f").AsBoolean().Not().ToBeTruthy()
77 expect.Value(t, "0").AsBoolean().Not().ToBeTruthy()
78 expect.Value(t, []byte(nil)).AsBoolean().Not().ToBeTruthy()
79 })
80
81 t.Run("to be falsy", func(t *testing.T) {
82 t.Parallel()
83
84 expect.Value(t, "false").AsBoolean().ToBeFalsy()
85 expect.Value(t, "FALSE").AsBoolean().ToBeFalsy()
86 expect.Value(t, "f").AsBoolean().ToBeFalsy()
87 expect.Value(t, "0").AsBoolean().ToBeFalsy()
88 expect.Value(t, "").AsBoolean().ToBeFalsy()
89 expect.Value(t, []byte(nil)).AsBoolean().ToBeFalsy()
90 })
91
92 t.Run("not to be falsy", func(t *testing.T) {
93 t.Parallel()
94
95 expect.Value(t, "true").AsBoolean().Not().ToBeFalsy()
96 expect.Value(t, "TRUE").AsBoolean().Not().ToBeFalsy()
97 expect.Value(t, "t").AsBoolean().Not().ToBeFalsy()
98 expect.Value(t, "1").AsBoolean().Not().ToBeFalsy()
99 expect.Value(t, []byte("foo")).AsBoolean().Not().ToBeFalsy()
100 })
101
102 t.Run("to equal stringer", func(t *testing.T) {
103 t.Parallel()
104
105 expect.Value(t, std.Address("foo")).AsString().ToEqual("foo")
106 })
107
108 t.Run("not to equal stringer", func(t *testing.T) {
109 t.Parallel()
110
111 expect.Value(t, std.Address("foo")).AsString().Not().ToEqual("bar")
112 })
113}