# power-assert-rs [![Build Status](https://travis-ci.org/gifnksm/power-assert-rs.svg)](https://travis-ci.org/gifnksm/power-assert-rs) [![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE) [![crates.io](http://meritbadge.herokuapp.com/power-assert)](https://crates.io/crates/power-assert) Power Assert in Rust. Provides better assertion message like this: ``` $ cargo run --example normal Running `target/debug/examples/normal` thread '
' panicked at 'assertion failed: bar.val == bar.foo.val power_assert!(bar.val == bar.foo.val) | | | | | | | 3 | | | 2 | | | Foo { val: 2 } | | Bar { val: 3, foo: Foo { val: 2 } } | false Bar { val: 3, foo: Foo { val: 2 } } ', examples/normal.rs:26 An unknown error occurred To learn more, run the command again with --verbose. ``` # How to use Add this to your `Cargo.toml`: ```toml [dependencies] power-assert = "*" ``` and add this to your `lib.rs` or `main.rs`: ```rust #![feature(plugin)] #![plugin(power_assert)] ``` Now, you can use `power_assert!()` and `power_assert_eq!()`. If you want to override builtin `assert!()` and `assert_eq!()`, change your `lib.rs` or `main.rs` as follows. ```rust #![feature(plugin)] #![plugin(power_assert(override_builtins))] ```