package Ġcom . air bnb . par is . proxies Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . View Ċ import Ġandroid . view . View Style App lier Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . air bnb . par is . R Ċ import Ġcom . air bnb . par is . attribute _ values . ResourceId Ċ import Ġcom . air bnb . par is . styles . Program matic Style Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . ro bo lectric . Ro bo lectric TestRunner Ċ import Ġorg . ro bo lectric . Runtime Environment Ċ Ċ @ RunWith ( Ro bo lectric TestRunner :: class ) Ċ class ĠView Style Builder Test Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcontext : ĠContext ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġview : ĠView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbuilder : ĠView Style App lier . Style Builder ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext Ġ= ĠRuntime Environment . application ĊĠĠĠĠĠĠĠ Ġview Ġ= ĠView ( context ) ĊĠĠĠĠĠĠĠ Ġbuilder Ġ= ĠView Style App lier . Style Builder () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġforeground _ null () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . foreground ( null ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . foreground , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbackground _ null () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . background ( null ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . background , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbackground Tint Res () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . background Tint Res ( android . R . color . black ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . background Tint , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResource Id ( android . R . color . black ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbackground Tint Color State List () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . background Tint ( Context Compat . getColor State List ( context , Ġandroid . R . color . black )). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . background Tint , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor State List ( context , Ġandroid . R . color . black ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbackground Tint Mode () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . background Tint Mode ( View Proxy . PORT ER DU FF _ MODE _ MULTI PLY ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . background Tint Mode , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠView Proxy . PORT ER DU FF _ MODE _ MULTI PLY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ visible () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility ( View . VISIBLE ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . visibility , ĠView . VISIBLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ visible Res () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility Res ( R . integer . test _ view _ style _ builder _ visible ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . visibility , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResource Id ( R . integer . test _ view _ style _ builder _ visible ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ invisible () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility ( View . IN VISIBLE ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . visibility , ĠView . IN VISIBLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ invisible Res () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility Res ( R . integer . test _ view _ style _ builder _ invisible ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . visibility , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResource Id ( R . integer . test _ view _ style _ builder _ invisible ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ g one () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility ( View . GONE ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . visibility , ĠView . GONE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvisibility _ g one Res () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . visibility Res ( R . integer . test _ view _ style _ builder _ g one ). build () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . visibility , ĠResource Id ( R . integer . test _ view _ style _ builder _ g one )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġlayout Weight () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġweight Ġ= Ġ 2 f ĊĠĠĠĠĠĠĠ Ġval Ġstyle Ġ= Ġbuilder . layout Weight ( weight ). build () ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram matic Style . builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. put ( android . R . attr . layout _ weight , Ġweight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ