-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathstringz_test.go
More file actions
77 lines (73 loc) · 2 KB
/
stringz_test.go
File metadata and controls
77 lines (73 loc) · 2 KB
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
package stringz_test
import (
"testing"
. "ezpkg.io/conveyz"
"ezpkg.io/stringz"
)
func Test(t *testing.T) {
Ω := GomegaExpect
Convey("stringz", t, func() {
Convey("empty", func() {
Convey("FirstNParts", func() {
x, remain := stringz.FirstNPartsX("", 2, "<|>")
Ω(x).To(Equal(""))
Ω(remain).To(Equal(""))
})
Convey("LastNParts", func() {
x, remain := stringz.LastNPartsX("", 2, "<|>")
Ω(x).To(Equal(""))
Ω(remain).To(Equal(""))
})
})
input := "one<|>two<|>three<|>four"
Convey("FirstNParts", func() {
Convey("0", func() {
x, remain := stringz.FirstNPartsX(input, 0, "<|>")
Ω(x).To(Equal(""))
Ω(remain).To(Equal("one<|>two<|>three<|>four"))
})
Convey("2", func() {
x, remain := stringz.FirstNPartsX(input, 2, "<|>")
Ω(x).To(Equal("one<|>two"))
Ω(remain).To(Equal("three<|>four"))
})
Convey("4", func() {
x, remain := stringz.FirstNPartsX(input, 4, "<|>")
Ω(x).To(Equal("one<|>two<|>three<|>four"))
Ω(remain).To(Equal(""))
})
Convey("10", func() {
x, remain := stringz.FirstNPartsX(input, 10, "<|>")
Ω(x).To(Equal("one<|>two<|>three<|>four"))
Ω(remain).To(Equal(""))
})
})
Convey("LastNParts", func() {
Convey("0", func() {
x, remain := stringz.LastNPartsX(input, 0, "<|>")
Ω(x).To(Equal(""))
Ω(remain).To(Equal("one<|>two<|>three<|>four"))
})
Convey("1", func() {
x, remain := stringz.LastNPartsX(input, 1, "<|>")
Ω(x).To(Equal("four"))
Ω(remain).To(Equal("one<|>two<|>three"))
})
Convey("3", func() {
x, remain := stringz.LastNPartsX(input, 3, "<|>")
Ω(x).To(Equal("two<|>three<|>four"))
Ω(remain).To(Equal("one"))
})
Convey("4", func() {
x, remain := stringz.LastNPartsX(input, 4, "<|>")
Ω(x).To(Equal("one<|>two<|>three<|>four"))
Ω(remain).To(Equal(""))
})
Convey("10", func() {
x, remain := stringz.LastNPartsX(input, 10, "<|>")
Ω(x).To(Equal("one<|>two<|>three<|>four"))
Ω(remain).To(Equal(""))
})
})
})
}