@Test public void enqueueingDeferredRequestCancelsThePreviousOne() { ImageView target = mockImageViewTarget(); DeferredRequestCreator firstRequestCreator = mockDeferredRequestCreator(); picasso.defer(target, firstRequestCreator); assertThat(picasso.targetToDeferredRequestCreator).containsKey(target); DeferredRequestCreator secondRequestCreator = mockDeferredRequestCreator(); picasso.defer(target, secondRequestCreator); verify(firstRequestCreator).cancel(); assertThat(picasso.targetToDeferredRequestCreator).containsKey(target); }
@Test public void shutdownClearsDeferredRequests() { DeferredRequestCreator deferredRequestCreator = mockDeferredRequestCreator(); ImageView target = mockImageViewTarget(); picasso.targetToDeferredRequestCreator.put(target, deferredRequestCreator); picasso.shutdown(); verify(deferredRequestCreator).cancel(); assertThat(picasso.targetToDeferredRequestCreator).isEmpty(); }
@Test public void cancelExistingRequestWithDeferredImageViewTarget() { ImageView target = mockImageViewTarget(); DeferredRequestCreator deferredRequestCreator = mockDeferredRequestCreator(); picasso.targetToDeferredRequestCreator.put(target, deferredRequestCreator); picasso.cancelRequest(target); verify(deferredRequestCreator).cancel(); assertThat(picasso.targetToDeferredRequestCreator).isEmpty(); }
@Test public void deferAddsToMap() { ImageView target = mockImageViewTarget(); DeferredRequestCreator deferredRequestCreator = mockDeferredRequestCreator(); assertThat(picasso.targetToDeferredRequestCreator).isEmpty(); picasso.defer(target, deferredRequestCreator); assertThat(picasso.targetToDeferredRequestCreator).hasSize(1); }
@Test public void cancelTagAllDeferredRequests() { ImageView target = mockImageViewTarget(); DeferredRequestCreator deferredRequestCreator = mockDeferredRequestCreator(); when(deferredRequestCreator.getTag()).thenReturn("TAG"); picasso.defer(target, deferredRequestCreator); picasso.cancelTag("TAG"); verify(deferredRequestCreator).cancel(); }