| Index: chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java
|
| diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java
|
| index d17b2185d8435a8ea1dd574ad633d9bf836ec16f..2e8ab62e6f68b9e26841fb87b3ef69977bfb8bd0 100644
|
| --- a/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java
|
| +++ b/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java
|
| @@ -11,21 +11,22 @@ import static org.junit.Assert.assertTrue;
|
|
|
| import android.content.Context;
|
|
|
| +import com.google.android.gms.gcm.GcmNetworkManager;
|
| import com.google.android.gms.gcm.Task;
|
|
|
| import org.chromium.base.BaseChromiumApplication;
|
| import org.chromium.base.test.util.Feature;
|
| -import org.chromium.testing.local.LocalRobolectricTestRunner;
|
| import org.junit.Before;
|
| import org.junit.Test;
|
| import org.junit.runner.RunWith;
|
| -import org.robolectric.Robolectric;
|
| +import org.robolectric.RuntimeEnvironment;
|
| import org.robolectric.annotation.Config;
|
| +import org.robolectric.internal.ShadowExtractor;
|
|
|
| /**
|
| * Unit tests for BackgroundScheduler.
|
| */
|
| -@RunWith(LocalRobolectricTestRunner.class)
|
| +@RunWith(OfflinePageTestRunner.class)
|
| @Config(manifest = Config.NONE,
|
| application = BaseChromiumApplication.class,
|
| shadows = {ShadowGcmNetworkManager.class})
|
| @@ -33,24 +34,27 @@ public class BackgroundSchedulerTest {
|
| private Context mContext;
|
| private TriggerConditions mConditions1 = new TriggerConditions(
|
| true /* power */, 10 /* battery percentage */, false /* unmetered */);
|
| + private ShadowGcmNetworkManager mGcmNetworkManager;
|
|
|
| @Before
|
| public void setUp() throws Exception {
|
| - mContext = Robolectric.application;
|
| - ShadowGcmNetworkManager.clear();
|
| + mContext = RuntimeEnvironment.application;
|
| + mGcmNetworkManager = (ShadowGcmNetworkManager) ShadowExtractor.extract(
|
| + GcmNetworkManager.getInstance(mContext));
|
| + mGcmNetworkManager.clear();
|
| }
|
|
|
| @Test
|
| @Feature({"OfflinePages"})
|
| public void testSchedule() {
|
| BackgroundScheduler scheduler = new BackgroundScheduler();
|
| - assertNull(ShadowGcmNetworkManager.getScheduledTask());
|
| + assertNull(mGcmNetworkManager.getScheduledTask());
|
| scheduler.schedule(mContext, mConditions1);
|
| // Check with gcmNetworkManagerShadow that schedule got called.
|
| - assertNotNull(ShadowGcmNetworkManager.getScheduledTask());
|
| + assertNotNull(mGcmNetworkManager.getScheduledTask());
|
|
|
| // Verify details of the scheduled task.
|
| - Task task = ShadowGcmNetworkManager.getScheduledTask();
|
| + Task task = mGcmNetworkManager.getScheduledTask();
|
| assertEquals(OfflinePageUtils.TASK_TAG, task.getTag());
|
| long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(task.getExtras());
|
| assertTrue(scheduledTimeMillis > 0L);
|
| @@ -62,12 +66,12 @@ public class BackgroundSchedulerTest {
|
| @Feature({"OfflinePages"})
|
| public void testUnschedule() {
|
| BackgroundScheduler scheduler = new BackgroundScheduler();
|
| - assertNull(ShadowGcmNetworkManager.getScheduledTask());
|
| + assertNull(mGcmNetworkManager.getScheduledTask());
|
| scheduler.schedule(mContext, mConditions1);
|
| - assertNotNull(ShadowGcmNetworkManager.getScheduledTask());
|
| + assertNotNull(mGcmNetworkManager.getScheduledTask());
|
|
|
| - assertNull(ShadowGcmNetworkManager.getCanceledTask());
|
| + assertNull(mGcmNetworkManager.getCanceledTask());
|
| scheduler.unschedule(mContext);
|
| - assertNotNull(ShadowGcmNetworkManager.getCanceledTask());
|
| + assertNotNull(mGcmNetworkManager.getCanceledTask());
|
| }
|
| }
|
|
|