tree: b0e409de575e3de85584b04c76e418c134bfe41e [path history] [tgz]
  1. .github/
  2. src/
  3. tests/
  4. .cargo-checksum.json
  5. .cargo_vcs_info.json
  6. BUILD.bazel
  7. Cargo.toml
  8. Cargo.toml.orig
  9. LICENSE-APACHE
  10. LICENSE-MIT
  11. README.md
third_party/rust_crates/vendor/assert_matches-1.5.0/README.md

assert_matches

Provides a macro, assert_matches, which tests whether a value matches a given pattern, causing a panic if the match fails.

Documentation

#[macro_use] extern crate assert_matches;

#[derive(Debug)]
enum Foo {
    A(i32),
    B(i32),
}

let a = Foo::A(1);

assert_matches!(a, Foo::A(_));

assert_matches!(a, Foo::A(i) if i > 0);

To include in your project, only when tests are compiled, add the following to your Cargo.toml:

[dev-dependencies]
assert_matches = "1.5"

And add the following to your crate root:

#[cfg(test)] #[macro_use]
extern crate assert_matches;

License

assert_matches is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.