Json $Default не может быть преобразован в kotlinx.serialization.json.Json

#android #kotlinx.serialization

#Android #kotlinx.serialization

Вопрос:

Проблема с kotlinx.serialization и запуском теста в androidTest.

Версия Lib:

 org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.1
org.jetbrains.kotlin:kotlin-stdlib:1.4.10
 

Мой экземпляр Json:

 Json(Json.Default) {
    serializersModule = SerializersModule {
        // serializers here
    }
    coerceInputValues = true
    ignoreUnknownKeys = true
    isLenient = true
}
 

Схема тестирования пользовательского интерфейса

заглушка json -> десериализация json с помощью kotlinx.serialization.json -> показать экран

Если я запущу тест пользовательского интерфейса в папке androidTest, я получу исключение

 java.lang.ClassCastException: kotlinx.serialization.json.Json$Default cannot be cast to kotlinx.serialization.json.Json
 

Есть ли у вас какие-нибудь идеи о том, как решить эту проблему?

UPD

Другой вариант. Использовать без default

 Json {
    serializersModule = SerializersModule {
        // serializers here
    }
    coerceInputValues = true
    ignoreUnknownKeys = true
    isLenient = true
}
 

Исключение

 No static method Json$default(Lkotlinx/serialization/json/Json;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lkotlinx/serialization/json/Json
 

Комментарии:

1. Было бы полезно добавить демонстрационный проект на github.

Ответ №1:

Проблема была с allure framework

  1. проблема здесь https://github.com/allure-framework/allure-kotlin/issues/38
  2. исправить здесь https://github.com/allure-framework/allure-kotlin/pull/37