/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 , Ġ 2 0 2 2 ĠZ UP ĠIT ĠSER V IC OS ĠEM ĠT EC NO LOG IA ĠE ĠIN OV AC AO ĠSA Ċ Ġ* Ċ Ġ* Ġ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 Ġbr . com . z up . be agle . android . data . serializer . actions Ċ Ċ import Ġbr . com . z up . be agle . android . action . Submit Form Ċ import Ġbr . com . z up . be agle . android . analytics . Action Analytics Config Ċ import Ġbr . com . z up . be agle . android . analytics . Action Analytics Properties Ċ import Ġorg . junit . jupiter . api . Assertions Ċ import Ġorg . junit . jupiter . api . DisplayName Ċ import Ġorg . junit . jupiter . api . Nested Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ @ DisplayName (" Given Ġa ĠSubmit Form ĠAction ") Ċ class ĠSubmit Form Serializer Test Ġ: ĠBase Action Serializer Test () Ġ{ ĊĊĠĠĠ Ġ@ DisplayName (" When Ġtry Ġto Ġdeserialize Ġjson ĠSubmit Form ") ĊĠĠĠ Ġ@ Nested ĊĠĠĠ Ġinner Ġclass ĠDeserialize Json Submit Form Test Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ DisplayName (" Then Ġshould Ġreturn Ġcorrect Ġobject ") ĊĠĠĠĠĠĠĠ Ġ@ Test ĊĠĠĠĠĠĠĠ Ġfun Ġtest Deserialize Json Submit Form () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠGiven ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġjson Ġ= Ġmake Action Submit Form Json () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠWhen ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactual Ġ= Ġdeserialize ( json ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠThen ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAssertions . assertNotNull ( actual ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( actual Ġis ĠSubmit Form ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ DisplayName (" When Ġtry Ġserialize Ġobject ĠSubmit Form ") ĊĠĠĠ Ġ@ Nested ĊĠĠĠ Ġinner Ġclass ĠSerialize Object Submit Form Test Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ DisplayName (" Then Ġshould Ġreturn Ġcorrect Ġjson ") ĊĠĠĠĠĠĠĠ Ġ@ Test ĊĠĠĠĠĠĠĠ Ġfun Ġtest Serialize Json Submit Form () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtest Serialize Object ( make Action Submit Form Json (), Ġmake Action Submit Form Object ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmake Action Submit Form Json () Ġ= Ġ""" ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġ"_ be agle Action _ ": Ġ" be agle : submit form ", ĊĠĠĠĠĠĠĠ Ġ" analytics ": Ġ${ make Action Analytics Config Json ()} ĊĠĠĠ Ġ} Ċ """ ĊĊĠĠĠ Ġprivate Ġfun Ġmake Action Submit Form Object () Ġ= ĠSubmit Form ( ĊĠĠĠĠĠĠĠ Ġanalytics Ġ= Ġmake Action Analytics Config Object () ĊĠĠĠ Ġ) ĊĊĊĠĠĠ Ġprivate Ġfun Ġmake Action Analytics Config Json () Ġ= Ġ""" ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġ" attributes ":[" attributes "], ĊĠĠĠĠĠĠĠ Ġ" additional Entries ":{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" attributes ":" test " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġ""" ĊĊĠĠĠ Ġprivate Ġfun Ġmake Action Analytics Config Object () Ġ= ĠAction Analytics Config . Enabled ( ĊĠĠĠĠĠĠĠ ĠAction Analytics Properties ( listOf (" attributes "), Ġmap Of (" attributes " Ġto Ġ" test ")) ĊĠĠĠ Ġ) Ċ }