package Ġeu . se _ b ast ia an . m ari et je . data Ċ Ċ import Ġeu . se _ b ast ia an . m ari et je . data . local . Preferences Helper Ċ import Ġeu . se _ b ast ia an . m ari et je . data . model . Empty Ċ import Ġeu . se _ b ast ia an . m ari et je . data . model . Permissions Ċ import Ġeu . se _ b ast ia an . m ari et je . data . model . Queue Ċ import Ġeu . se _ b ast ia an . m ari et je . data . remote . Control Service Ċ import Ġeu . se _ b ast ia an . m ari et je . test . common . TestData Factory Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . mockito . Mock Ċ import Ġorg . mockito . Mockito .* Ċ import Ġorg . mockito . junit . Mockito JUnit Runner Ċ import Ġrx . Observable Ċ import Ġrx . ob servers . Test Subscriber Ċ Ċ @ RunWith ( Mockito JUnit Runner :: class ) Ċ class ĠControl DataManager Test Ġ{ ĊĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġmock Control Service : ĠControl Service ĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġmock Preferences Helper : ĠPreferences Helper ĊĊĠĠĠ Ġlateinit Ġvar Ġdata Manager : ĠControl DataManager ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġdata Manager Ġ= ĠControl DataManager ( mock Control Service , Ġmock Preferences Helper ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcsrf Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcsrf Token Ġ= Ġ" csrf _ token " ĊĠĠĠĠĠĠĠ Ġ` when `( mock Preferences Helper . csrf Token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( csrf Token ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Normal Cs rf Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . csrf ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < String >() ĊĠĠĠĠĠĠĠ Ġdata Manager . csrf (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( csrf Token )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġqueue Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Queue Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . queue ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Queue >() ĊĠĠĠĠĠĠĠ Ġdata Manager . queue (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġskip Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . skip ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . skip (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmove Up Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . move Up ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . move Up ( 0 ). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmove Down Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . move Down ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . move Down ( 0 ). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcancel Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . cancel ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . cancel ( 0 ). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġrequest Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . request ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . request ( 0 ). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvolume Down Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . volume Down ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . volume Down (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvolume Up Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . volume Up ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Empty >() ĊĠĠĠĠĠĠĠ Ġdata Manager . volume Up (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġpermissions Emit s Values () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Permissions Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . permissions ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTest Subscriber < Permissions >() ĊĠĠĠĠĠĠĠ Ġdata Manager . permissions (). subscribe ( result ) ĊĠĠĠĠĠĠĠ Ġresult . assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġresult . assert Received On Next ( listOf ( response )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcsrf Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Normal Cs rf Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . csrf ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . csrf (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). csrf () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġqueue Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Queue Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . queue ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . queue (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). queue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġskip Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . skip ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . skip (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). skip () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmove Down Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . move Down ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . move Down ( 0 ). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). move Down ( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmove Up Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . move Up ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . move Up ( 0 ). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). move Up ( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcancel Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . cancel ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . cancel ( 0 ). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). cancel ( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġrequest Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . request ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . request ( 0 ). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). request ( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvolume Up Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . volume Up ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . volume Up (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). volume Up () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvolume Down Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠEmpty () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . volume Down ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . volume Down (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). volume Down () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġpermissions Calls Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= ĠTest Data Factory . make Permissions Response () ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . permissions ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( response )) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . permissions (). subscribe () ĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service ). permissions () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcsrf Calls Preferences Helper () Ġ{ ĊĠĠĠĠĠĠĠ Ġ` when `( mock Preferences Helper . csrf Token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn (" csrf _ token ") ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . csrf ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Observable . just ( TestData Factory . make Normal Cs rf Response ())) ĊĊĠĠĠĠĠĠĠ Ġdata Manager . csrf (). subscribe () ĊĊĠĠĠĠĠĠĠ Ġ` when `( mock Preferences Helper . csrf Token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn (" csrf _ token ") ĊĠĠĠĠĠĠĠ Ġ` when `( mock Control Service . csrf ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. then Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ` when `( mock Preferences Helper . csrf Token ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ("") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠObservable . just ( TestData Factory . make Normal Cs rf Response ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġdata Manager . csrf (). subscribe () ĊĊĠĠĠĠĠĠĠ Ġverify < Preferences Helper >( mock Preferences Helper , Ġtimes ( 2 )). set Cs rf token ("") ĊĠĠĠĠĠĠĠ Ġverify < Preferences Helper >( mock Preferences Helper , Ġtimes ( 4 )). csrf Token ĊĠĠĠĠĠĠĠ Ġverify < Preferences Helper >( mock Preferences Helper ). set Cs rf token (" csrf _ token ") ĊĊĠĠĠĠĠĠĠ Ġverify < Control Service >( mock Control Service , Ġtimes ( 2 )). csrf () ĊĠĠĠ Ġ} Ċ } Ċ