v2 / vlib / builtin / linux_bare / old / .checks / string / string.v
63 lines · 52 sloc · 1.43 KB · 0874376db0ac39440e5201986576ebe53a7f1e7a
Raw
1module main
2
3import builtin.linux_bare.old.checks.forkedtest
4
5fn check_string_eq() {
6 assert 'monkey' != 'rat'
7 some_animal := 'a bird'
8 assert some_animal == 'a bird'
9}
10
11fn check_i64_tos() {
12 buffer0 := []u8{len: (128)}
13 buffer := byteptr(buffer0.data)
14
15 s0 := i64_tos(buffer, 70, 140, 10)
16 assert s0 == '140'
17
18 s1 := i64_tos(buffer, 70, -160, 10)
19 assert s1 == '-160'
20
21 s2 := i64_tos(buffer, 70, 65537, 16)
22 assert s2 == '10001'
23
24 s3 := i64_tos(buffer, 70, -160000, 10)
25 assert s3 == '-160000'
26}
27
28fn check_i64_str() {
29 assert '141' == i64_str(141, 10)
30 assert '-161' == i64_str(-161, 10)
31 assert '10002' == i64_str(65538, 16)
32 assert '-160001' == i64_str(-160001, 10)
33}
34
35fn check_str_clone() {
36 a := i64_str(1234, 10)
37 b := a.clone()
38 assert a == b
39 c := i64_str(-6789, 10).clone()
40 assert c == '-6789'
41}
42
43fn check_string_add_works() {
44 abc := 'abc'
45 combined := 'a' + 'b' + 'c'
46 assert abc.len == combined.len
47 assert abc[0] == combined[0]
48 assert abc[1] == combined[1]
49 assert abc[2] == combined[2]
50 assert abc[0] == `a`
51 assert abc == combined
52}
53
54fn main() {
55 mut fails := 0
56 fails += forkedtest.normal_run(check_string_eq, 'check_string_eq')
57 fails += forkedtest.normal_run(check_i64_tos, 'check_i64_tos')
58 fails += forkedtest.normal_run(check_i64_str, 'check_i64_str')
59 fails += forkedtest.normal_run(check_str_clone, 'check_str_clone')
60 fails += forkedtest.normal_run(check_string_add_works, 'check_string_add_works')
61 assert fails == 0
62 sys_exit(0)
63}
64