1 个不稳定版本
0.1.0 | 2021 年 6 月 17 日 |
---|
#36 在 #test-macro
用于 bern-test
14KB
243 代码行
bern-test-macros
bern-test 的过程宏。
文档
许可证
lib.rs
:
Bern 测试宏。
改编自 https://github.com/knurling-rs/defmt/blob/main/firmware/defmt-test/macros/src/lib.rs
类似于 defmt-test
,但可以在任何接口(通常是阻塞的)上输出,并且可以交互式运行(通过串行接口选择测试)。
示例
/* Setup omitted */
#[bern_test::tests]
mod tests {
#[test_set_up]
fn base_setup() {
// Run before every test
}
#[test_tear_down]
fn reset() {
// Runs after every test
// For autorun this must be soft reset
cortex_m::peripheral::SCB::sys_reset();
}
#[tear_down]
fn stop() {
// Runs after all tests
cortex_m::asm::bkpt();
}
#[test]
fn some_test() {
assert_eq!(0, 1);
}
#[test]
fn test_with_hardware(board: &mut Board) {
// A test can use the argument given when the runner is started
// from main
board.led.set_high().ok();
assert_eq!(board.led.is_high().unwrap(), true);
}
}
依赖
~1.5MB
~35K SLoC