Я только начал проводить юнит-тестирование в Котлине с использованием Mockk.Я пытаюсь проверить следующую функцию:
fun evaluatePredicate(regEx: String, passwordInserted: String) : Boolean {
return passwordInserted.matches(regEx.toRegex())
}
Мой тест выглядит следующим образом:
@Test
fun evaluatePredicate_shouldContainLowerCase_trueExpected() {
//given
val regEx = ".*[a-z]+.*" //lower case
val password = "password"
every { password.matches(regEx.toRegex()) } returns true
every { SUT.evaluatePredicate(regEx, password) } returns true
//when
val evaluate = password.matches(regEx.toRegex())
val result = SUT.evaluatePredicate(regEx, password)
//then
assertEquals(evaluate, result)
}
Но я получаю:
io.mockk.MockKException: Missing calls inside every { ... } block.
встрока:
every { password.matches(regEx.toRegex()) } returns true
Я пытался использовать Mockk Matcher any()
вместо matches(regEx.toRegex())
, но ничего не изменилось.
Я не уверен, что использую правильные инструментыдля работы здесь.Любые предложения приветствуются.