| Index: adblock-android-tests/src/org/adblockplus/libadblockplus/tests/AndroidWebRequestResourceWrapperTest.java |
| diff --git a/adblock-android-tests/src/org/adblockplus/libadblockplus/tests/AndroidWebRequestResourceWrapperTest.java b/adblock-android-tests/src/org/adblockplus/libadblockplus/tests/AndroidWebRequestResourceWrapperTest.java |
| index 1970e677ca261d07c6134744d45c541b460a85ae..ff742e7a473d3423fe6da67ffac1e013335d94b1 100644 |
| --- a/adblock-android-tests/src/org/adblockplus/libadblockplus/tests/AndroidWebRequestResourceWrapperTest.java |
| +++ b/adblock-android-tests/src/org/adblockplus/libadblockplus/tests/AndroidWebRequestResourceWrapperTest.java |
| @@ -17,13 +17,10 @@ |
| package org.adblockplus.libadblockplus.tests; |
| -import android.os.SystemClock; |
| - |
| +import org.adblockplus.libadblockplus.BaseFilterEngineTest; |
| import org.adblockplus.libadblockplus.HeaderEntry; |
| import org.adblockplus.libadblockplus.ServerResponse; |
| -import org.adblockplus.libadblockplus.Subscription; |
| -import org.adblockplus.libadblockplus.WebRequest; |
| -import org.adblockplus.libadblockplus.android.AndroidWebRequest; |
| +import org.adblockplus.libadblockplus.ThrowingWebRequest; |
| import org.adblockplus.libadblockplus.android.AndroidWebRequestResourceWrapper; |
| import org.adblockplus.libadblockplus.android.Utils; |
| import org.adblockplus.libadblockplus.tests.test.R; |
| @@ -39,9 +36,7 @@ import java.util.Set; |
| public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| { |
| - private static final int UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS = 5 * 1000; // 5s |
| - |
| - private static final class TestRequest extends AndroidWebRequest |
| + private static final class TestRequest extends ThrowingWebRequest |
| { |
| private List<String> urls = new LinkedList<String>(); |
| @@ -114,28 +109,9 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| wrapperListener = new TestWrapperListener(); |
| wrapper.setListener(wrapperListener); |
| - super.setUp(); |
| - } |
| - |
| - @Override |
| - protected WebRequest createWebRequest() |
| - { |
| - return wrapper; |
| - } |
| + setWebRequest(wrapper); |
| - private void updateSubscriptions() |
| - { |
| - for (final Subscription s : this.filterEngine.getListedSubscriptions()) |
| - { |
| - try |
| - { |
| - s.updateFilters(); |
| - } |
| - finally |
| - { |
| - s.dispose(); |
| - } |
| - } |
| + super.setUp(); |
| } |
| private List<String> getUrlsListWithoutParams(Collection<String> urlWithParams) |
| @@ -148,19 +124,29 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| return list; |
| } |
| - private void testIntercepted(final String preloadUrl, final int resourceId) |
| + private void reset() |
| { |
| preloadMap.clear(); |
| - preloadMap.put(preloadUrl, resourceId); |
| + request.getUrls().clear(); |
| + storage.getInterceptedUrls().clear(); |
| + wrapperListener.getUrlsToResourceId().clear(); |
| + } |
| - assertEquals(0, request.getUrls().size()); |
| + @Override |
| + protected int getUpdateRequestCount() |
| + { |
| + return request.getUrls().size() + storage.getInterceptedUrls().size(); |
| + } |
| + private void testIntercepted(final String preloadUrl, final int resourceId) |
| + { |
| + reset(); |
| + preloadMap.put(preloadUrl, resourceId); |
| + assertEquals(0, request.getUrls().size()); |
| assertEquals(0, storage.getInterceptedUrls().size()); |
| - |
| assertEquals(0, wrapperListener.getUrlsToResourceId().size()); |
| updateSubscriptions(); |
| - SystemClock.sleep(UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS); |
| if (request.getUrls().size() > 0) |
| { |
| @@ -205,18 +191,14 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| { |
| final String preloadUrl = AndroidWebRequestResourceWrapper.EASYLIST; |
| - preloadMap.clear(); |
| + reset(); |
| preloadMap.put(preloadUrl, R.raw.easylist); |
| - |
| assertEquals(0, request.getUrls().size()); |
| - |
| assertEquals(0, storage.getInterceptedUrls().size()); |
| - |
| assertEquals(0, wrapperListener.getUrlsToResourceId().size()); |
| // update #1 - should be intercepted |
| updateSubscriptions(); |
| - SystemClock.sleep(UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS); |
| int requestsCount = request.getUrls().size(); |
| if (requestsCount > 0) |
| @@ -237,7 +219,6 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| wrapperListener.getUrlsToResourceId().clear(); |
| updateSubscriptions(); |
| - SystemClock.sleep(UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS); |
| assertTrue(request.getUrls().size() > requestsCount); |
| List<String> requestsWithoutParams = getUrlsListWithoutParams(request.getUrls()); |
| @@ -249,15 +230,13 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| private void testNotIntercepted(final String interceptedUrl, final int resourceId, |
| final String notInterceptedUrl) |
| { |
| - preloadMap.clear(); |
| + reset(); |
| preloadMap.put(interceptedUrl, resourceId); |
| - |
| assertEquals(0, request.getUrls().size()); |
| assertEquals(0, storage.getInterceptedUrls().size()); |
| assertEquals(0, wrapperListener.getUrlsToResourceId().size()); |
| updateSubscriptions(); |
| - SystemClock.sleep(UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS); |
| assertEquals(1, request.getUrls().size()); |
| List<String> requestUrlsWithoutParams = getUrlsListWithoutParams(request.getUrls()); |
| @@ -280,18 +259,14 @@ public class AndroidWebRequestResourceWrapperTest extends BaseFilterEngineTest |
| @Test |
| public void testInterceptedAll() |
| { |
| - preloadMap.clear(); |
| + reset(); |
| preloadMap.put(AndroidWebRequestResourceWrapper.EASYLIST, R.raw.easylist); |
| preloadMap.put(AndroidWebRequestResourceWrapper.ACCEPTABLE_ADS, R.raw.exceptionrules); |
| - |
| assertEquals(0, request.getUrls().size()); |
| - |
| assertEquals(0, storage.getInterceptedUrls().size()); |
| - |
| assertEquals(0, wrapperListener.getUrlsToResourceId().size()); |
| updateSubscriptions(); |
| - SystemClock.sleep(UPDATE_SUBSCRIPTIONS_WAIT_DELAY_MS); |
| assertEquals(0, request.getUrls().size()); |
| assertEquals(2, storage.getInterceptedUrls().size()); |