Advertisement
Guest User

Untitled

a guest
Aug 22nd, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. ArgumentCaptor<Foo> firstFooCaptor = ArgumentCaptor.forClass(Foo.class);
  2. ArgumentCaptor<Foo> secondFooCaptor = ArgumentCaptor.forClass(Foo.class);
  3. verify(mockBar).doSomething(firstFooCaptor.capture());
  4. verify(mockBar).doSomething(secondFooCaptor.capture());
  5. // then do some assertions on secondFooCaptor.getValue()
  6.  
  7. verify(mockBar, times(2)).doSomething(...)
  8.  
  9. ArgumentCaptor<Person> peopleCaptor = ArgumentCaptor.forClass(Person.class);
  10. verify(mock, times(2)).doSomething(peopleCaptor.capture());
  11.  
  12. List<Person> capturedPeople = peopleCaptor.getAllValues();
  13. assertEquals("John", capturedPeople.get(0).getName());
  14. assertEquals("Jane", capturedPeople.get(1).getName());
  15.  
  16. ArgumentCaptor<Foo> fooCaptor = ArgumentCaptor.forClass(Foo.class);
  17. verify(mockBar, times(2)).doSomething(fooCaptor.capture());
  18. //getValue() contains value set in second call to doSomething()
  19. assertEquals("2nd one", fooCaptor.getValue().getName());
  20.  
  21. verify(mockBar).doSth(argThat((arg) -> arg.getSurname().equals("OneSurname")));
  22. verify(mockBar).doSth(argThat((arg) -> arg.getSurname().equals("AnotherSurname")));
  23.  
  24. verify(mockBar).doSth(argThat(new ArgumentMatcher<Employee>() {
  25. @Override
  26. public boolean matches(Object emp) {
  27. return ((Employee) emp).getSurname().equals("SomeSurname");
  28. }
  29. }));
  30.  
  31. InOrder inOrder = inOrder(mockBar);
  32.  
  33. inOrder.verify(mockBar).doSth(argThat((arg) -> arg.getSurname().equals("FirstSurname")));
  34. inOrder.verify(mockBar).doSth(argThat((arg) -> arg.getSurname().equals("SecondSurname")));
  35.  
  36. verify(mockBar).doSth(assertArg(arg -> assertThat(arg.getSurname()).isEqualTo("Surname")));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement