#测试 # #实用工具

assert_ok

一个断言 Result 是 Ok 的宏

3 个稳定版本

1.0.2 2022 年 11 月 17 日
1.0.1 2022 年 3 月 17 日

Rust 模式 中排名第 2702

Download history 133/week @ 2024-03-13 126/week @ 2024-03-20 84/week @ 2024-03-27 172/week @ 2024-04-03 67/week @ 2024-04-10 147/week @ 2024-04-17 313/week @ 2024-04-24 199/week @ 2024-05-01 308/week @ 2024-05-08 326/week @ 2024-05-15 282/week @ 2024-05-22 349/week @ 2024-05-29 278/week @ 2024-06-05 335/week @ 2024-06-12 179/week @ 2024-06-19 287/week @ 2024-06-26

每月下载量 1,135

Apache-2.0 OR MIT

3KB

assert_ok

crates.io docs.rs

此包包含一个宏 assert_ok,它接受一个表达式。如果表达式评估为 Err,则恐慌并显示有用的消息。相反,如果表达式评估为 Ok(v),则返回值 v

这在测试中非常有用。与其

let z = foo(arg1, arg2).unwrap();

let z = foo(arg1, arg2).expect("foo failed");

使用

let z = assert_ok!(foo(arg1, arg2));

它更容易理解(据我所知),更重要的是,在它失败的情况下提供了更有用的错误消息。

在 Tokio 中有一个类似的宏,然而对于不使用 Tokio 的库或应用程序,仅为了一个宏而引入它并不合理。


lib.rs:

一个断言 ResultOk 的宏

无运行时依赖