/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 3 ĠSquare , ĠInc . Ċ Ġ* Ċ Ġ* Ġ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 . squareup . pic asso 3 Ċ Ċ import Ġandroid . graphics . Bitmap . Config . ARGB _ 8 8 8 8 Ċ import Ġandroid . graphics . drawable . Animation Drawable Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġcom . squareup . pic asso 3 . Pic asso . Loaded From . MEMORY Ċ import Ġcom . squareup . pic asso 3 . RequestHandler . Result . Bitmap Ċ import Ġcom . squareup . pic asso 3 . TestUtils . NO _ EVENT _ LIST EN ERS Ċ import Ġcom . squareup . pic asso 3 . TestUtils . NO _ HAND L ERS Ċ import Ġcom . squareup . pic asso 3 . TestUtils . NO _ TRANSFORM ERS Ċ import Ġcom . squareup . pic asso 3 . TestUtils . RESOURCE _ ID _ 1 Ċ import Ġcom . squareup . pic asso 3 . TestUtils . SIMPLE _ REQUEST Ċ import Ġcom . squareup . pic asso 3 . TestUtils . UNUSED _ CALL _ FACTORY Ċ import Ġcom . squareup . pic asso 3 . TestUtils . make Bitmap Ċ import Ġcom . squareup . pic asso 3 . TestUtils . mock Callback Ċ import Ġcom . squareup . pic asso 3 . TestUtils . mock ImageView Target Ċ import Ġcom . squareup . pic asso 3 . TestUtils . mock Pic asso Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . mockito . Argument Matchers . any Ċ import Ġorg . mockito . Mockito .` when ` Ċ import Ġorg . mockito . Mockito . mock Ċ import Ġorg . mockito . Mockito . verify Ċ import Ġorg . ro bo lectric . Ro bo lectric TestRunner Ċ import Ġorg . ro bo lectric . Runtime Environment Ċ Ċ @ RunWith ( Ro bo lectric TestRunner :: class ) Ċ class ĠImageView Action Test Ġ{ ĊĊĠ Ġ@ Test ĊĠ Ġfun Ġinvokes Target And Callback Success If Target IsNotNull () Ġ{ ĊĠĠĠ Ġval Ġbitmap Ġ= Ġmake Bitmap () ĊĠĠĠ Ġval Ġdispatcher Ġ= Ġmock ( Dispatcher :: class . java ) ĊĠĠĠ Ġval Ġcache Ġ= ĠPlatform L ru Cache ( 0 ) ĊĠĠĠ Ġval Ġpic asso Ġ= ĠPic asso ( ĊĠĠĠĠĠ ĠRuntime Environment . application , Ġdispatcher , ĠUN USED _ CALL _ FACTORY , Ġnull , Ġcache , Ġnull , ĊĠĠĠĠĠ ĠNO _ TRANSFORM ERS , ĠNO _ HAND L ERS , ĠNO _ EVENT _ LIST EN ERS , ĠAR GB _ 8 8 8 8 , Ġfalse , Ġfalse ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġval Ġcallback Ġ= Ġmock Callback () ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġpic asso , ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġnull , ĊĠĠĠĠĠ Ġerror Res Id Ġ= Ġ 0 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġcallback ĊĠĠĠ Ġ) ĊĠĠĠ Ġrequest . complete ( Bitmap ( bitmap , ĠMEM ORY )) ĊĠĠĠ Ġverify ( target ). setImage Drawable ( any ( Pic asso Drawable :: class . java )) ĊĠĠĠ Ġverify ( callback ). on Success () ĊĠ Ġ} ĊĊĠ Ġ@ Test ĊĠ Ġfun Ġinvokes Target And Callback Error If Target IsNotNull WithError ResourceId () Ġ{ ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġval Ġcallback Ġ= Ġmock Callback () ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġmock Pic asso ( Runtime Environment . application ), ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġnull , ĊĠĠĠĠĠ Ġerror Res Id Ġ= ĠRESOURCE _ ID _ 1 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġcallback ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġe Ġ= ĠRuntimeException () ĊĊĠĠĠ Ġrequest . error ( e ) ĊĊĠĠĠ Ġverify ( target ). setImage Resource ( RESOURCE _ ID _ 1 ) ĊĠĠĠ Ġverify ( callback ). onError ( e ) ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġinvokes Error If Target IsNotNull WithError ResourceId () Ġ{ ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġval Ġcallback Ġ= Ġmock Callback () ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġmock Pic asso ( Runtime Environment . application ), ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġnull , ĊĠĠĠĠĠ Ġerror Res Id Ġ= ĠRESOURCE _ ID _ 1 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġcallback ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġe Ġ= ĠRuntimeException () ĊĊĠĠĠ Ġrequest . error ( e ) ĊĠĠĠ Ġverify ( target ). setImage Resource ( RESOURCE _ ID _ 1 ) ĊĠĠĠ Ġverify ( callback ). onError ( e ) ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġinvokes Error If Target IsNotNull WithError Drawable () Ġ{ ĊĠĠĠ Ġval Ġerror Drawable Ġ= Ġmock ( Drawable :: class . java ) ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġval Ġcallback Ġ= Ġmock Callback () ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġmock Pic asso ( Runtime Environment . application ), ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġerror Drawable , ĊĠĠĠĠĠ Ġerror Res Id Ġ= Ġ 0 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġcallback ĊĠĠĠ Ġ) ĊĠĠĠ Ġval Ġe Ġ= ĠRuntimeException () ĊĊĠĠĠ Ġrequest . error ( e ) ĊĊĠĠĠ Ġverify ( target ). setImage Drawable ( error Drawable ) ĊĠĠĠ Ġverify ( callback ). onError ( e ) ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġclears Callback On Cancel () Ġ{ ĊĠĠĠ Ġval Ġpic asso Ġ= Ġmock Pic asso ( Runtime Environment . application ) ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġval Ġcallback Ġ= Ġmock Callback () ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġpic asso , ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġnull , ĊĠĠĠĠĠ Ġerror Res Id Ġ= Ġ 0 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġcallback ĊĠĠĠ Ġ) ĊĠĠĠ Ġrequest . cancel () ĊĠĠĠ ĠassertThat ( request . callback ). isNull () ĊĠ Ġ} ĊĊĠ Ġ@ Test Ġfun Ġstop Placeholder Animation OnError () Ġ{ ĊĠĠĠ Ġval Ġpic asso Ġ= Ġmock Pic asso ( Runtime Environment . application ) ĊĠĠĠ Ġval Ġplaceholder Ġ= Ġmock ( Animation Drawable :: class . java ) ĊĠĠĠ Ġval Ġtarget Ġ= Ġmock ImageView Target () ĊĠĠĠ Ġ` when `( target . drawable ). thenReturn ( placeholder ) ĊĠĠĠ Ġval Ġrequest Ġ= ĠImageView Action ( ĊĠĠĠĠĠ Ġpic asso Ġ= Ġpic asso , ĊĠĠĠĠĠ Ġtarget Ġ= Ġtarget , ĊĠĠĠĠĠ Ġdata Ġ= ĠS IMP LE _ REQUEST , ĊĠĠĠĠĠ Ġerror Drawable Ġ= Ġnull , ĊĠĠĠĠĠ Ġerror Res Id Ġ= Ġ 0 , ĊĠĠĠĠĠ Ġno Fade Ġ= Ġfalse , ĊĠĠĠĠĠ Ġcallback Ġ= Ġnull ĊĠĠĠ Ġ) ĊĠĠĠ Ġrequest . error ( RuntimeException ()) ĊĠĠĠ Ġverify ( placeholder ). stop () ĊĠ Ġ} Ċ } Ċ