}
}
}
- })
+ });
+ ($left:expr , $right:expr, $($arg:tt)*) => ({
+ match (&($left), &($right)) {
+ (left_val, right_val) => {
+ if !(*left_val == *right_val) {
+ panic!("assertion failed: `(left == right)` \
+ (left: `{:?}`, right: `{:?}`): {}", left_val, right_val,
+ format_args!($($arg)*))
+ }
+ }
+ }
+ });
}
/// Ensure that a boolean expression is `true` at runtime.
assert_eq!("abc".to_string(),"abc".to_string());
assert_eq!(Box::new(Point{x:34}),Box::new(Point{x:34}));
assert_eq!(&Point{x:34},&Point{x:34});
+ assert_eq!(42, 42, "foo bar");
+ assert_eq!(42, 42, "a {} c", "b");
+ assert_eq!(42, 42, "{x}, {y}, {z}", x = 1, y = 2, z = 3);
}