2
0
mirror of https://github.com/chubin/cheat.sheets synced 2024-11-17 09:25:32 +00:00

Merge pull request #112 from lucis-fluxum/rust-tests

Add sheet for unit tests in Rust
This commit is contained in:
Igor Chubin 2020-10-01 07:28:16 +02:00 committed by GitHub
commit ee5214ba3e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

25
sheets/_rust/tests Normal file
View File

@ -0,0 +1,25 @@
// Usually we place tests in a `tests` module. This module can be co-located in the file
// containing the module under test, or it can be located in a separate file
// (i.e. my_module.rs may have a child file, my_module/tests.rs, that contains a
// `tests` module)
// Tests are compiled only if the `test` cfg attribute is true (like when running `cargo test`)
#[cfg(test)]
mod tests {
// The `test` attribute macro identifies functions that will run as tests
#[test]
fn basic_addition() {
// `assert_eq` checks equality, and `assert` checks a boolean condition
assert_eq!(1 + 1, 2);
assert!(1 + 1 == 2);
// There is also `assert_ne`, which checks for inequality
}
#[test]
// The `should_panic` attribute macro identifies tests that should panic; therefore,
// with this macro, a test that does not panic will fail
#[should_panic]
fn oh_no() {
panic!("this is an expected failure!");
}
}