v2 / vlib / v / tests / loops / for_c_multi_vars_test.v
34 lines · 33 sloc · 645 bytes · 6488041a749df9762348d019c4223908c476f2e2
Raw
1fn test_for_c_multi_init_vars() {
2 mut rets := []string{}
3 for a, b := 0, 1; a < 5; a++ {
4 if a == 3 {
5 continue
6 }
7 b = a + 1
8 println('${a}, ${b}')
9 rets << '${a}, ${b}'
10 }
11 println(rets)
12 assert rets[0] == '0, 1'
13 assert rets[1] == '1, 2'
14 assert rets[2] == '2, 3'
15 assert rets[3] == '4, 5'
16}
17
18fn test_for_c_multi_inc_vars() {
19 mut rets := []string{}
20 mut b := 1
21 for a := 0; a < 10; a, b = b, a + b {
22 if a in [2, 3] {
23 continue
24 }
25 println('${a}, ${b}')
26 rets << '${a}, ${b}'
27 }
28 println(rets)
29 assert rets[0] == '0, 1'
30 assert rets[1] == '1, 1'
31 assert rets[2] == '1, 2'
32 assert rets[3] == '5, 8'
33 assert rets[4] == '8, 13'
34}
35