如何在小部件测试中测试特定的ProviderNotFoundException



我在某个小部件上创建了一些提供程序(例如,提供程序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,
));

最新更新