Какие зависимости требуются для импорта `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 это правильный способ сделать это. Внутри everyany автоматически импортируется, поэтому вам не нужно этого делать. Другие вещи выглядят хорошо

Пожалуйста, лишите законной силы кэши, повторно импортируйте проект. Вероятно, у вас есть некоторые проблемы с IDE.

Другие вопросы по тегам