Какие зависимости требуются для импорта `io.mockk.every` при написании тестов Kotlin с Mockk?
Я пытаюсь написать тест, основанный только на testCompile group: 'io.mockk', name: 'mockk', version: '1.7.15'
но в коде ниже:
import io.mockk.every
import io.mockk.any
import io.mockk.Runs
import io.mockk.impl.annotations.MockK
import io.mockk.junit5.MockKExtension
@ExtendWith(MockKExtension::class)
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
internal class ConfigDistributorTest {
@MockK
lateinit var configService: ...
@MockK
lateinit var centralisedConfigRegisterService: ...
val configDistributor = ConfigDistributor(centralisedConfigRegisterService, configService)
@Test
fun shouldDistributeConfigToComponents(){
every {
configService.readConfig(any())
} just Runs
}
}
хотя Runs
, MockK
а также MockKExtension
успешно импортированы, every
а также any()
не доступны Является io.mockk.any
правильный оператор импорта и какие другие зависимости требуются для их использования?
1 ответ
Решение
Сначала вам нужно импортировать every
, import io.mockk.every
это правильный способ сделать это. Внутри every
any
автоматически импортируется, поэтому вам не нужно этого делать. Другие вещи выглядят хорошо
Пожалуйста, лишите законной силы кэши, повторно импортируйте проект. Вероятно, у вас есть некоторые проблемы с IDE.