我在某个小部件上创建了一些提供程序(例如,提供程序A、B、C(,并在从小部件树中删除提供程序的情况下测试ProviderNotFoundException
。
现在我正在测试ProviderNotFoundException
,如下所示:
expect(tester.takeException(), isA<ProviderNotFoundException>());
这是非常通用的,因为如果删除了所有提供商A、B和C,这将适用于它们。我想添加额外的约束,以检查是否只找到提供商B。
我尝试在isA
上使用having
方法,但无法使其工作。
expect(
tester.takeException(),
isA<ProviderNotFoundException>().having(
(e) => e.valueType,
'valueType',
contains('A'),
));
使用having
方法添加附加约束,并检查feature
参数是否与matcher
参数正确匹配。
expect(
tester.takeException(),
isA<ProviderNotFoundException>().having(
(e) => e.valueType,
'valueType',
A,
));