在Mockito Flutter中,如何编写一个匹配器来匹配除指定之外的任何对象?

nzrxty8p  于 2022-11-08  发布在  Flutter
关注(0)|答案(1)|浏览(135)

为了设置上下文,我试图在Flutter中这样做。
例如,
我有一个通过的测试,“如果我设置我的模拟说'没有网络连接',并期望'网络不可用'的结果。”
然后,我想编写下一个测试,“如果网络可用,结果可能是除'NetworkUnavailable'之外任何内容”
我正在努力为此设置一个Expect匹配器。Mockito是否有这样的东西,比如AnyExcept([matcher])

6jjcrrmo

6jjcrrmo1#

有一个isNotMatcher,您可以将它与其他Matcher组合在一起。因此,例如,您应该能够执行以下操作:expect(valueToTest, isNot(unwantedValue));expect(valueToTest, isNot(isIn([unwantedValue1, unwantedValue2])));
如果这还不能完全满足您的需要,您还可以使用predicate从布尔函数轻松地创建您自己的Matcher
(You如果您搜索Mockito文档,可能找不到这些,因为它们是package:matcher的一部分(通常作为package:test的一部分包含在内);它们通常用于单元测试,而不仅仅用于模拟。)

相关问题