2015-06-18 3 views
1

У меня есть mocked javax.ws.rs.client.WebTarget webTarget. Тогда я следующее:Mockito: получить значение поля в издеваемом объекте

Mockito.when(webTarget.path(Mockito.anyString())).thenReturn(webTarget). 

Теперь я хотел бы, чтобы получить строку набора во время .path(String) метода из Ложная WebTarget. Есть ли шанс, что я смогу это сделать? В то время

webTarget.getUri() 

, к сожалению, возвращает null.

+1

Вы получаете нуль, потому что WebTarget издевались. Вы должны написать Mockito.when() для webTarget также и передать Uri. – Aakash

ответ

2

Чтобы получить на строку, которую вы могли бы использовать ArgumentCaptor:

ArgumentCaptor<Person> argument = ArgumentCaptor.forClass(Person.class); 
verify(mock).doSomething(argument.capture()); 
assertEquals("John", argument.getValue().getName()); 

или проверить

Mockito.verify(webTarget).path("expectedString") 
Смежные вопросы