zig/test/cases/if.zig

39 lines
659 B
Zig
Raw Normal View History

2017-01-05 16:57:48 +08:00
const assert = @import("std").debug.assert;
test "ifStatements" {
2016-12-22 13:20:14 +08:00
shouldBeEqual(1, 1);
firstEqlThird(2, 1, 2);
}
fn shouldBeEqual(a: i32, b: i32) {
if (a != b) {
@unreachable();
} else {
return;
}
}
fn firstEqlThird(a: i32, b: i32, c: i32) {
if (a == b) {
@unreachable();
} else if (b == c) {
@unreachable();
} else if (a == c) {
return;
} else {
@unreachable();
}
}
test "elseIfExpression" {
2016-12-22 14:42:30 +08:00
assert(elseIfExpressionF(1) == 1);
}
fn elseIfExpressionF(c: u8) -> u8 {
if (c == 0) {
0
} else if (c == 1) {
1
} else {
u8(2)
}
}