@Test public void shouldCacheFalse() throws Exception { mRequest.setShouldCache(false); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mCache.putCalled); }
@Test public void shouldCacheFalse() throws Exception { mRequest.setShouldCache(false); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mCache.putCalled); }
@Test public void exceptionPostsError() throws Exception { mNetwork.setNumExceptionsToThrow(MockNetwork.ALWAYS_THROW_EXCEPTIONS); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.postResponse_called); assertTrue(mDelivery.postError_called); }
@Test public void exceptionPostsError() throws Exception { mNetwork.setNumExceptionsToThrow(MockNetwork.ALWAYS_THROW_EXCEPTIONS); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.postResponse_called); assertTrue(mDelivery.postError_called); }
@Test public void cancelledRequest() throws Exception { mRequest.cancel(); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mCache.getCalled); assertFalse(mDelivery.wasEitherResponseCalled()); }
@Test public void nonExpiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, false, false); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mDelivery.postResponse_called); assertFalse(mDelivery.postError_called); }
@Test public void nonExpiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, false, false); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mDelivery.postResponse_called); assertFalse(mDelivery.postError_called); }
@Test public void shouldCacheTrue() throws Exception { mNetwork.setDataToReturn(CANNED_DATA); mRequest.setShouldCache(true); mRequest.setCacheKey("bananaphone"); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mCache.putCalled); assertNotNull(mCache.entryPut); assertTrue(Arrays.equals(mCache.entryPut.data, CANNED_DATA)); assertEquals("bananaphone", mCache.keyPut); } }
@Test public void cancelledRequest() throws Exception { mRequest.cancel(); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mCache.getCalled); assertFalse(mDelivery.wasEitherResponseCalled()); }
@Test public void shouldCacheTrue() throws Exception { mNetwork.setDataToReturn(CANNED_DATA); mRequest.setShouldCache(true); mRequest.setCacheKey("bananaphone"); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mCache.putCalled); assertNotNull(mCache.entryPut); assertTrue(Arrays.equals(mCache.entryPut.data, CANNED_DATA)); assertEquals("bananaphone", mCache.keyPut); } }
@Test public void successPostsResponse() throws Exception { mNetwork.setDataToReturn(CANNED_DATA); mNetwork.setNumExceptionsToThrow(0); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.postError_called); assertTrue(mDelivery.postResponse_called); Response<?> response = mDelivery.responsePosted; assertNotNull(response); assertTrue(response.isSuccess()); assertTrue(Arrays.equals((byte[])response.result, CANNED_DATA)); }
@Test public void successPostsResponse() throws Exception { mNetwork.setDataToReturn(CANNED_DATA); mNetwork.setNumExceptionsToThrow(0); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.postError_called); assertTrue(mDelivery.postResponse_called); Response<?> response = mDelivery.responsePosted; assertNotNull(response); assertTrue(response.isSuccess()); assertTrue(Arrays.equals((byte[])response.result, CANNED_DATA)); }
@Test public void cacheMiss() throws Exception { mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.wasEitherResponseCalled()); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertNull(request.getCacheEntry()); }
@Test public void cacheMiss() throws Exception { mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.wasEitherResponseCalled()); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertNull(request.getCacheEntry()); }
@Test public void softExpiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, false, true); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mDelivery.postResponse_called); assertFalse(mDelivery.postError_called); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertSame(entry, request.getCacheEntry()); }
@Test public void expiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, true, true); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.wasEitherResponseCalled()); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertSame(entry, request.getCacheEntry()); } }
@Test public void softExpiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, false, true); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertTrue(mDelivery.postResponse_called); assertFalse(mDelivery.postError_called); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertSame(entry, request.getCacheEntry()); }
@Test public void expiredCacheHit() throws Exception { Cache.Entry entry = CacheTestUtils.makeRandomCacheEntry(null, true, true); mCache.setEntryToReturn(entry); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.wasEitherResponseCalled()); assertTrue(mNetworkQueue.size() > 0); Request request = mNetworkQueue.take(); assertSame(entry, request.getCacheEntry()); } }
@Test public void cancelledRequest() throws Exception { mRequest.cancel(); mCacheQueue.add(mRequest); mCacheQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mCache.getCalled); assertFalse(mDelivery.wasEitherResponseCalled()); }
@Test public void successPostsResponse() throws Exception { mNetwork.setDataToReturn(CANNED_DATA); mNetwork.setNumExceptionsToThrow(0); mNetworkQueue.add(mRequest); mNetworkQueue.waitUntilEmpty(TIMEOUT_MILLIS); assertFalse(mDelivery.postError_called); assertTrue(mDelivery.postResponse_called); Response<?> response = mDelivery.responsePosted; assertNotNull(response); assertTrue(response.isSuccess()); assertTrue(Arrays.equals((byte[])response.result, CANNED_DATA)); }