/* Ċ Ġ* ĠCopyright Ġ 2 0 1 7 - 2 0 2 0 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense . Ċ Ġ*/ Ċ package Ġkotlinx . serialization . protobuf Ċ Ċ import Ġkotlinx . serialization .* Ċ import Ġkotlin . test .* Ċ Ċ /* Ċ Ġ* ĠTODO Ġimprove Ġthese Ġtests : Ċ Ġ* Ġ Ġ* ĠAll Ġprimitive Ġtypes Ċ Ġ* Ġ Ġ* ĠAll Ġnullable Ġtypes Ċ Ġ* Ġ Ġ* ĠBuilt - in Ġtypes Ġ( T BD ) Ċ Ġ* Ġ Ġ* ĠPri mitives Ġnull ability Ċ Ġ*/ Ċ class ĠProtobuf Primitives Test Ġ{ ĊĊĠĠĠ Ġprivate Ġfun Ġ< T > Ġtest Conversion ( data : ĠT , Ġserializer : ĠK Serializer < T >, Ġexpected HexString : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstring Ġ= ĠProto Buf . dumps ( serializer , Ġdata ). toUpperCase () ĊĠĠĠĠĠĠĠ ĠassertEquals ( expected HexString , Ġstring ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( data , ĠProto Buf . loads ( serializer , Ġstring )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Signed Integer () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test Int (- 1 5 0 ), ĠTest Int . serializer (), Ġ" 0 8 AB 0 2 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Int List () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test List ( listOf ( 1 5 0 , Ġ 2 2 8 , Ġ 1 3 3 7 )), ĠTest List . serializer (), Ġ" 0 8 9 6 0 1 0 8 E 4 0 1 0 8 B 9 0 A ") ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest String () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test String (" testing "), ĠTest String . serializer (), Ġ" 1 2 0 7 7 4 6 5 7 3 7 4 6 9 6 E 6 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Tw ice Nested () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test Inner ( Test Int (- 1 5 0 )), ĠTest Inner . serializer (), Ġ" 1 A 0 3 0 8 AB 0 2 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Mixed Tags () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test Complex ( 4 2 , Ġ" testing "), ĠTest Complex . serializer (), Ġ" D 0 0 2 2 A 1 2 0 7 7 4 6 5 7 3 7 4 6 9 6 E 6 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Default Primitive Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test Int ( 0 ), ĠTest Int . serializer (), Ġ" 0 8 0 0 ") ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test List ( listOf ()), ĠTest List . serializer (), Ġ"") ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test String (""), ĠTest String . serializer (), Ġ" 1 2 0 0 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Fixed Int With Long () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Conversion ( Test Numbers ( 1 0 0 5 0 0 , ĠLong . MAX _ VALUE ), ĠTest Numbers . serializer (), Ġ" 0 D 9 4 8 8 0 1 0 0 1 0 FFFFFFFF FFFFFFFF 7 F ") ĊĠĠĠ Ġ} Ċ } Ċ