Я очень новичок в Котлине.Как проверить код, который вызывает функции верхнего уровня в Котлине?
У меня есть класс, который вызывает функцию верхнего уровня (что делает http-вызов). Я пытаюсь написать модульные тесты для своего класса, не выходя из сети.
Есть ли способ издеваться/заряжать/перехватывать вызов от моего класса до функции верхнего уровня Kotlin?
class MyClass {
fun someMethod() {
// do some stuff
"http://somedomain.com/some-rest/action".httpGet(asList("someKey" to "someValue")).responseString { (request, response, result) ->
// some processing code
}
}
}
Он использует kittinunf/Fuel library для вызова HttpGet.
Он добавляет функцию верхнего уровня в String, которая в конечном итоге вызывает функцию объекта компаньона в Fuel (Fuel.get()).
В модульном тесте необходимо перехватить вызов httpGet, чтобы я мог вернуть строку json для теста.
Эй, Бун .. У вас есть полный пример для этого? Я пытаюсь написать тесты Junit для моих топливных вызовов Kotlin. –
Я следовал за предложением @ miensol и использовал Fuel.testMode() и переопределение executeRequest. – Boon
это будет очень полезно, если вы можете опубликовать фрагмент кода или отправить ссылку github? –