dimanche 1 mars 2020

[Mockito] verify order / sequence of method calls

Exemple d'utilsation de InOrder :
@Mock ServiceClassA firstMock;
@Mock ServiceClassB secondMock;

doNothing().when(firstMock).methodOne();   
doNothing().when(secondMock).methodTwo();  

//create inOrder object passing any mocks that need to be verified in order
InOrder inOrder = inOrder(firstMock, secondMock);

//following will make sure that firstMock was called before secondMock
inOrder.verify(firstMock).methodOne();
inOrder.verify(secondMock).methodTwo();
https://stackoverflow.com/questions/21901368/mockito-verify-order-sequence-of-method-calls

[Mockito] implementation de l'argumentCaptor

Argument Captor est un Arugment Matcher

Exemple d'utilisation de l'argumentCaptor :

final ArgumentCaptor captor = ArgumentCaptor.forClass(UUID.class); verify(service).method(captor.capture()); 
assertThat(captor.getValue(), is(equalTo(tonUUID)));