Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Unified Diff: components/background_task_scheduler/android/junit/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskServiceTest.java

Issue 2814653003: [Android] BackgroundTaskScheduler reschedule implementation (Closed)
Patch Set: Rebasing Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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(

Powered by Google App Engine
This is Rietveld 408576698