如何为 byte[] 编写模拟匹配器



我需要byte[]的复杂Matcher。下面的代码无法编译,因为argThat返回Byte[] 。有没有办法为基元类型数组编写专用Matcher

    verify(communicator).post(Matchers.argThat(new ArgumentMatcher<Byte[]>() {
        @Override
        public boolean matches(Object argument) {
            // do complex investigation of byte array
            return false;
        }
    }));

你真的可以在这里使用new ArgumentMatcher<byte[]> { ... }

verify(communicator).post(Matchers.argThat(new ArgumentMatcher<byte[]>() {
    @Override
    public boolean matches(Object argument) {
        // do complex investigation of byte array
        return false;
    }
}));

您所指的答案说byte[]不是T[]的有效替代品(因为T[]假设Object[],而byte[]不是),但在您的情况下,不涉及T[],并且byte[]作为Object的子类,是简单T的有效替代品。

相关内容

  • 没有找到相关文章

最新更新