ルックをこれである場合には、
は
Mockito.when(でgetLocationOnScreen(Mockito.any(INT []クラス)):だから、ちょうどこのような何かをする必要があります。あなたは期待するもの:。
@Test
public void getLocationOnScreen() throws Exception {
View mockView = mock(View.class);
// Prepare the integer array to test.
int[] location = new int[2];
// Verify interactions
mockView.getLocationOnScreen(location);
verify(mockView).getLocationOnScreen(location);
// Stub voids
doAnswer(new Answer() {
@Override
public int[] answer(InvocationOnMock invocation) throws Throwable {
int[] args = (int[])(invocation.getArguments()[0]);
args[0] = 5;
args[1] = 6;
return args;
}
}).when(mockView).getLocationOnScreen(location);
// Asserts
mockView.getLocationOnScreen(location);
assertEquals(5, location[0]);
assertEquals(6, location[1]);
}
私はそのメソッドが呼び出されたときに、配列の要素にモック値を設定する必要があり、配列の更新されたこれらの要素はでgetLocationOnScreenメソッドを呼び出した後、さらにロジックで使用されて、私はそこに笙を信じているので。 uldは配列の要素を模倣してそのメソッドを呼び出すことができます。 –