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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java

Issue 1139643006: Rename chrome/android/javatests to javatests_shell. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 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: chrome/android/javatests/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java
deleted file mode 100644
index d08621a29cfb1f41c233fd3b369ae924c17e1ce3..0000000000000000000000000000000000000000
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java
+++ /dev/null
@@ -1,118 +0,0 @@
-// Copyright 2013 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.sync;
-
-import static org.chromium.base.test.util.ScalableTimeout.scaleTimeout;
-
-import android.accounts.Account;
-import android.app.Activity;
-import android.content.ContentResolver;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.test.suitebuilder.annotation.SmallTest;
-
-import org.chromium.base.ApplicationStatus;
-import org.chromium.base.VisibleForTesting;
-import org.chromium.base.test.util.Feature;
-import org.chromium.chrome.shell.ChromeShellTestBase;
-import org.chromium.content.browser.test.util.Criteria;
-import org.chromium.content.browser.test.util.CriteriaHelper;
-import org.chromium.sync.signin.AccountManagerHelper;
-
-public class DelayedSyncControllerTest extends ChromeShellTestBase {
- private static final Account TEST_ACCOUNT =
- AccountManagerHelper.createAccountFromName("something@gmail.com");
- private static final long WAIT_FOR_LAUNCHER_MS = scaleTimeout(10 * 1000);
- private static final long POLL_INTERVAL_MS = 100;
- private TestDelayedSyncController mController;
-
- private static class TestDelayedSyncController extends DelayedSyncController {
- private boolean mSyncRequested;
-
- private TestDelayedSyncController() {}
-
- @Override
- void requestSyncOnBackgroundThread(Context context, Account account) {
- mSyncRequested = true;
- }
- }
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- mController = new TestDelayedSyncController();
- launchChromeShellWithBlankPage();
- }
-
- @SmallTest
- @Feature({"Sync"})
- public void testManualSyncRequestsShouldAlwaysTriggerSync() throws InterruptedException {
- // Sync should trigger for manual requests when Chrome is in the foreground.
- assertTrue(isActivityResumed());
- Bundle extras = new Bundle();
- extras.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
- assertTrue(mController.shouldPerformSync(getActivity(), extras, TEST_ACCOUNT));
-
- // Sync should trigger for manual requests when Chrome is in the background.
- sendChromeToBackground(getActivity());
- extras.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
- assertTrue(mController.shouldPerformSync(getActivity(), extras, TEST_ACCOUNT));
- }
-
- @SmallTest
- @Feature({"Sync"})
- public void testSyncRequestsShouldTriggerSyncWhenChromeIsInForeground() {
- assertTrue(isActivityResumed());
- Bundle extras = new Bundle();
- assertTrue(mController.shouldPerformSync(getActivity(), extras, TEST_ACCOUNT));
- }
-
- @SmallTest
- @Feature({"Sync"})
- public void testSyncRequestsWhenChromeIsInBackgroundShouldBeDelayed()
- throws InterruptedException {
- sendChromeToBackground(getActivity());
- Bundle extras = new Bundle();
- assertFalse(mController.shouldPerformSync(getActivity(), extras, TEST_ACCOUNT));
- }
-
- @SmallTest
- @Feature({"Sync"})
- public void testDelayedSyncRequestsShouldBeTriggeredOnResume() throws InterruptedException {
- // First make sure there are no delayed syncs.
- mController.clearDelayedSyncs(getActivity());
- assertFalse(mController.resumeDelayedSyncs(getActivity()));
- assertFalse(mController.mSyncRequested);
-
- // Trying to perform sync when Chrome is in the background should create a delayed sync.
- sendChromeToBackground(getActivity());
- Bundle extras = new Bundle();
- assertFalse(mController.shouldPerformSync(getActivity(), extras, TEST_ACCOUNT));
-
- // Make sure the delayed sync can be resumed.
- assertTrue(mController.resumeDelayedSyncs(getActivity()));
- assertTrue(mController.mSyncRequested);
- }
-
- @VisibleForTesting
- static void sendChromeToBackground(Activity activity) throws InterruptedException {
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.addCategory(Intent.CATEGORY_HOME);
- activity.startActivity(intent);
-
- assertTrue("Activity should have been resumed",
- CriteriaHelper.pollForCriteria(new Criteria() {
- @Override
- public boolean isSatisfied() {
- return !isActivityResumed();
- }
- }, WAIT_FOR_LAUNCHER_MS, POLL_INTERVAL_MS));
- }
-
- private static boolean isActivityResumed() {
- return ApplicationStatus.hasVisibleActivities();
- }
-}

Powered by Google App Engine
This is Rietveld 408576698