Rust 程序设计语言 简体中文版 1.85.0LimitTracker { messenger, value: 0, max, } } pub fn set_value(&mut self, value: usize) { self.value = value; let percentage_of_max = self trait 是 mock 对象所需要实现的接口库,这样 mock 就能像一个真正 的对象那样使用了。另一个重要的部分是我们需要测试 LimitTracker 的 set_value 方法的行 为。可以改变传递的 value 参数的值,不过 set_value 并没有返回任何可供断言的值。我们希 望能够说,如果我们创建一个实现了 Messenger trait 和具有特定 max 值的 LimitTracker 对象是,调用 send 并不实际发送 email 或消息,而是只记录信息被通知要 发送了。可以新建一个 mock 对象实例,用其创建 LimitTracker,调用 LimitTracker 的 set_value 方法,然后检查 mock 对象是否有我们期望的消息。示例 15-21 展示了一个如此尝 试的 mock 对象实现,不过借用检查器并不允许: 文件名:src/lib.rs #[cfg(test)]0 码力 | 562 页 | 3.23 MB | 26 天前3
共 1 条
- 1













