mirror of
https://github.com/bearlanguageorg/bear.git
synced 2026-08-26 15:37:18 +00:00
Loops
This commit is contained in:
@@ -35,6 +35,49 @@ fn test_booleans() {
|
||||
assert not (x == 0)
|
||||
}
|
||||
|
||||
fn test_arrays() {
|
||||
let a = [1, 2, 3]
|
||||
assert len(a) == 3
|
||||
assert a[0] == 1
|
||||
assert a[2] == 3
|
||||
a[1] = 42
|
||||
assert a[1] == 42
|
||||
push(a, 4)
|
||||
assert len(a) == 4
|
||||
assert a[3] == 4
|
||||
let m = [[1, 2], [3, 4]]
|
||||
assert m[1][0] == 3
|
||||
}
|
||||
|
||||
fn test_for_range() {
|
||||
let total = 0
|
||||
for i in 0..5 {
|
||||
total = total + i
|
||||
}
|
||||
assert total == 10 // 0+1+2+3+4
|
||||
let inc = 0
|
||||
for i in 1...3 {
|
||||
inc = inc + i
|
||||
}
|
||||
assert inc == 6 // 1+2+3 (inclusive)
|
||||
}
|
||||
|
||||
fn test_for_in() {
|
||||
let a = [5, 6, 7]
|
||||
let total = 0
|
||||
for x in a {
|
||||
total = total + x
|
||||
}
|
||||
assert total == 18
|
||||
let squares = []
|
||||
for i in 0..4 {
|
||||
push(squares, i * i)
|
||||
}
|
||||
assert squares == squares // identity comparison
|
||||
assert len(squares) == 4
|
||||
assert squares[3] == 9
|
||||
}
|
||||
|
||||
fn test_failing() {
|
||||
// this one is meant to fail — shows up in `vr test` output
|
||||
assert 1 == 2
|
||||
|
||||
Reference in New Issue
Block a user