power-assert

Crates.iopower-assert
lib.rspower-assert
version0.3.9
sourcesrc
created_at2015-08-30 14:17:00.030941
updated_at2016-02-27 14:10:26.257767
descriptionPower Assert in Rust. Provides better assertion message.
homepage
repositoryhttps://github.com/gifnksm/power-assert-rs
max_upload_size
id2964
size25,547
NAKASHIMA, Makoto (gifnksm)

documentation

README

power-assert-rs

Build Status MIT licensed crates.io

Power Assert in Rust. Provides better assertion message like this:

$ cargo run --example normal
     Running `target/debug/examples/normal`
thread '<main>' 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:

[dependencies]
power-assert = "*"

and add this to your lib.rs or main.rs:

#![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.

#![feature(plugin)]
#![plugin(power_assert(override_builtins))]
Commit count: 47

cargo fmt