2010-10-15 7 views
18

У меня есть строка в моем тесте, который в настоящее время выглядит следующим образом:Как проверить, содержит ли параметр две подстроки с использованием Mockito?

Mockito.verify(mockMyObject).myMethod(Mockito.contains("apple")); 

Я хотел бы изменить его, чтобы проверить, если параметр содержит как "apple" и "banana". Как я могу это сделать?

ответ

21

Просто используйте Mockito.match(String)

Mockito.verify(mockMyObject). 
    myMethod(
    Mockito.matches("(.*apple.*banana.*)|(.*banana.*apple.*)" 
) 
); 
11

Я думаю, самым простым решением является вызов проверки() несколько раз:

verify(emailService).sendHtmlMail(anyString(), eq(REPORT_TITLE), contains("Client response31")); 
verify(emailService).sendHtmlMail(anyString(), eq(REPORT_TITLE), contains("Client response40")); 
verify(emailService, never()).sendHtmlMail(anyString(), anyString(), contains("Client response30")); 

 Смежные вопросы

  • Нет связанных вопросов^_^