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
|
package pds
import (
g "gobang"
)
func MainTest() {
g.Testing("NewList() - API usage", func() {
l := NewList[string]().Append("foo").Append("bar").Append("baz")
g.TAssertEqual(l.Get(0), "foo")
g.TAssertEqual(l.Get(1), "bar")
g.TAssertEqual(l.Get(2), "baz")
l = l.Prepend("a").Prepend("b").Prepend("c")
g.TAssertEqual(l.Get(0), "c")
g.TAssertEqual(l.Get(1), "b")
g.TAssertEqual(l.Get(2), "a")
l = l.Set(0, "_")
g.TAssertEqual(l.Get(0), "_")
l = l.Slice(1, 3)
g.TAssertEqual(l.Get(0), "b")
g.TAssertEqual(l.Get(1), "a")
g.TAssertEqual(l.Len(), 2)
})
g.Testing("NewList().Iterator() - API usage", func() {
l := NewList[string]()
l = l.Append("foo")
l = l.Append("bar")
l = l.Append("baz")
indexes := []int{}
values := []string{}
itr := l.Iterator()
for !itr.Done() {
i, v := itr.Next()
indexes = append(indexes, i)
values = append(values, v)
}
itr.Last()
for !itr.Done() {
i, v := itr.Prev()
indexes = append(indexes, i)
values = append(values, v)
}
g.TAssertEqual(indexes, []int{0, 1, 2, 2, 1, 0})
g.TAssertEqual(values, []string{
"foo",
"bar",
"baz",
"baz",
"bar",
"foo",
})
})
}
|