| Index: components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java
|
| diff --git a/components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java b/components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java
|
| index b40366c83f7ff1a2d1a062cbffcfeac629f60c3e..2497c7e2e6143eb4e88c479916ff1d6067d3f09a 100644
|
| --- a/components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java
|
| +++ b/components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java
|
| @@ -16,6 +16,8 @@ import com.google.android.gms.gcm.TaskParams;
|
| import org.junit.Before;
|
| import org.junit.Test;
|
| import org.junit.runner.RunWith;
|
| +import org.mockito.Mock;
|
| +import org.mockito.MockitoAnnotations;
|
| import org.robolectric.RuntimeEnvironment;
|
| import org.robolectric.annotation.Config;
|
|
|
| @@ -23,6 +25,8 @@ import org.chromium.base.ContextUtils;
|
| import org.chromium.base.test.util.Feature;
|
| import org.chromium.testing.local.LocalRobolectricTestRunner;
|
|
|
| +import java.util.concurrent.TimeUnit;
|
| +
|
| /** Unit tests for {@link BackgroundTaskGcmTaskService}. */
|
| @RunWith(LocalRobolectricTestRunner.class)
|
| @Config(manifest = Config.NONE)
|
| @@ -30,13 +34,19 @@ public class BackgroundTaskGcmTaskServiceTest {
|
| static TestBackgroundTaskWithParams sLastTask;
|
| static boolean sReturnThroughCallback;
|
| static boolean sNeedsRescheduling;
|
| + @Mock
|
| + private BackgroundTaskSchedulerDelegate mDelegate;
|
|
|
| @Before
|
| public void setUp() {
|
| + MockitoAnnotations.initMocks(this);
|
| ContextUtils.initApplicationContextForTests(RuntimeEnvironment.application);
|
| + BackgroundTaskSchedulerFactory.setSchedulerForTesting(
|
| + new BackgroundTaskScheduler(mDelegate));
|
| sReturnThroughCallback = false;
|
| sNeedsRescheduling = false;
|
| sLastTask = null;
|
| + TestBackgroundTask.reset();
|
| }
|
|
|
| private static class TestBackgroundTaskWithParams extends TestBackgroundTask {
|
| @@ -109,6 +119,20 @@ public class BackgroundTaskGcmTaskServiceTest {
|
| assertEquals(taskService.onRunTask(taskParams), GcmNetworkManager.RESULT_SUCCESS);
|
| }
|
|
|
| + @Test
|
| + @Feature({"BackgroundTaskScheduler"})
|
| + public void testOnInitializeTasks() {
|
| + TaskInfo task = TaskInfo.createOneOffTask(TaskIds.TEST, TestBackgroundTask.class,
|
| + TimeUnit.DAYS.toMillis(1))
|
| + .build();
|
| + BackgroundTaskSchedulerPrefs.addScheduledTask(task);
|
| + assertEquals(0, TestBackgroundTask.getRescheduleCalls());
|
| +
|
| + BackgroundTaskGcmTaskService taskService = new BackgroundTaskGcmTaskService();
|
| + taskService.onInitializeTasks();
|
| + assertEquals(1, TestBackgroundTask.getRescheduleCalls());
|
| + }
|
| +
|
| private TaskParams buildTaskParams(Class clazz, Bundle taskExtras) {
|
| Bundle extras = new Bundle();
|
| extras.putBundle(
|
|
|