pretty_assertions 0.1.2

Overwrite `assert_eq!` with a drop-in replacement, adding a colorful diff.
Documentation
#[macro_use]
extern crate pretty_assertions;

#[test]
#[should_panic(expected="assertion failed: `(left == right)` (left: `Some(Foo { lorem: \"Hello World!\", ipsum: 42, dolor: Ok(\"hey\") })`, right: `Some(Foo { lorem: \"Hello Wrold!\", ipsum: 42, dolor: Ok(\"hey ho!\") })`, diff: `Some(Foo { lorem: \"Hello World!\", Wrold!\", ipsum: 42, dolor: Ok(\"hey\") Ok(\"hey ho!\") }) `): custom panic message")]
fn assert_struct() {

    #[derive(Debug, PartialEq)]
    struct Foo {
        lorem: &'static str,
        ipsum: u32,
        dolor: Result<String, String>,
    }

    let x = Some(Foo { lorem: "Hello World!", ipsum: 42, dolor: Ok("hey".to_string())});
    let y = Some(Foo { lorem: "Hello Wrold!", ipsum: 42, dolor: Ok("hey ho!".to_string())});

    assert_eq!(x, y, "custom panic message");
}