blob: cd077e04f997e6fde19fb616359c8980a2e0999c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
package kotlinx.serialization
import kotlinx.serialization.builtins.ListSerializer
import kotlinx.serialization.builtins.serializer
import kotlinx.serialization.descriptors.*
import kotlinx.serialization.encoding.*
import kotlinx.serialization.json.*
import kotlin.test.*
class EncodingCollectionsTest {
object ListSerializer : KSerializer<List<String>> {
override val descriptor: SerialDescriptor = ListSerializer(String.serializer()).descriptor
override fun serialize(encoder: Encoder, value: List<String>) {
encoder.encodeCollection(descriptor, value) { index, item ->
encodeStringElement(descriptor, index, item)
}
}
override fun deserialize(decoder: Decoder): List<String> = throw NotImplementedError()
}
@Test
fun testEncoding() {
assertEquals("""["Hello","World!"]""", Json.encodeToString(ListSerializer, listOf("Hello", "World!")))
}
}
|