@@ -32,10 +32,9 @@ object CustomKeysRecord extends HasCborCodec[CustomKeysRecord]
3232sealed trait GenericSealedTrait [+ T ]
3333object GenericSealedTrait extends HasPolyCborCodec [GenericSealedTrait ] {
3434 @ cborKey(0 )
35- case class Success [+ T ](value : T ) extends GenericSealedTrait [T ]
35+ case class Success [+ T ](@ cborKey( 1 ) value : T ) extends GenericSealedTrait [T ]
3636 @ cborKey(1 )
37- case class Failure (message : String ) extends GenericSealedTrait [Nothing ]
38-
37+ case class Failure (@ cborKey(1 ) message : String ) extends GenericSealedTrait [Nothing ]
3938}
4039
4140@ cborDiscriminator(0 )
@@ -222,18 +221,8 @@ class CborInputOutputTest extends AnyFunSuite {
222221 assert(CborInput .readRawCbor[Bytes ](RawCbor .fromHex(" 5F426162426162426162FF" )) == Bytes (" ababab" ))
223222 }
224223
225- test(" generic sealed trait" ) {
226- val success = GenericSealedTrait .Success [Int ](234 )
227- val successCbor = CborOutput .writeRawCbor[GenericSealedTrait [Int ]](success)
228- val decodedSuccess = CborInput .readRawCbor[GenericSealedTrait [Int ]](successCbor)
229- assert(success == decodedSuccess)
230-
231- val failure = GenericSealedTrait .Failure (" error" )
232- val failureCbor = CborOutput .writeRawCbor[GenericSealedTrait [String ]](failure)
233- val decodedFailure = CborInput .readRawCbor[GenericSealedTrait [String ]](failureCbor)
234- assert(failure == decodedFailure)
235- }
236-
224+ roundtrip[GenericSealedTrait [Int ]](GenericSealedTrait .Success [Int ](234 ), " A200000118EA" )
225+ roundtrip[GenericSealedTrait [Boolean ]](GenericSealedTrait .Failure (" error" ), " A2000101656572726F72" )
237226}
238227
239228class CborGenCodecRoundtripTest extends GenCodecRoundtripTest {
0 commit comments