package Ġcom . github . jame sh n se ars . quote un quote . configure . fragment . content Ċ Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . Fragment Factory Ċ import Ġandroidx . fragment . app . testing . Fragment Scenario Ċ import Ġandroidx . fragment . app . testing . launch Fragment In Container Ċ import Ġandroidx . lifecycle . Lifecycle Ċ import Ġandroidx . test . ext . junit . runners . Android JUnit 4 Ċ import Ġcom . github . jame sh n se ars . quote un quote . Build Config Ċ import Ġcom . github . jame sh n se ars . quote un quote . Quote Un quote Model Ċ import Ġcom . github . jame sh n se ars . quote un quote . R Ċ import Ġcom . github . jame sh n se ars . quote un quote . database . quotation . Author PO JO Ċ import Ġcom . github . jame sh n se ars . quote un quote . utils . Content Selection Ċ import Ġcom . github . jame sh n se ars . quote un quote . utils . logging . Shadow Logging Helper Ċ import Ġcom . github . jame sh n se ars . quote un quote . utils . widget . Widget Id Helper Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġio . reactivex . Single Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertFalse Ċ import Ġorg . junit . Assert . assertTrue Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . ro bo lectric . annotation . Config Ċ Ċ @ RunWith ( Android JUnit 4 :: class ) Ċ @ Config ( sdk Ġ= Ġ[ Build . VERSION _ CODES . P ]) Ċ class ĠContent Fragment Test Ġ: ĠShadow Logging Helper () Ġ{ ĊĠĠĠ Ġclass ĠContent Fragment Double Ġ: ĠContent Fragment ( Widget Id Helper . WIDGET _ ID _ 0 1 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquote Un quote Model Ġ= Ġmock k < Quote Un quote Model >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . count All () Ġ} Ġreturns ĠSingle . just ( 7 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġauthors Ġ= ĠlistOf ( Author PO JO (" a 1 ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . authors () Ġ} Ġreturns ĠSingle . just ( authors ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . authors Sorted ( authors ) Ġ} Ġreturns ĠlistOf (" x ", Ġ" a ", Ġ" y ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . authors Index ( any ()) Ġ} Ġreturns Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . count Author Quot ations ( any ()) Ġ} Ġreturns Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġquote Un quote Model . count F avour ites () Ġ} Ġreturns ĠSingle . just ( 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . quote Un quote Model Ġ= Ġquote Un quote Model ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġscenario : ĠFragment Scenario < Content Fragment > ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġbefore () Ġ{ ĊĠĠĠĠĠĠĠ Ġscenario Ġ= Ġlaunch Fragment In Container ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBundle (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . style . Fragment Scenario Empty Fragment Activity Theme , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLifecycle . State . RE SU MED , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġobject Ġ: ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFragment Factory () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinstantiate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclass Loader : ĠClassLoader , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠclassName : ĠString ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ): ĠFragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠContent Fragment Double () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġconfirm Initial Content Selections () Ġ{ ĊĠĠĠĠĠĠĠ Ġscenario . on Fragment Ġ{ Ġfragment Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . AUTHOR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . FA VO UR ITES ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . SEARCH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" All : Ġ 7 ", Ġfragment . fragment Content Binding ?. radioButton All ?. text . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" Author : Ġ 1 ", Ġfragment . fragment Content Binding ?. radioButton Author ?. text . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" F avour ite : Ġ 0 ", Ġfragment . fragment Content Binding ?. radioButton F avour ites ?. text . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ("", Ġfragment . fragment Content Binding ?. edit Text Search Text ?. text . toString ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . shutdown () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġchange Content Selection () Ġ{ ĊĠĠĠĠĠĠĠ Ġscenario . on Fragment Ġ{ Ġfragment Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġdefault Ġcontent Ġselection ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . AUTHOR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . FA VO UR ITES ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . SEARCH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . content Preferences ?. content Selection Ġ= ĠContent Selection . AUTHOR ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . setSelection () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . AUTHOR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . FA VO UR ITES ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . SEARCH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . content Preferences ?. content Selection Ġ= ĠContent Selection . FA VO UR ITES ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . setSelection () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . AUTHOR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . FA VO UR ITES ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . SEARCH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . content Preferences ?. content Selection Ġ= ĠContent Selection . SEARCH ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . setSelection () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . AUTHOR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . FA VO UR ITES ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( fragment . content Preferences ?. content Selection Ġ== ĠContent Selection . SEARCH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . shutdown () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ