macro_rules! assert_equal {
    ($left:expr, $right:expr) => { ... };
    ($left:expr, $right:expr, $($description:expr),*) => { ... };
}
Expand description

Asserts that two passed arguments are equal. Panics if they’re not, using a pretty printed difference of Debug representations of the passed arguments.

This is a drop-in replacement for assert_eq macro

use k9::assert_equal;

// simple values
assert_equal!(1, 1);

#[derive(Debug, PartialEq)]
struct A {
    name: &'static str
}

let a1 = A { name: "Kelly" };
let a2 = A { name: "Kelly" };

assert_equal!(a1, a2);
let a1 = A { name: "Kelly" };
let a2 = A { name: "Rob" };

// this will print the visual difference between two structs
assert_equal!(a1, a2);