/* - Ċ Ġ* Ġ#% L Ċ Ġ* Ġmatch making . common Ċ Ġ* Ġ%% Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 6 Ġ- Ġ 2 0 1 9 ĠFre der ik ĠK am mel Ċ Ġ* Ġ%% Ċ Ġ* Ġ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 . Ċ Ġ* Ġ# L % Ċ Ġ*/ Ċ package Ġcom . github . vat b ub . match making . common Ċ Ċ import Ġcom . github . vat b ub . match making . test utils . TestUtils Ċ import Ġorg . junit . jupiter . api . Assertions Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġjava . io . String Reader Ċ Ċ private Ġdata Ġclass ĠDummy TestClass 1 ( val Ġproperty 1 : ĠString , Ġval Ġproperty 2 : ĠString ) ĊĠĠĠ Ġ: ĠRequest ( TestUtils . default Connection Id , ĠTestUtils . default Password , ĠDummy TestClass 1 :: class . qualified Name !! , Ġnull ) Ċ Ċ class ĠJson Interface Test Ġ{ ĊĠĠĠ Ġprivate Ġval Ġobject UnderTest Ġ= ĠDummy TestClass 1 (" hello ", Ġ" world ") ĊĠĠĠ Ġprivate Ġval Ġnot Pretty Json Ġ= Ġ"{\" property 1 \":\" ${ object UnderTest . property 1 }\ ", \" property 2 \":\" ${ object UnderTest . property 2 }\ ", \" protocol Version \":\" ${ object UnderTest . protocol Version }\ ", \" connection Id \":\" ${ object UnderTest . connection Id }\ ", \" password \":\" ${ object UnderTest . password }\ ", \" className \":\" ${ object UnderTest . className }\" }" ĊĠĠĠ Ġprivate Ġval Ġpretty Json Ġ= Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" property 1 \": Ġ\" ${ object UnderTest . property 1 }\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" property 2 \": Ġ\" ${ object UnderTest . property 2 }\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" protocol Version \": Ġ\" ${ object UnderTest . protocol Version }\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" connection Id \": Ġ\" ${ object UnderTest . connection Id }\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" password \": Ġ\" ${ object UnderTest . password }\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" className \": Ġ\" ${ object UnderTest . className } \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠtoJson No P rett ify Test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjson Ġ= Ġobject UnderTest . toJson () ĊĠĠĠĠĠĠĠ Ġprintln ( json ) ĊĠĠĠĠĠĠĠ ĠAssertions . assertFalse ( json . contains ( Regex ("[ \ n \ r ] "))) ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( not Pretty Json , Ġjson ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠtoJson P rett ify Test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjson Ġ= Ġobject UnderTest . toJson ( true ) ĊĠĠĠĠĠĠĠ Ġprintln ( json ) ĊĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( json . contains ( Regex ("[ \ n \ r ] "))) ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( pretty Json , Ġjson ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfrom Json String Clazz Test () Ġ{ ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( object UnderTest , Ġfrom Json ( not Pretty Json , ĠDummy TestClass 1 :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfrom Json Reader Clazz Test () Ġ{ ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( object UnderTest , Ġfrom Json ( String Reader ( not Pretty Json ), ĠDummy TestClass 1 :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfrom Json StringType Test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġabstract Request Ġ= Ġfrom Json ( not Pretty Json , ĠRequest :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Class Ġ= ĠClass . forName ( abstract Request . className ) ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( object UnderTest , Ġfrom Json < Dummy TestClass 1 >( not Pretty Json , Ġrequest Class )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfrom Json Reader Type Test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġabstract Request Ġ= Ġfrom Json ( not Pretty Json , ĠRequest :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Class Ġ= ĠClass . forName ( abstract Request . className ) ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( object UnderTest , Ġfrom Json < Dummy TestClass 1 >( String Reader ( not Pretty Json ), Ġrequest Class )) ĊĠĠĠ Ġ} Ċ } Ċ