dust/tests/statements.rs

37 lines
657 B
Rust

use dust_lang::*;
#[test]
fn loops_and_breaks() {
assert_eq!(
interpret(
"
i = 0;
loop {
if i == 3 {
break 'foobar'
} else {
i += 1
}
}
"
),
Ok(Some(Value::string("foobar".to_string())))
)
}
#[test]
fn r#if() {
assert_eq!(
interpret("if true 'foobar'"),
Ok(Some(Value::string("foobar".to_string())))
)
}
#[test]
fn if_else() {
assert_eq!(
interpret("if false 'foo' else 'bar'"),
Ok(Some(Value::string("bar".to_string())))
)
}