为什么Dart中存在错误和异常,而不是错误或异常?
这是一个历史性的原因是什么?
我可以抛出一个错误,我可以抛出异常.分析器中没有像Java一样检查它们(异常与运行时异常)
简而言之,throwsA(anything)用dart进行单元测试不足以满足我的需求。如何测试特定的错误消息或类型?
这是我要捕获的错误:
class MyCustErr implements Exception {
String term;
String errMsg() => 'You have already added a container with the id
$term. Duplicates are not allowed';
MyCustErr({this.term});
}
Run Code Online (Sandbox Code Playgroud)
这是当前通过的断言,但是要检查上面的错误类型:
expect(() => operations.lookupOrderDetails(), throwsA(anything));
这就是我想做的:
expect(() => operations.lookupOrderDetails(), throwsA(MyCustErr));