1

次のように定義されたクラスがあります。

data class Medicalnfo(
            @Json(name = "allergies") val allergies: List<Allergy>? = null
    ): ProfileModel(){
        @Json(name = "has_allergies") val hasAllergies: Boolean = allergies != null && allergies.isNotEmpty()
    }

問題は、MoshihasAllergiesによって生成された json シリアライゼーションに含まれていないことです。これはどのように達成できますか?

これがテストです

@Test
fun medicalInfoJsonContainsFlags(){
    val adapter = moshi.adapter(Medicalnfo::class.java)
    val jsonStr = adapter.toJson(Medicalnfo(allergies = listOf())) //value is {"allergies":[]}
    assert(jsonStr.contains("has_allergies"))
}
4

1 に答える 1