@@ -9,9 +9,11 @@ import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor
99import kotlinx.serialization.descriptors.SerialDescriptor
1010import kotlinx.serialization.modules.SerializersModule
1111import kotlinx.serialization.modules.contextual
12+ import java.util.concurrent.atomic.AtomicBoolean
1213import kotlin.reflect.KClass
1314import kotlin.test.Test
1415import kotlin.test.assertFailsWith
16+ import kotlin.test.assertTrue
1517
1618class CustomTypeWithCustomByteBufTest {
1719
@@ -31,6 +33,8 @@ class CustomTypeWithCustomByteBufTest {
3133 val decodedPlayer = bufFormat.decodeFromBuf<Player >(buf)
3234
3335 assert (player == decodedPlayer)
36+ assertTrue(CustomIntSerializer .serializeCalled.get(), " serialize0 should have been called" )
37+ assertTrue(CustomIntSerializer .deserializeCalled.get(), " deserialize0 should have been called" )
3438 }
3539
3640 @Test
@@ -49,15 +53,20 @@ class CustomTypeWithCustomByteBufTest {
4953}
5054
5155object CustomIntSerializer : KBufSerializer<Int, CustomByteBuf> {
56+ val serializeCalled = AtomicBoolean (false )
57+ val deserializeCalled = AtomicBoolean (false )
58+
5259 override val bufClass: KClass <CustomByteBuf > = CustomByteBuf ::class
5360 override val descriptor: SerialDescriptor =
5461 PrimitiveSerialDescriptor (" CustomIntSerializer" , PrimitiveKind .STRING )
5562
5663 override fun serialize0 (buf : CustomByteBuf , value : Int ) {
64+ serializeCalled.set(true )
5765 buf.writeVarInt(value)
5866 }
5967
6068 override fun deserialize0 (buf : CustomByteBuf ): Int {
69+ deserializeCalled.set(true )
6170 return buf.readVarInt()
6271 }
6372}
0 commit comments