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

Unified Diff: chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java

Issue 1144543009: [Android] Only invalidate objects that were received from Tango on resume. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: +toString Created 5 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
Index: chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java
diff --git a/chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterTest.java b/chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java
similarity index 52%
rename from chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterTest.java
rename to chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java
index a79a14e56ecf880c1a319f5441a4a812a683752c..69575f1459755c1a21416130bfd197d42f34e513 100644
--- a/chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterTest.java
+++ b/chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java
@@ -2,7 +2,7 @@
// 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;
+package org.chromium.chrome.browser.invalidation;
import android.accounts.Account;
import android.app.Application;
@@ -12,11 +12,10 @@ import android.content.SyncResult;
import android.os.Bundle;
import android.test.suitebuilder.annotation.MediumTest;
-import com.google.protos.ipc.invalidation.Types;
-
import org.chromium.base.CommandLine;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.shell.ChromeShellTestBase;
+import org.chromium.components.invalidation.PendingInvalidation;
import org.chromium.sync.AndroidSyncSettings;
import org.chromium.sync.signin.AccountManagerHelper;
@@ -24,15 +23,14 @@ import org.chromium.sync.signin.AccountManagerHelper;
* Tests for ChromiumSyncAdapter.
*/
public class ChromiumSyncAdapterTest extends ChromeShellTestBase {
-
private static final Account TEST_ACCOUNT =
AccountManagerHelper.createAccountFromName("test@gmail.com");
private TestChromiumSyncAdapter mSyncAdapter;
private static class TestChromiumSyncAdapter extends ChromiumSyncAdapter {
- private boolean mSyncRequested;
- private boolean mSyncRequestedForAllTypes;
+ private boolean mInvalidated;
+ private boolean mInvalidatedAllTypes;
private int mObjectSource;
private String mObjectId;
private long mVersion;
@@ -48,17 +46,17 @@ public class ChromiumSyncAdapterTest extends ChromeShellTestBase {
}
@Override
- public void requestSync(int objectSource, String objectId, long version, String payload) {
+ public void notifyInvalidation(
+ int objectSource, String objectId, long version, String payload) {
mObjectSource = objectSource;
mObjectId = objectId;
mVersion = version;
mPayload = payload;
- mSyncRequested = true;
- }
-
- @Override
- public void requestSyncForAllTypes() {
- mSyncRequestedForAllTypes = true;
+ if (objectId == null) {
+ mInvalidatedAllTypes = true;
+ } else {
+ mInvalidated = true;
+ }
}
}
@@ -66,68 +64,51 @@ public class ChromiumSyncAdapterTest extends ChromeShellTestBase {
protected void setUp() throws Exception {
super.setUp();
launchChromeShellWithBlankPage();
- mSyncAdapter = new TestChromiumSyncAdapter(getInstrumentation().getTargetContext(),
- getActivity().getApplication());
+ mSyncAdapter = new TestChromiumSyncAdapter(
+ getInstrumentation().getTargetContext(), getActivity().getApplication());
}
- public void performSyncWithBundle(Bundle bundle) {
+ private void performSyncWithBundle(Bundle bundle) {
mSyncAdapter.onPerformSync(TEST_ACCOUNT, bundle,
- AndroidSyncSettings.getContractAuthority(getActivity()),
- null, new SyncResult());
+ AndroidSyncSettings.getContractAuthority(getActivity()), null, new SyncResult());
}
@MediumTest
@Feature({"Sync"})
public void testRequestSyncNoInvalidationData() {
performSyncWithBundle(new Bundle());
- assertTrue(mSyncAdapter.mSyncRequestedForAllTypes);
- assertFalse(mSyncAdapter.mSyncRequested);
- assertTrue(CommandLine.isInitialized());
- }
-
- private void testRequestSyncSpecificDataType(boolean withObjectSource) {
- Bundle extras = new Bundle();
- if (withObjectSource) {
- extras.putInt(ChromiumSyncAdapter.INVALIDATION_OBJECT_SOURCE_KEY, 61);
- }
- extras.putString(ChromiumSyncAdapter.INVALIDATION_OBJECT_ID_KEY, "objectid_value");
- extras.putLong(ChromiumSyncAdapter.INVALIDATION_VERSION_KEY, 42);
- extras.putString(ChromiumSyncAdapter.INVALIDATION_PAYLOAD_KEY, "payload_value");
-
- performSyncWithBundle(extras);
-
- assertFalse(mSyncAdapter.mSyncRequestedForAllTypes);
- assertTrue(mSyncAdapter.mSyncRequested);
- if (withObjectSource) {
- assertEquals(61, mSyncAdapter.mObjectSource);
- } else {
- assertEquals(Types.ObjectSource.CHROME_SYNC, mSyncAdapter.mObjectSource);
- }
- assertEquals("objectid_value", mSyncAdapter.mObjectId);
- assertEquals(42, mSyncAdapter.mVersion);
- assertEquals("payload_value", mSyncAdapter.mPayload);
+ assertTrue(mSyncAdapter.mInvalidatedAllTypes);
+ assertFalse(mSyncAdapter.mInvalidated);
assertTrue(CommandLine.isInitialized());
}
@MediumTest
@Feature({"Sync"})
public void testRequestSyncSpecificDataType() {
- testRequestSyncSpecificDataType(true /* withObjectSource */);
- }
-
- @MediumTest
- @Feature({"Sync"})
- public void testRequestSyncSpecificDataType_withoutObjectSource() {
- testRequestSyncSpecificDataType(false /* withObjectSource */);
+ String objectId = "objectid_value";
+ int objectSource = 61;
+ long version = 42L;
+ String payload = "payload_value";
+
+ performSyncWithBundle(
+ PendingInvalidation.createBundle(objectId, objectSource, version, payload));
+
+ assertFalse(mSyncAdapter.mInvalidatedAllTypes);
+ assertTrue(mSyncAdapter.mInvalidated);
+ assertEquals(objectSource, mSyncAdapter.mObjectSource);
+ assertEquals(objectId, mSyncAdapter.mObjectId);
+ assertEquals(version, mSyncAdapter.mVersion);
+ assertEquals(payload, mSyncAdapter.mPayload);
+ assertTrue(CommandLine.isInitialized());
}
@MediumTest
@Feature({"Sync"})
public void testRequestSyncWhenChromeInBackground() throws InterruptedException {
- DelayedSyncControllerTest.sendChromeToBackground(getActivity());
+ DelayedInvalidationsControllerTest.sendChromeToBackground(getActivity());
performSyncWithBundle(new Bundle());
- assertFalse(mSyncAdapter.mSyncRequestedForAllTypes);
- assertFalse(mSyncAdapter.mSyncRequested);
+ assertFalse(mSyncAdapter.mInvalidatedAllTypes);
+ assertFalse(mSyncAdapter.mInvalidated);
assertTrue(CommandLine.isInitialized());
}
@@ -137,7 +118,7 @@ public class ChromiumSyncAdapterTest extends ChromeShellTestBase {
Bundle extras = new Bundle();
extras.putBoolean(ContentResolver.SYNC_EXTRAS_INITIALIZE, true);
performSyncWithBundle(extras);
- assertFalse(mSyncAdapter.mSyncRequestedForAllTypes);
- assertFalse(mSyncAdapter.mSyncRequested);
+ assertFalse(mSyncAdapter.mInvalidatedAllTypes);
+ assertFalse(mSyncAdapter.mInvalidated);
}
}

Powered by Google App Engine
This is Rietveld 408576698