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 |
index 455ea5469ef0e201c96b81fd3565b8cd8a4cf4ba..75fd8963ea122596d4f15efacf355316ebafa3d2 100644 |
--- a/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java |
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/TaskExtrasPackerTest.java |
@@ -5,16 +5,19 @@ |
package org.chromium.chrome.browser.offlinepages; |
import static org.junit.Assert.assertEquals; |
+import static org.junit.Assert.assertFalse; |
import static org.junit.Assert.assertNotSame; |
import static org.junit.Assert.assertTrue; |
import android.os.Bundle; |
+import android.os.PersistableBundle; |
+ |
+import org.junit.Test; |
+import org.junit.runner.RunWith; |
import org.chromium.base.test.util.Feature; |
import org.chromium.chrome.browser.ChromeBackgroundService; |
import org.chromium.testing.local.LocalRobolectricTestRunner; |
-import org.junit.Test; |
-import org.junit.runner.RunWith; |
/** Unit tests for {@link TaskExtrasPacker}. */ |
@RunWith(LocalRobolectricTestRunner.class) |
@@ -29,6 +32,14 @@ public class TaskExtrasPackerTest { |
long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(taskExtras); |
assertTrue(scheduledTimeMillis >= beforeMillis); |
assertTrue(scheduledTimeMillis <= afterMillis); |
+ } |
+ |
+ @Test |
+ @Feature({"OfflinePages"}) |
+ public void testHoldWakelock() { |
+ Bundle taskExtras = new Bundle(); |
+ assertFalse(taskExtras.getBoolean(ChromeBackgroundService.HOLD_WAKELOCK, false)); |
+ TaskExtrasPacker.packHoldWakelock(taskExtras); |
assertTrue(taskExtras.getBoolean(ChromeBackgroundService.HOLD_WAKELOCK, false)); |
} |
@@ -54,6 +65,48 @@ public class TaskExtrasPackerTest { |
public void testTriggerConditionsExtraDefaults() { |
TriggerConditions unpackedConditionsFromEmptyBundle = |
TaskExtrasPacker.unpackTriggerConditionsFromBundle(new Bundle()); |
+ |
+ // Verify conservative defaults: |
+ assertTrue(unpackedConditionsFromEmptyBundle.requirePowerConnected()); |
+ assertEquals(100, unpackedConditionsFromEmptyBundle.getMinimumBatteryPercentage()); |
+ assertTrue(unpackedConditionsFromEmptyBundle.requireUnmeteredNetwork()); |
+ } |
+ |
+ @Test |
+ @Feature({"OfflinePages"}) |
+ public void testScheduledTimeExtra_API22() { |
+ PersistableBundle taskExtras = new PersistableBundle(); |
+ long beforeMillis = System.currentTimeMillis(); |
+ TaskExtrasPacker.packTimeInBundle(taskExtras); |
+ long afterMillis = System.currentTimeMillis(); |
+ long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(taskExtras); |
+ assertTrue(scheduledTimeMillis >= beforeMillis); |
+ assertTrue(scheduledTimeMillis <= afterMillis); |
+ } |
+ |
+ @Test |
+ @Feature({"OfflinePages"}) |
+ public void testTriggerConditionsExtra_API22() { |
+ PersistableBundle taskExtras = new PersistableBundle(); |
+ 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_API22() { |
+ TriggerConditions unpackedConditionsFromEmptyBundle = |
+ TaskExtrasPacker.unpackTriggerConditionsFromBundle(new PersistableBundle()); |
+ |
// Verify conservative defaults: |
assertTrue(unpackedConditionsFromEmptyBundle.requirePowerConnected()); |
assertEquals(100, unpackedConditionsFromEmptyBundle.getMinimumBatteryPercentage()); |