/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠGoogle ĠLLC . Ċ Ġ* Ċ Ġ* ĠThis Ġcode Ġmay Ġonly Ġbe Ġused Ġunder Ġthe ĠBSD Ġstyle Ġlicense Ġfound Ġat Ċ Ġ* Ġhttp :// polymer . github . io / LICENSE . txt Ċ Ġ* Ċ Ġ* ĠCode Ġdistributed Ġby ĠGoogle Ġas Ġpart Ġof Ġthis Ġproject Ġis Ġalso Ġsubject Ġto Ġan Ġadditional ĠIP Ġrights Ċ Ġ* Ġgrant Ġfound Ġat Ċ Ġ* Ġhttp :// polymer . github . io / PAT ENTS . txt Ċ Ġ*/ Ċ Ċ package Ġar cs . android . host . parcel ables Ċ Ċ import Ġandroid . os . Parcel Ċ import Ġandroidx . test . ext . junit . runners . Android JUnit 4 Ċ import Ġar cs . core . common . Arc Id Ċ import Ġar cs . core . data . EntityType Ċ import Ġar cs . core . data . FieldType . Companion . Text Ċ import Ġar cs . core . data . Plan . Handle Connection Ċ import Ġar cs . core . data . Schema Ċ import Ġar cs . core . data . Schema Fields Ċ import Ġar cs . core . data . Schema Name Ċ import Ġar cs . core . data . Handle Mode Ċ import Ġar cs . core . storage . keys . Volatile Storage Key Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ Ċ /** ĠTests Ġfor Ġ[ Parcelable Handle Connection ]' s Ġclasses . Ġ*/ Ċ @ RunWith ( Android JUnit 4 :: class ) Ċ class ĠParcel able Handle Connection Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġperson Schema Ġ= ĠSchema ( ĊĠĠĠĠĠĠĠ Ġset Of ( Schema Name (" Person ")), ĊĠĠĠĠĠĠĠ ĠSchema Fields ( map Of (" name " Ġto ĠText ), Ġempty Map ()), ĊĠĠĠĠĠĠĠ Ġ" 4 2 " ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġhandle Connection _ parcel able Round Trip _ works () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhandle Connection Ġ= ĠHandle Connection ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVol atile Storage Key ( Arc Id . new For Test (" foo "), Ġ" bar "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHandle Mode . ReadWrite , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEntityType ( person Schema ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġmarshal led Ġ= Ġwith ( Parcel . obtain ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Typed Object ( handle Connection . to Parcelable (), Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmarshall () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġunmarshal led Ġ= Ġwith ( Parcel . obtain ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġun marshall ( marshal led , Ġ 0 , Ġmarshal led . size ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetData Position ( 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġread Typed Object ( require NotNull ( Parcelable Handle Connection . CRE ATOR )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠassertThat ( un marshal led ?. actual ). isEqualTo ( handle Connection ) ĊĠĠĠ Ġ} Ċ } Ċ