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

Unified Diff: chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java

Issue 2094013003: Uses TriggerConditions in the BackgroundScheduler. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Some naming and improved documentation on the backup scheduling Created 4 years, 6 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
« no previous file with comments | « chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..4ab2b57c9cedabb8d976d6755b15e50bbda7552c
--- /dev/null
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java
@@ -0,0 +1,62 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.offlinepages;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotSame;
+import static org.junit.Assert.assertTrue;
+
+import android.os.Bundle;
+
+import org.chromium.base.test.util.Feature;
+import org.chromium.chrome.browser.ChromeBackgroundService;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+/** Unit tests for {@link TaskExtrasPacker}. */
+@RunWith(JUnit4.class)
+public class TaskExtrasPackerTest {
+ @Test
+ @Feature({"OfflinePages"})
+ public void testScheduledTimeExtra() {
+ Bundle taskExtras = new Bundle();
+ long beforeMillis = System.currentTimeMillis();
+ TaskExtrasPacker.packTimeInBundle(taskExtras);
+ long afterMillis = System.currentTimeMillis();
+ long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(taskExtras);
+ assertTrue(scheduledTimeMillis >= beforeMillis);
+ assertTrue(scheduledTimeMillis <= afterMillis);
+ assertTrue(taskExtras.getBoolean(ChromeBackgroundService.HOLD_WAKELOCK, false));
+ }
+
+ @Test
+ @Feature({"OfflinePages"})
+ public void testTriggerConditionsExtra() {
+ Bundle taskExtras = new Bundle();
+ TriggerConditions conditions1 = new TriggerConditions(true, 25, false);
+ TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions1);
+ TriggerConditions unpackedConditions1 =
+ TaskExtrasPacker.unpackTriggerConditionsFromBundle(taskExtras);
+ assertEquals(conditions1, unpackedConditions1);
+ assertNotSame(conditions1, unpackedConditions1);
+
+ // Now verify overwriting bundle with different values.
+ TriggerConditions conditions2 = new TriggerConditions(false, 50, true);
+ TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions2);
+ assertEquals(conditions2, TaskExtrasPacker.unpackTriggerConditionsFromBundle(taskExtras));
+ }
+
+ @Test
+ @Feature({"OfflinePages"})
+ public void testTriggerConditionsExtraDefaults() {
+ TriggerConditions unpackedConditionsFromEmptyBundle =
+ TaskExtrasPacker.unpackTriggerConditionsFromBundle(new Bundle());
+ // Verify conservative defaults:
+ assertTrue(unpackedConditionsFromEmptyBundle.requirePowerConnected());
+ assertEquals(100, unpackedConditionsFromEmptyBundle.getMinimumBatteryPercentage());
+ assertTrue(unpackedConditionsFromEmptyBundle.requireUnmeteredNetwork());
+ }
+}
« no previous file with comments | « chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/BackgroundSchedulerTest.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698