Crates.io | test_suite_rs |
lib.rs | test_suite_rs |
version | 0.1.4 |
source | src |
created_at | 2023-04-21 16:04:49.729438 |
updated_at | 2023-08-01 08:01:03.075058 |
description | Provides a macro to create a test suite with a setup and teardown function |
homepage | https://github.com/Aeradriel/test_suite_rs |
repository | https://github.com/Aeradriel/test_suite_rs |
max_upload_size | |
id | 845445 |
size | 11,516 |
Provides a macro to create a test suite with a setup and teardown function. Each test block generates a separate test function that will run setup and teardown functions if provided.
use test_suite_rs::test_suite;
fn setup() -> (i32, String) {
(43, "my_string".to_owned())
}
fn teardown() {}
test_suite! {
- name: test_mod
- setup: setup(i32, String)
- teardown: teardown
test should_return_true(nbr, my_string) {
assert_eq!(nbr, 43);
assert_eq!(&my_string, "my_string");
}
test should_return_false {
assert!(true);
}
}
Generates the following code (simplified):
mod test_mod {
use super::*;
#[test]
fn should_return_true() {
let (nbr, my_string) = setup();
assert_eq!(nbr, 43);
assert_eq!(&my_string, "my_string");
teardown();
}
#[test]
fn should_return_false() {
assert!(true);
}
}