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

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

Issue 2830843002: [Offline pages] Updates to background scheduling to use BTS (Closed)
Patch Set: Fixing the crash on NCN not being initialized Created 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.offlinepages; 5 package org.chromium.chrome.browser.offlinepages;
6 6
7 import static org.junit.Assert.assertEquals; 7 import static org.junit.Assert.assertEquals;
8 import static org.junit.Assert.assertFalse;
9 import static org.junit.Assert.assertNotSame; 8 import static org.junit.Assert.assertNotSame;
10 import static org.junit.Assert.assertTrue; 9 import static org.junit.Assert.assertTrue;
11 10
12 import android.os.Bundle; 11 import android.os.Bundle;
13 12
14 import org.junit.Test; 13 import org.junit.Test;
15 import org.junit.runner.RunWith; 14 import org.junit.runner.RunWith;
16 import org.robolectric.annotation.Config; 15 import org.robolectric.annotation.Config;
17 16
18 import org.chromium.base.test.util.Feature; 17 import org.chromium.base.test.util.Feature;
19 import org.chromium.chrome.browser.ChromeBackgroundService;
20 import org.chromium.testing.local.LocalRobolectricTestRunner; 18 import org.chromium.testing.local.LocalRobolectricTestRunner;
21 19
22 /** Unit tests for {@link TaskExtrasPacker}. */ 20 /** Unit tests for {@link TaskExtrasPacker}. */
23 @RunWith(LocalRobolectricTestRunner.class) 21 @RunWith(LocalRobolectricTestRunner.class)
24 @Config(manifest = Config.NONE) 22 @Config(manifest = Config.NONE)
25 public class TaskExtrasPackerTest { 23 public class TaskExtrasPackerTest {
26 @Test 24 @Test
27 @Feature({"OfflinePages"}) 25 @Feature({"OfflinePages"})
28 public void testScheduledTimeExtra() { 26 public void testScheduledTimeExtra() {
29 Bundle taskExtras = new Bundle(); 27 Bundle taskExtras = new Bundle();
30 long beforeMillis = System.currentTimeMillis(); 28 long beforeMillis = System.currentTimeMillis();
31 TaskExtrasPacker.packTimeInBundle(taskExtras); 29 TaskExtrasPacker.packTimeInBundle(taskExtras);
32 long afterMillis = System.currentTimeMillis(); 30 long afterMillis = System.currentTimeMillis();
33 long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(taskExt ras); 31 long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(taskExt ras);
34 assertTrue(scheduledTimeMillis >= beforeMillis); 32 assertTrue(scheduledTimeMillis >= beforeMillis);
35 assertTrue(scheduledTimeMillis <= afterMillis); 33 assertTrue(scheduledTimeMillis <= afterMillis);
36 } 34 }
37 35
38 @Test 36 @Test
39 @Feature({"OfflinePages"}) 37 @Feature({"OfflinePages"})
40 public void testHoldWakelock() {
41 Bundle taskExtras = new Bundle();
42 assertFalse(taskExtras.getBoolean(ChromeBackgroundService.HOLD_WAKELOCK, false));
43 TaskExtrasPacker.packHoldWakelock(taskExtras);
44 assertTrue(taskExtras.getBoolean(ChromeBackgroundService.HOLD_WAKELOCK, false));
45 }
46
47 @Test
48 @Feature({"OfflinePages"})
49 public void testTriggerConditionsExtra() { 38 public void testTriggerConditionsExtra() {
50 Bundle taskExtras = new Bundle(); 39 Bundle taskExtras = new Bundle();
51 TriggerConditions conditions1 = new TriggerConditions(true, 25, false); 40 TriggerConditions conditions1 = new TriggerConditions(true, 25, false);
52 TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions1); 41 TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions1);
53 TriggerConditions unpackedConditions1 = 42 TriggerConditions unpackedConditions1 =
54 TaskExtrasPacker.unpackTriggerConditionsFromBundle(taskExtras); 43 TaskExtrasPacker.unpackTriggerConditionsFromBundle(taskExtras);
55 assertEquals(conditions1, unpackedConditions1); 44 assertEquals(conditions1, unpackedConditions1);
56 assertNotSame(conditions1, unpackedConditions1); 45 assertNotSame(conditions1, unpackedConditions1);
57 46
58 // Now verify overwriting bundle with different values. 47 // Now verify overwriting bundle with different values.
59 TriggerConditions conditions2 = new TriggerConditions(false, 50, true); 48 TriggerConditions conditions2 = new TriggerConditions(false, 50, true);
60 TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions2); 49 TaskExtrasPacker.packTriggerConditionsInBundle(taskExtras, conditions2);
61 assertEquals(conditions2, TaskExtrasPacker.unpackTriggerConditionsFromBu ndle(taskExtras)); 50 assertEquals(conditions2, TaskExtrasPacker.unpackTriggerConditionsFromBu ndle(taskExtras));
62 } 51 }
63 52
64 @Test 53 @Test
65 @Feature({"OfflinePages"}) 54 @Feature({"OfflinePages"})
66 public void testTriggerConditionsExtraDefaults() { 55 public void testTriggerConditionsExtraDefaults() {
67 TriggerConditions unpackedConditionsFromEmptyBundle = 56 TriggerConditions unpackedConditionsFromEmptyBundle =
68 TaskExtrasPacker.unpackTriggerConditionsFromBundle(new Bundle()) ; 57 TaskExtrasPacker.unpackTriggerConditionsFromBundle(new Bundle()) ;
69 58
70 // Verify conservative defaults: 59 // Verify conservative defaults:
71 assertTrue(unpackedConditionsFromEmptyBundle.requirePowerConnected()); 60 assertTrue(unpackedConditionsFromEmptyBundle.requirePowerConnected());
72 assertEquals(100, unpackedConditionsFromEmptyBundle.getMinimumBatteryPer centage()); 61 assertEquals(100, unpackedConditionsFromEmptyBundle.getMinimumBatteryPer centage());
73 assertTrue(unpackedConditionsFromEmptyBundle.requireUnmeteredNetwork()); 62 assertTrue(unpackedConditionsFromEmptyBundle.requireUnmeteredNetwork());
74 } 63 }
75 } 64 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698