Testing Rust Projects
Assert Equal
Check a Computed Value
assert_eq! verifies that an actual value equals the expected value. If they differ, the program stops with a clear failure.
Program
Play the program to choose a subtotal, compute a total, and check it with assert_eq!.
assert_equal.rs
fn main() {
let subtotal = ;
let total = add_fee(subtotal);
let expected = subtotal + 2;
assert_eq!(total, expected);
println!("{total}");
}
fn add_fee(value: i32) -> i32 {
value + 2
}
fn main() {
let subtotal = ;
let total = add_fee(subtotal);
let expected = subtotal + 2;
assert_eq!(total, expected);
println!("{total}");
}
fn add_fee(value: i32) -> i32 {
value + 2
}
fn main() {
let subtotal = ;
let total = add_fee(subtotal);
let expected = subtotal + 2;
assert_eq!(total, expected);
println!("{total}");
}
fn add_fee(value: i32) -> i32 {
value + 2
}
assert_eq!
`assert_eq!(actual, expected)` records the intended relationship in executable code.
expected value
Computing `expected` separately makes the test intent visible.
testable helper
`add_fee` is small and deterministic, so it is easy to check.