v / vlib / datatypes
Raw file | 78 loc (70 sloc) | 1.31 KB | Latest commit hash 7d8c38672
1module datatypes
2
3fn test_is_empty() {
4 mut queue := Queue[int]{}
5 assert queue.is_empty() == true
6 queue.push(1)
7 assert queue.is_empty() == false
8}
9
10fn test_len() {
11 mut queue := Queue[int]{}
12 assert queue.len() == 0
13 queue.push(1)
14 assert queue.len() == 1
15 queue.pop()!
16 assert queue.len() == 0
17}
18
19fn test_peek() {
20 mut queue := Queue[int]{}
21 queue.push(1)
22 assert queue.peek()! == 1
23 queue.push(2)
24 assert queue.peek()! == 1
25 queue = Queue[int]{}
26 queue.peek() or { return }
27 assert false
28}
29
30fn test_last() {
31 mut queue := Queue[int]{}
32 queue.push(1)
33 assert queue.last()! == 1
34 queue.push(2)
35 assert queue.last()! == 2
36 queue = Queue[int]{}
37 queue.last() or { return }
38 assert false
39}
40
41fn test_index() {
42 mut queue := Queue[int]{}
43 queue.push(1)
44 assert queue.index(0)! == 1
45 queue.push(2)
46 assert queue.index(1)! == 2
47 queue.pop()!
48 queue.index(1) or { return }
49 assert false
50}
51
52fn test_push() {
53 mut queue := Queue[int]{}
54 queue.push(1)
55 queue.push(2)
56 assert queue.peek()! == 1
57}
58
59fn test_pop() {
60 mut queue := Queue[int]{}
61 queue.push(1)
62 queue.push(2)
63 queue.push(3)
64 assert queue.pop()! == 1
65 queue.push(4)
66 assert queue.pop()! == 2
67 assert queue.pop()! == 3
68 queue = Queue[int]{}
69 queue.pop() or { return }
70 assert false
71}
72
73fn test_array() {
74 mut queue := Queue[int]{}
75 queue.push(1)
76 queue.push(2)
77 assert queue.array() == [1, 2]
78}