use hase::{assemble, run, ExecutionResult};

fn number(code: &str, num: u32) {
    let bin = assemble(code).unwrap();
    assert_eq!(run(bin, false), Ok(ExecutionResult::Number(num)));
}

#[test]
fn return_one() {
    number("=1", 1);
}

#[test]
fn return_reg() {
    number("a:1\na+1\n=a", 1);
}

#[test]
fn add() {
    number("a:1\na+5\n=a", 5);
}