Как проверить функции расширения Kotlin?
Может кто-нибудь сказать мне, как я должен модульно-тестировать функции расширения в Kotlin? Поскольку они разрешаются статически, следует ли их тестировать как статические вызовы методов или как нестатические ? Кроме того, поскольку язык полностью совместим с Java, как должен выполняться модульный тест Java для функций расширения Kotlin ?
1 ответ:
Ну, чтобы проверить метод, статический или нет, вы называете его так, как это сделал бы реальный код, и вы проверяете, что он делает правильную вещь.
Предполагая, что этот метод расширения, например, определен в файле com/foo / Bar.КТ:
fun String.lengthPlus1(): Int { return this.length + 1 }
Если вы пишете свой тест в Kotlin (что обычно делается для тестирования кода Kotlin), вы должны написать
assertThat("foo".lengthPlus1()).isEqualTo(4);
Если вы пишете его на Java (но зачем вам это делать?)
assertThat(BarKt.lengthPlus1("foo")).isEqualTo(4);