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

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

Issue 2087633002: Defines TriggerConditions and plumbs up to BackgroundScheduler (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments 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 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.assertNotNull; 8 import static org.junit.Assert.assertNotNull;
9 import static org.junit.Assert.assertNull; 9 import static org.junit.Assert.assertNull;
10 import static org.junit.Assert.assertTrue; 10 import static org.junit.Assert.assertTrue;
(...skipping 13 matching lines...) Expand all
24 24
25 /** 25 /**
26 * Unit tests for BackgroundScheduler. 26 * Unit tests for BackgroundScheduler.
27 */ 27 */
28 @RunWith(LocalRobolectricTestRunner.class) 28 @RunWith(LocalRobolectricTestRunner.class)
29 @Config(manifest = Config.NONE, 29 @Config(manifest = Config.NONE,
30 application = BaseChromiumApplication.class, 30 application = BaseChromiumApplication.class,
31 shadows = {ShadowGcmNetworkManager.class}) 31 shadows = {ShadowGcmNetworkManager.class})
32 public class BackgroundSchedulerTest { 32 public class BackgroundSchedulerTest {
33 private Context mContext; 33 private Context mContext;
34 private TriggerConditions mConditions1 = new TriggerConditions(
35 true /* power */, 10 /* battery percentage */, false /* unmetered */ );
34 36
35 @Before 37 @Before
36 public void setUp() throws Exception { 38 public void setUp() throws Exception {
37 mContext = Robolectric.application; 39 mContext = Robolectric.application;
38 ShadowGcmNetworkManager.clear(); 40 ShadowGcmNetworkManager.clear();
39 } 41 }
40 42
41 @Test 43 @Test
42 @Feature({"OfflinePages"}) 44 @Feature({"OfflinePages"})
43 public void testSchedule() { 45 public void testSchedule() {
44 BackgroundScheduler scheduler = new BackgroundScheduler(); 46 BackgroundScheduler scheduler = new BackgroundScheduler();
45 assertNull(ShadowGcmNetworkManager.getScheduledTask()); 47 assertNull(ShadowGcmNetworkManager.getScheduledTask());
46 scheduler.schedule(mContext); 48 scheduler.schedule(mContext, mConditions1);
47 // Check with gcmNetworkManagerShadow that schedule got called. 49 // Check with gcmNetworkManagerShadow that schedule got called.
48 assertNotNull(ShadowGcmNetworkManager.getScheduledTask()); 50 assertNotNull(ShadowGcmNetworkManager.getScheduledTask());
49 51
50 // Verify details of the scheduled task. 52 // Verify details of the scheduled task.
51 Task task = ShadowGcmNetworkManager.getScheduledTask(); 53 Task task = ShadowGcmNetworkManager.getScheduledTask();
52 assertEquals(OfflinePageUtils.TASK_TAG, task.getTag()); 54 assertEquals(OfflinePageUtils.TASK_TAG, task.getTag());
53 long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(task.ge tExtras()); 55 long scheduledTimeMillis = TaskExtrasPacker.unpackTimeFromBundle(task.ge tExtras());
54 assertTrue(scheduledTimeMillis > 0L); 56 assertTrue(scheduledTimeMillis > 0L);
55 } 57 }
56 58
57 @Test 59 @Test
58 @Feature({"OfflinePages"}) 60 @Feature({"OfflinePages"})
59 public void testUnschedule() { 61 public void testUnschedule() {
60 BackgroundScheduler scheduler = new BackgroundScheduler(); 62 BackgroundScheduler scheduler = new BackgroundScheduler();
61 assertNull(ShadowGcmNetworkManager.getScheduledTask()); 63 assertNull(ShadowGcmNetworkManager.getScheduledTask());
62 scheduler.schedule(mContext); 64 scheduler.schedule(mContext, mConditions1);
63 assertNotNull(ShadowGcmNetworkManager.getScheduledTask()); 65 assertNotNull(ShadowGcmNetworkManager.getScheduledTask());
64 66
65 assertNull(ShadowGcmNetworkManager.getCanceledTask()); 67 assertNull(ShadowGcmNetworkManager.getCanceledTask());
66 scheduler.unschedule(mContext); 68 scheduler.unschedule(mContext);
67 assertNotNull(ShadowGcmNetworkManager.getCanceledTask()); 69 assertNotNull(ShadowGcmNetworkManager.getCanceledTask());
68 } 70 }
69 } 71 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698