ArgumentMatchers.matches(String regex)
существует ... и можно создавать регулярные выражения, которые не соответствуют данным String
. Но это далеко не тривиально (несколько потоков в SO).Mockito ArgumentMatchers doesNotMatch?
Неправильно ли я (или неправильно) подумать, что может быть хорошей идеей попросить дизайнеров Mockito взять на себя тяжелую работу и добавить ее в качестве функции? Кажется, что в контексте насмешек и т. Д. Это далеко не исключительный случай использования ...
PS Также, я не понимаю, с ArgumentMatchers.matches
как вы говорите «это может быть многострочная строка, с которой мы сравниваем, не беспокойтесь об этом »... не было бы лучше иметь Pattern
, а не простой String
?
позже
Feature request "расширение" в Mockito HQ (на Github). «bric3» говорит, что следует использовать технику Джеффа Боумана для «не соответствует». Но ему кажется, что идея Pattern
стоит задуматься.
Re not()
: Mockito-х own documentation говорит: «Использование дополнительных matchers очень благоразумно, потому что они могут повлиять на читаемость теста рекомендуется использовать matchers от Matchers и держать гася и проверка просто..»
Также я нахожу, что должен «возможно обмануть» свой вопрос: How to write a matcher that is not equal to something. Поиск с ретроспективностью всегда проще ...!
позже еще
Большое спасибо Brice для добавления этого так быстро. Обновлено мое gradle.build и ... новое ядро 4.1, загруженное из Maven Central и сразу же доступное для использования.
Это будет отличный пост для списка рассылки Mockito. И вы всегда можете сделать запрос функции команде Mockito. Запросы функций обычно вызывают некоторые дебаты внутри команды о том, является ли эта функция хорошей идеей - иногда запрашиваемые функции быстро развиваются, иногда они занимают некоторое время, но в конечном итоге развиваются, а иногда они отвергаются. Но никогда не было никакого вреда в просьбе. –
Спасибо за поддержку. Ответ Джеффа Боумена идет совершенно в другом направлении. AdditionalMatchers.not.Я думаю, что мне, возможно, понадобилось около 13 лет, чтобы наткнуться на это. Вероятно, есть только небольшая группа потенциальных покупателей, но кто-нибудь из вас когда-либо думал о написании книги под названием «Intermediate Mockito» или «Mockito: переход на другой уровень»? –
На самом деле, я начал работу над довольно обширной книгой о Mockito несколько лет назад. Проблема в том, что Mockito растет и меняется быстрее, чем я могу писать, с добавлением новых функций все время. К тому времени, когда я получу публикацию, информация в моей книге будет устаревшей. Поэтому я отказался от проекта. Что мне действительно нужно сделать, так это начать блог и превратить свой материал в серию сообщений - может быть, в другой раз я это сделаю. –