1
1
package kotlinx.serialization.cbor
2
2
3
3
import kotlinx.serialization.*
4
+ import kotlinx.serialization.cbor.CborIsoTest.DataClass
4
5
import kotlin.test.*
5
6
6
7
@@ -18,6 +19,10 @@ class CborArrayTest {
18
19
val cbor = Cbor .CoseCompliant
19
20
assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs1Array .serializer(), reference))
20
21
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))
21
26
}
22
27
23
28
@Test
@@ -35,6 +40,10 @@ class CborArrayTest {
35
40
val cbor = Cbor .CoseCompliant
36
41
assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs2Array .serializer(), reference))
37
42
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))
38
47
}
39
48
40
49
@Test
@@ -54,6 +63,10 @@ class CborArrayTest {
54
63
55
64
assertEquals(referenceHexString, cbor.encodeToHexString(ClassAs4ArrayNullable .serializer(), reference))
56
65
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))
57
70
}
58
71
59
72
@Test
@@ -75,12 +88,10 @@ class CborArrayTest {
75
88
assertEquals(referenceHexString, cbor.encodeToHexString(ClassWithArray .serializer(), reference))
76
89
assertEquals(reference, cbor.decodeFromHexString(ClassWithArray .serializer(), referenceHexString))
77
90
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))
84
95
}
85
96
86
97
@@ -103,6 +114,10 @@ class CborArrayTest {
103
114
val cbor = Cbor .CoseCompliant
104
115
assertEquals(referenceHexString, cbor.encodeToHexString(DoubleTaggedClassWithArray .serializer(), reference))
105
116
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))
106
121
}
107
122
108
123
@CborArray
0 commit comments