11package kotlinx.serialization.cbor
22
33import kotlinx.serialization.*
4+ import kotlinx.serialization.cbor.CborIsoTest.DataClass
45import kotlin.test.*
56
67
@@ -18,6 +19,10 @@ class CborArrayTest {
1819 val cbor = Cbor .CoseCompliant
1920 assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs1Array .serializer(), reference))
2021 assertEquals(reference, cbor.decodeFromHexString(ClassAs1Array .serializer(), referenceHexString))
22+
23+ val struct = cbor.encodeToCbor(ClassAs1Array .serializer(), reference)
24+ assertEquals(reference, cbor.decodeFromCbor(ClassAs1Array .serializer(), struct))
25+ assertEquals(referenceHexString, cbor.encodeToHexString(CborElement .serializer(), struct))
2126 }
2227
2328 @Test
@@ -35,6 +40,10 @@ class CborArrayTest {
3540 val cbor = Cbor .CoseCompliant
3641 assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs2Array .serializer(), reference))
3742 assertEquals(reference, cbor.decodeFromHexString(ClassAs2Array .serializer(), referenceHexString))
43+
44+ val struct = cbor.encodeToCbor(ClassAs2Array .serializer(), reference)
45+ assertEquals(reference, cbor.decodeFromCbor(ClassAs2Array .serializer(), struct))
46+ assertEquals(referenceHexString, cbor.encodeToHexString(CborElement .serializer(), struct))
3847 }
3948
4049 @Test
@@ -54,6 +63,10 @@ class CborArrayTest {
5463
5564 assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs4ArrayNullable .serializer(), reference))
5665 assertEquals(reference, cbor.decodeFromHexString(ClassAs4ArrayNullable .serializer(), referenceHexString))
66+
67+ val struct = cbor.encodeToCbor(ClassAs4ArrayNullable .serializer(), reference)
68+ assertEquals(reference, cbor.decodeFromCbor(ClassAs4ArrayNullable .serializer(), struct))
69+ assertEquals(referenceHexString, cbor.encodeToHexString(CborElement .serializer(), struct))
5770 }
5871
5972 @Test
@@ -75,12 +88,10 @@ class CborArrayTest {
7588 assertEquals(referenceHexString, cbor.encodeToHexString(ClassWithArray .serializer(), reference))
7689 assertEquals(reference, cbor.decodeFromHexString(ClassWithArray .serializer(), referenceHexString))
7790
78- println (
79- cbor.encodeToHexString(
80- DoubleTaggedClassWithArray .serializer(),
81- DoubleTaggedClassWithArray (array = ClassAs2Array (alg = - 7 , kid = " bar" ))
82- )
83- )
91+
92+ val struct = cbor.encodeToCbor(ClassWithArray .serializer(), reference)
93+ assertEquals(reference, cbor.decodeFromCbor(ClassWithArray .serializer(), struct))
94+ assertEquals(referenceHexString, cbor.encodeToHexString(CborElement .serializer(), struct))
8495 }
8596
8697
@@ -103,6 +114,10 @@ class CborArrayTest {
103114 val cbor = Cbor .CoseCompliant
104115 assertEquals(referenceHexString, cbor.encodeToHexString(DoubleTaggedClassWithArray .serializer(), reference))
105116 assertEquals(reference, cbor.decodeFromHexString(DoubleTaggedClassWithArray .serializer(), referenceHexString))
117+
118+ val struct = cbor.encodeToCbor(DoubleTaggedClassWithArray .serializer(), reference)
119+ assertEquals(reference, cbor.decodeFromCbor(DoubleTaggedClassWithArray .serializer(), struct))
120+ assertEquals(referenceHexString, cbor.encodeToHexString(CborElement .serializer(), struct))
106121 }
107122
108123 @CborArray
0 commit comments