/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 9 - 2 0 2 0 ĠMagic ĠLe ap , ĠInc . ĠAll ĠRights ĠReserved Ċ Ġ* Ċ Ġ* Ġ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 . mag icle ap . magic script . scene . nodes . layouts . manager Ċ Ċ import Ġcom . facebook . react . bridge . Java Only Map Ċ import Ġcom . mag icle ap . magic script . layout Until Stable Bounds Ċ import Ġcom . mag icle ap . magic script . scene . nodes . Content Node Ċ import Ġcom . mag icle ap . magic script . scene . nodes . base . Transform Node Ċ import Ġcom . mag icle ap . magic script . scene . nodes . layouts . params . Page View LayoutParams Ċ import Ġcom . mag icle ap . magic script . scene . nodes . props . AABB Ċ import Ġcom . mag icle ap . magic script . scene . nodes . props . Alignment Ċ import Ġcom . mag icle ap . magic script . scene . nodes . props . Padding Ċ import Ġcom . mag icle ap . magic script . utils . Vector 2 Ċ import Ġorg . am sh ove . k lu ent . should Equal Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . ro bo lectric . Ro bo lectric TestRunner Ċ Ċ @ RunWith ( Ro bo lectric TestRunner :: class ) Ċ class ĠPage View Manager Test Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġpage View Manager : ĠPage View LayoutManager ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġchildren List : ĠList < Content Node > ĊĠĠĠ Ġprivate Ġval Ġchildren Bounds Ġ= Ġmutable Map Of < Transform Node , ĠA ABB >() ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġitems Padding : ĠMap < Transform Node , ĠPadding > ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġitems Alignment : ĠMap < Transform Node , ĠAlignment > ĊĠĠĠ Ġprivate Ġvar Ġvisible Page Ġ= Ġ 0 ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġpage View Manager Ġ= ĠPage View LayoutManager () ĊĠĠĠĠĠĠĠ Ġchildren List Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContent Node ( Java Only Map ()), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContent Node ( Java Only Map ()) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġitems Padding Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchildren List [ 0 ] Ġto ĠPadding (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchildren List [ 1 ] Ġto ĠPadding () ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġitems Alignment Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchildren List [ 0 ] Ġto ĠAlignment ( Alignment . Vertical . TOP , ĠAlignment . Horizontal . LEFT ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchildren List [ 1 ] Ġto ĠAlignment ( Alignment . Vertical . TOP , ĠAlignment . Horizontal . LEFT ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġhide Ġall Ġchildren Ġbut Ġthe Ġfirst Ġwhen Ġvisible Ġpage Ġis Ġ 0 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġvisible Page Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġpage View Manager . layout Until Stable Bounds ( children List , Ġchildren Bounds , Ġget LayoutParams (), Ġ 1 0 ) ĊĊĠĠĠĠĠĠĠ Ġchildren List [ 0 ]. isVisible Ġshould Equal Ġtrue ĊĠĠĠĠĠĠĠ Ġchildren List [ 1 ]. isVisible Ġshould Equal Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget LayoutParams () Ġ= ĊĠĠĠĠĠĠĠ ĠPage View LayoutParams ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisible Page Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsize Ġ= ĠVector 2 ( 1 f , Ġ 1 f ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitems Alignment Ġ= Ġitems Alignment , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitems Padding Ġ= Ġitems Padding ĊĠĠĠĠĠĠĠ Ġ) Ċ }