@foonfyrick

Wrong number of arguments, параметризованный тест junit, что не так?

@RunWith(Parameterized::class)
class TestNew(var list:List<Int>,var i:Int, var result:List<Int>){
    companion object{
        @JvmStatic
        @Parameterized.Parameters
        fun arrays()= listOf(listOf(listOf(1,2,3,4,5,6,7,8,9),3, listOf(4,6,8)))
    }
//ТЕСТИРУЕМЫЙ МЕТОД
    fun evenNumbers(array: List<Int>, number: Int): List<Int> {
        val newarray=array.filter { it%2==0 }
        val newarray2= newarray.drop(newarray.size-number)
        return newarray2
    }
    @Test
    fun makeTest(){
       val actualResult=evenNumbers(list,i)
       assertEquals(result,actualResult)
    }
}

//Я уже писал подобный тест и он работал, вроде бы все правильно передаю, переписывал этот тест 10 раз, одна и та же ошибка...
  • Вопрос задан
  • 156 просмотров
Решения вопроса 1
@foonfyrick Автор вопроса
нужно заменить fun arrays()= listOf(listOf(listOf(1,2,3,4,5,6,7,8,9),3, listOf(4,6,8))) на fun arrays()= arrayOf(listOf(listOf(1,2,3,4,5,6,7,8,9),3, listOf(4,6,8)))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Параметры нужно не в конструктор класса передавать, а в тестовый метод.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы