gpt4 book ai didi

java - Mockito - 使用预期参数验证方法调用但忽略某些字段

转载 作者:行者123 更新时间:2023-12-04 14:47:40 25 4
gpt4 key购买 nike

我正在模拟一个名为 EmailSender 的类,它有一个方法 sendEmail()它接受类电子邮件的参数。我正在尝试验证我的 mockEmailSender将调用 sendEmail用预期的 Email 函数一次这样的类:verify(mockEmailSender, times(1)).sendEmail(expectedEmail)

class Email {
String title;
List<String> receipients;
EmailBody body;
}
我正在初始化预期的电子邮件对象,如下所示 Email expectedEmail = Email.builder().setRecipients(//example list).setTitle("Test title").setBody(//make this not matter)我怎样才能在忽略 body 领域的情况下进行这项工作?所以我只想检查 sendEmail()使用 expectedEmail 调用方法而 expectedEmail具有我设置的所有字段,同时忽略某些字段,例如我不想明确设置的 body 字段。

最佳答案

ArgumentMatchers.refEq matcher 可以帮助您轻松忽略您不关心的字段:

verify(mockEmailSender, times(1)).sendEmail(refEq(expectedEmail, "body"));

关于java - Mockito - 使用预期参数验证方法调用但忽略某些字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69723432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com