使用 Mockito 的嵌套值使用 any 或 anyNamed 匹配器
Using any or anyNamed matchers for nested values with Mockito
我正在尝试将 Mockito 的参数匹配器传递给嵌套对象值。到目前为止,我已经成功地使用了这样的东西:
when(object.getData(any, any, userId: anyNamed("userId"))).thenAnswer((_) async => response);
但是现在我需要对嵌套值使用 any
或 anyNamed
。以下代码:
when(adapterMock.fetch(
RequestOptions(
method: anyNamed("method"),
path: "orders",
),
any,
any,
)).thenAnswer((_) async =>response);
报错:
Invalid argument(s): An ArgumentMatcher was declared as named method, but was not passed as an
argument named method.
BAD: when(obj.fn(anyNamed: "a")))
GOOD: when(obj.fn(a: anyNamed: "a")))
是否有提供嵌套参数匹配器的正确方法?
似乎在 mockito 中使用嵌套匹配器 not possible。我最终稍微重组了我的项目,所以我不再需要使用这样的匹配器了。
我正在尝试将 Mockito 的参数匹配器传递给嵌套对象值。到目前为止,我已经成功地使用了这样的东西:
when(object.getData(any, any, userId: anyNamed("userId"))).thenAnswer((_) async => response);
但是现在我需要对嵌套值使用 any
或 anyNamed
。以下代码:
when(adapterMock.fetch(
RequestOptions(
method: anyNamed("method"),
path: "orders",
),
any,
any,
)).thenAnswer((_) async =>response);
报错:
Invalid argument(s): An ArgumentMatcher was declared as named method, but was not passed as an
argument named method.
BAD: when(obj.fn(anyNamed: "a")))
GOOD: when(obj.fn(a: anyNamed: "a")))
是否有提供嵌套参数匹配器的正确方法?
似乎在 mockito 中使用嵌套匹配器 not possible。我最终稍微重组了我的项目,所以我不再需要使用这样的匹配器了。