ฉันพยายามจำลองวิธีด้วยพารามิเตอร์ vararg โดยใช้ Mockito:
interface A {
B b(int x, int y, C... c);
}
A a = mock(A.class);
B b = mock(B.class);
when(a.b(anyInt(), anyInt(), any(C[].class))).thenReturn(b);
assertEquals(b, a.b(1, 2));
สิ่งนี้ใช้ไม่ได้อย่างไรก็ตามถ้าฉันทำสิ่งนี้แทน:
when(a.b(anyInt(), anyInt())).thenReturn(b);
assertEquals(b, a.b(1, 2));
ใช้งานได้แม้ว่าฉันจะไม่ได้โต้แย้งอาร์กิวเมนต์ varargs ทั้งหมดเมื่อทำการขัดวิธี
เบาะแสใด ๆ