Mockito Java doAnswer



这不会编译。我得到一个UnfinishedStubbingException.我已经阅读了这个网站上的 Mockito api 和其他问题,我认为我的语法不应该是错误的,但它在doAnswer(new Answer() {失败,所以我认为它一定是错误的,但我不知道在哪里。谢谢。

doAnswer(new Answer() {
            @Override
            public Object answer(InvocationOnMock invocation) throws Throwable {
                Object[] args = invocation.getArguments();
                ((CrestronNioSocketHandler.NioEventReceiver) args[0]).onDataReceived(new byte[wantedNumber]);
                return null;
            }
        }).when(mockedChannel.read(any(ByteBuffer.class)));
应该是

这样的

doAnswer(new Answer() {
            @Override
            public Object answer(InvocationOnMock invocation) throws Throwable {
                Object[] args = invocation.getArguments();
                ((CrestronNioSocketHandler.NioEventReceiver) args[0]).onDataReceived(new byte[wantedNumber]);
                return null;
            }
        }).when(mockedChannel).read(any(ByteBuffer.class));

查看有关使用Mockito的不同存根方式的问题。

最新更新