用于可选参数的 Mockito ArgumentCaptor

Nit*_*ndy 0 java mockito

accountHandler 类中有一个具有以下签名的方法

public void processMessage(String accountId, 
Metrics metrics, 
Optional<ZonedDateTime> parsedDatetime) {

        // do something 
}
Run Code Online (Sandbox Code Playgroud)

在测试中,如果我想使用参数捕获器,我该如何定义它?

尝试了以下方法,但没有达到预期效果。

ArgumentCaptor<ZonedDateTime> timeCaptor = ArgumentCaptor.forClass(ZonedDateTime.class);
Run Code Online (Sandbox Code Playgroud)

使用 argcaptor 使其可选的语法是什么?

tkr*_*use 5

根据类似的问题,使用@Captor注释:

@Captor
private ArgumentCaptor<Optional<ZonedDateTime>> captor;
Run Code Online (Sandbox Code Playgroud)