为了设置上下文,我试图在Flutter中这样做。例如,我有一个通过的测试,“如果我设置我的模拟说'没有网络连接',并期望'网络不可用'的结果。”然后,我想编写下一个测试,“如果网络可用,结果可能是除'NetworkUnavailable'之外任何内容”我正在努力为此设置一个Expect匹配器。Mockito是否有这样的东西,比如AnyExcept([matcher])?
AnyExcept([matcher])
6jjcrrmo1#
有一个isNotMatcher,您可以将它与其他Matcher组合在一起。因此,例如,您应该能够执行以下操作:expect(valueToTest, isNot(unwantedValue));或expect(valueToTest, isNot(isIn([unwantedValue1, unwantedValue2])));如果这还不能完全满足您的需要,您还可以使用predicate从布尔函数轻松地创建您自己的Matcher。(You如果您搜索Mockito文档,可能找不到这些,因为它们是package:matcher的一部分(通常作为package:test的一部分包含在内);它们通常用于单元测试,而不仅仅用于模拟。)
isNot
Matcher
expect(valueToTest, isNot(unwantedValue));
expect(valueToTest, isNot(isIn([unwantedValue1, unwantedValue2])));
predicate
package:matcher
package:test
1条答案
按热度按时间6jjcrrmo1#
有一个
isNot
Matcher
,您可以将它与其他Matcher
组合在一起。因此,例如,您应该能够执行以下操作:expect(valueToTest, isNot(unwantedValue));
或expect(valueToTest, isNot(isIn([unwantedValue1, unwantedValue2])));
如果这还不能完全满足您的需要,您还可以使用
predicate
从布尔函数轻松地创建您自己的Matcher
。(You如果您搜索Mockito文档,可能找不到这些,因为它们是
package:matcher
的一部分(通常作为package:test
的一部分包含在内);它们通常用于单元测试,而不仅仅用于模拟。)