1 /* 2 * Copyright 2017-2022 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. 3 */ 4 5 package kotlinx.serialization.features 6 7 import kotlinx.serialization.Serializable 8 import kotlinx.serialization.json.JsonTestBase 9 import kotlin.test.Test 10 import kotlin.time.Duration 11 import kotlin.time.DurationUnit 12 import kotlin.time.toDuration 13 14 class DurationTest : JsonTestBase() { 15 @Serializable 16 data class DurationHolder(val duration: Duration) 17 @Test testDurationnull18 fun testDuration() { 19 assertJsonFormAndRestored( 20 DurationHolder.serializer(), 21 DurationHolder(1000.toDuration(DurationUnit.SECONDS)), 22 """{"duration":"PT16M40S"}""" 23 ) 24 } 25 } 26