-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathinteger_test.go
79 lines (68 loc) · 1.84 KB
/
integer_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package utils
import (
"testing"
"github.com/stretchr/testify/assert"
)
func Test_Int32PointerToInt64(t *testing.T) {
var i *int32
assert.Equal(t, int64(0), Int32PointerToInt64(i))
ii := int32(12)
i = &ii
assert.Equal(t, int64(ii), Int32PointerToInt64(i))
*i = 0
assert.Equal(t, int64(0), Int32PointerToInt64(i))
}
func Test_Int32PointerToInt32(t *testing.T) {
var i *int32
assert.Equal(t, int32(0), Int32PointerToInt32(i))
ii := int32(12)
i = &ii
assert.Equal(t, ii, Int32PointerToInt32(i))
*i = 0
assert.Equal(t, int32(0), Int32PointerToInt32(i))
}
func Test_Int64PointerToInt64(t *testing.T) {
var i *int64
assert.Equal(t, int64(0), Int64PointerToInt64(i))
ii := int64(12345678901)
i = &ii
assert.Equal(t, ii, Int64PointerToInt64(i))
*i = 0
assert.Equal(t, int64(0), Int64PointerToInt64(i))
}
func Test_IsSameSliceIgnoreOrder(t *testing.T) {
a := []int64{2, 1, 3}
b := []int64{2, 1, 3}
assert.True(t, IsSameSliceIgnoreOrder(a, b))
a = []int64{2, 1, 3}
b = []int64{1, 2, 3}
assert.True(t, IsSameSliceIgnoreOrder(a, b))
a = []int64{2, 1, 3, 4}
b = []int64{1, 2, 3}
assert.False(t, IsSameSliceIgnoreOrder(a, b))
a = []int64{}
b = []int64{}
assert.True(t, IsSameSliceIgnoreOrder(a, b))
}
func Test_Int64WithLimit(t *testing.T) {
a := int64(5)
b := int64(10)
c := int64(15)
d := int64(-1)
assert.Equal(t, a, Int64WithLimit(b, a))
assert.Equal(t, b, Int64WithLimit(b, c))
assert.Equal(t, a, Int64WithLimit(d, a))
assert.NotEqual(t, c, Int64WithLimit(c, a))
}
func Test_Int64WithMinAndMaxLimit(t *testing.T) {
var (
minimum int64 = 1
maximum int64 = 25
a int64 = 5
b int64
c int64 = 26
)
assert.Equal(t, a, Int64WithMinAndMaxLimit(a, minimum, maximum))
assert.Equal(t, minimum, Int64WithMinAndMaxLimit(b, minimum, maximum))
assert.Equal(t, maximum, Int64WithMinAndMaxLimit(c, minimum, maximum))
}