当前位置: 首页 > 知识库问答 >
问题:

用void方法和对象数组作为参数的EasyMock期望?

方鸿振
2023-03-14

当使用EasyMock为void方法设置期望值时,是否可以指定一个对象数组作为该方法的参数之一?

例如,如果我们有这样的内容:

Errors mockErrors = createMock(Errors.class);
...
mockErrors.rejectValue(Object[]{"5", "2"});
mockErrors.replay();

classUnderTest.someMethod();
>     Unexpected method call rejectValue(["5", "2"]):
>         rejectValue(["5", "2"]): expected: 1, actual: 0

我认为这是因为它在一个Object[]上依赖equals方法,由于两者不同,它返回false并且不满足条件。

有办法绕过它吗?因为我没有使用expect()设置expect,所以我可以使用任何()...有没有一种方法可以在void方法上做同样的事情?

共有1个答案

梁存
2023-03-14
mockErrors.rejectValue(aryEq(new Object[] {"5", "2"}));

有关详细信息,请参见javadoc。

 类似资料:
  • 我可以让这段代码在没有对象作为抽象方法输入参数的情况下工作。例如,如果我亲自将方法的输入参数设置为,emp就会起作用。 当我将输入参数作为方法的对象时,它抛出了一个错误 emp不是抽象的,并且不会覆盖person类emp extends person{^

  • 我有一个接收对象数组的rest服务,我需要将json信息转换回对象列表;我的堆栈是建立在Spring4之上的 正如您所看到的,参数words是RestWord的列表,其定义如下: 此外,我还定义了如下转换器: 就您所能看到的而言,没有太多的逻辑,也得到了在mvc上下文中注册的转换器,就像这样。 嗨,万一有人在这方面挣扎,我设法使一切都启动和运行。 首先,如果您是Rest的新手,我找到了这篇简单的文

  • 本文向大家介绍shell 使用数组作为函数参数的方法(详解),包括了shell 使用数组作为函数参数的方法(详解)的使用技巧和注意事项,需要的朋友参考一下 因工作需要,需要使用shell开发一些小工具,当使用数组作为函数参数时,发现只能传递数组的第一个元素,数组后面的元素不能传递到函数内。 把代码保存为test.sh后执行,只输出了第一个元素。 $1表示获取函数的第一个参数,而函数的第一个参数就是

  • 我正在尝试发布来自邮递员的 POST 请求,但正文中的 json 未转换为控制器中的 java 对象。 pom.xml 在我看到的日志中 Hibernate:插入到用户(zip,address1,address2,address3,城市,电子邮件,first_name,last_name,密码,状态,user_name)值 (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) 不知道

  • 问题内容: 我已经看到了一些与此相关的问题,但是对于我的特定问题,我似乎无法理解任何答案。 我有一个模拟对象,让我们调用“ object1”,将其发送到某种测试方法,让我们调用testMethod()。所以我最后打电话 用于检测。现在在这个testMethod的某个地方,它将有一部分调用方法 这是一个无效方法。如果方法像 它实际上会返回什么,我通常会这样做 但是,这是一个无效方法,我只想测试一下它

  • 问题内容: 这可能吗?我尝试过,但EasyMock抱怨时间必须> = 1 问题答案: 我设法提出了一个解决方案: