最佳答案
我有一个 Rust 函数,在某些条件下,我希望编写一个测试用例来验证函数是否恐慌。除了 assert!和 assert_eq!宏,我什么都找不到。有什么机制可以测试这个吗?
我可以生成一个新任务,并检查该任务是否惊慌失措。这样做有意义吗?
返回一个 Result<T, E>不适合我的情况。
我希望添加对 Add特性的支持到我正在实现的 Matrix类型。这种添加的理想语法如下:
let m = m1 + m2 + m3;
其中 m1,m2,m3都是矩阵。因此,add的结果类型应该是 Matrix。下面这些内容太隐晦了:
let m = ((m1 + m2).unwrap() + m3).unwrap()
同时,add()函数需要验证添加的两个矩阵是否具有相同的维度。因此,如果尺寸不匹配,add()需要恐慌。可用的选项是 panic!()。