/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠToast ĠInc . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . toast tab . proto kt . testing . rt Ċ Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġcom . toast tab . proto kt . rt . Bytes Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠWell Known Types Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` serialization Ġround Ġtrip Ġworks `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġoriginal Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdouble Ġ= Ġ 4 . 5 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfloat Ġ= Ġ 4 . 6 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġint 6 4 Ġ= Ġ 2 3 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuint 6 4 Ġ= Ġ 2 3 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġint 3 2 Ġ= Ġ 1 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuint 3 2 Ġ= Ġ 9 9 8 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbool Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstring Ġ= Ġ" some - string " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbytes Ġ= ĠBytes ( byte ArrayOf ( 4 , Ġ 5 , Ġ 3 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠassertThat ( Well Known Types . deserialize ( original . serialize ())) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( original ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` test Ġdeclared Ġnull ability `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" double ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" float ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" int 6 4 ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" uint 6 4 ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" int 3 2 ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" uint 3 2 ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" bool ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" string ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠWell Known Types :: class . property Is Marked Nullable (" bytes ") ĊĠĠĠĠĠĠĠ Ġ). isTrue () ĊĠĠĠ Ġ} Ċ } Ċ