4 个版本
0.1.4 | 2023年8月1日 |
---|---|
0.1.3 | 2023年5月4日 |
0.1.2 |
|
0.1.1 | 2023年4月24日 |
0.1.0 | 2023年4月21日 |
#245 在 测试 中
每月219次下载
11KB
142 行
test_suite_rs
提供宏来创建具有设置和清理函数的测试套件。每个测试块生成一个单独的测试函数,如果提供,将运行设置和清理函数。
示例
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);
}
}
生成以下代码(简化版)
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);
}
}
lib.rs
:
提供宏来创建具有设置和清理函数的测试套件。每个测试块生成一个单独的测试函数,如果提供,将运行设置和清理函数。
示例
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);
}
}
生成以下代码(简化版)
# fn setup() -> (i32, String) {
# (43, "my_string".to_owned())
# }
# fn teardown() {}
mod test_mod {
# use std::assert_eq;
use super::*;
#[test]
fn should_return_true() {
let (nbr, my_string) = setup();
assert_eq!(nbr, 43);
assert_eq!(&my_string, "my_string");
teardown();
}
}