3个版本
使用旧Rust 2015
0.1.2 | 2018年10月26日 |
---|---|
0.1.1 | 2018年10月26日 |
0.1.0 | 2018年10月25日 |
#2 in #oyster-pack
51 每月下载量
用于 2 crates
13KB
106 代码行数,不包括注释
此crate旨在作为开发依赖项使用。其目的是提供测试支持,以帮助减少样板代码、重复,并提供标准化。
以下宏提供
- op_tests_mod
- 提供配置测试日志的支持
- 记录测试执行时间
- op_test
- 用于生成利用由 op_tests_mod!() 生成的
tests
模块生成的测试函数
- 用于生成利用由 op_tests_mod!() 生成的
示例
#[cfg(test)]
#[macro_use]
extern crate oysterpack_testing;
#[cfg(test)]
op_tests_mod!();
#[cfg(test)]
mod foo_test {
// the macro creates a test function named 'foo'
op_test!(foo, {
info!("SUCCESS");
});
#[test]
fn foo_test() {
// alternatively use ::run_test("test name",|| { // test code })
::run_test("foo_test", || {
// by default the crate's log level is set to Debug
debug!("SUCCESS")
});
}
}
示例 - 配置目标日志级别
#[cfg(test)]
#[macro_use]
extern crate oysterpack_testing;
#[cfg(test)]
op_tests_mod! {
"foo" => Info,
"bar" => Error
}
#[cfg(test)]
mod foo_test {
op_test!(foo, {
info!("this will be logged because this crate's log level is Debug");
info!(target: "foo", "foo info will be logged");
info!(target: "bar", "*** bar info will not be logged ***");
error!(target: "bar", "bar error will be logged");
});
#[test]
fn foo_test() {
::run_test("foo_test", || {
debug!("SUCCESS")
});
}
}
注意
- 由于宏中使用,因此log、fern和chrono crates被重新导出。重新导出它们使得宏具有自包含性。
依赖项
~1.4–2MB
~30K SLoC