Matchers eq неправильно говоря, списки не равны - PullRequest
0 голосов
/ 24 октября 2018

Я пишу несколько тестов scala и у меня есть

when(mockLoader.load(Matchers.eq(expectedPath))).thenReturn(testData)
val data = mockLoader.load(expectedPath)
data.count() shouldBe 0

, но я получаю NPE при выполнении count () для данных, что означает, что имитатор думает, что я поставил неожиданный путь.Это ожидаетсявычисляет, что будет не в списках, которые содержат одинаковые значения?

1 Ответ

0 голосов
/ 30 октября 2018

Попробуйте использовать mockito-scala, это поможет вам по-разному

  • Если вы используете его в строгом режиме (путем смешивания в приборе mockito), он быстро потерпит неудачу, если ваш код вызывает mockсо значениями, отличными от указанных вами
  • Не нужно делать Matchers.eq, так как сопоставитель был переименован в eqTo
  • eqTo использует скалярное равенство, так что вы даже можете перейти и переопределитьэти объекты сравниваются
  • Вам нужно предоставить сопоставления только для тех параметров, которые требуют их (при использовании идиоматического синтаксиса, компилятор автоматически обернет остальные с помощью eqTo)

Проверкаhttps://github.com/mockito/mockito-scala для более подробного описания этих функций

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...