[Sync] Fix autofill tests to be autofill profile entities.
BUG=480604
Review URL: https://codereview.chromium.org/1195063002
Cr-Commit-Position: refs/heads/master@{#335563}
diff --git a/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/AutofillTest.java b/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/AutofillTest.java
index 7435ca8..e3d5a66 100644
--- a/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/AutofillTest.java
+++ b/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/AutofillTest.java
@@ -13,7 +13,6 @@
import org.chromium.content.browser.test.util.CriteriaHelper;
import org.chromium.sync.internal_api.pub.base.ModelType;
import org.chromium.sync.protocol.AutofillProfileSpecifics;
-import org.chromium.sync.protocol.AutofillSpecifics;
import org.chromium.sync.protocol.EntitySpecifics;
import org.json.JSONException;
import org.json.JSONObject;
@@ -22,19 +21,22 @@
import java.util.List;
/**
- * Test suite for the autofill sync data type.
+ * Test suite for the autofill profile sync data type.
*/
public class AutofillTest extends SyncTestBase {
private static final String TAG = "AutofillTest";
- private static final String AUTOFILL_TYPE = "Autofill";
+ private static final String AUTOFILL_TYPE = "Autofill Profiles";
+
+ private static final String GUID = "EDC609ED-7EEE-4F27-B00C-423242A9C44B";
+ private static final String ORIGIN = "https://www.chromium.org/";
private static final String STREET = "1600 Amphitheatre Pkwy";
private static final String CITY = "Mountain View";
private static final String STATE = "CA";
private static final String ZIP = "94043";
- // A container to store autofill information for data verification.
+ // A container to store autofill profile information for data verification.
private static class Autofill {
public final String id;
public final String street;
@@ -56,16 +58,16 @@
super.setUp();
setupTestAccountAndSignInToSync(CLIENT_ID);
// Make sure the initial state is clean.
- assertClientAutofillCount(0);
- assertServerAutofillCountWithName(0, STREET);
+ assertClientAutofillProfileCount(0);
+ assertServerAutofillProfileCountWithName(0, STREET);
}
- // Test syncing a autofill from server to client.
+ // Test syncing an autofill profile from server to client.
@LargeTest
@Feature({"Sync"})
public void testDownloadAutofill() throws Exception {
- addServerAutofillData(STREET, CITY, STATE, ZIP);
- assertServerAutofillCountWithName(1, STREET);
+ addServerAutofillProfile(STREET, CITY, STATE, ZIP);
+ assertServerAutofillProfileCountWithName(1, STREET);
SyncTestUtil.triggerSyncAndWaitForCompletion(mContext);
// Verify data synced to client.
@@ -79,45 +81,46 @@
assertEquals("The wrong zip was found for the autofill.", ZIP, autofill.zip);
}
- // Test syncing a autofill deletion from server to client.
+ // Test syncing an autofill profile deletion from server to client.
@LargeTest
@Feature({"Sync"})
public void testDownloadDeletedAutofill() throws Exception {
// Add the entity to test deleting.
- addServerAutofillData(STREET, CITY, STATE, ZIP);
+ addServerAutofillProfile(STREET, CITY, STATE, ZIP);
SyncTestUtil.triggerSyncAndWaitForCompletion(mContext);
- assertServerAutofillCountWithName(1, STREET);
- assertClientAutofillCount(1);
+ assertServerAutofillProfileCountWithName(1, STREET);
+ assertClientAutofillProfileCount(1);
// Delete on server, sync, and verify deleted locally.
Autofill autofill = getClientAutofillProfiles().get(0);
mFakeServerHelper.deleteEntity(autofill.id);
- waitForServerAutofillCountWithName(0, STREET);
+ waitForServerAutofillProfileCountWithName(0, STREET);
SyncTestUtil.triggerSyncAndWaitForCompletion(mContext);
- waitForClientAutofillCount(0);
+ waitForClientAutofillProfileCount(0);
}
- // Test that autofill entries don't get synced if the data type is disabled.
+ // Test that autofill profiles don't get synced if the data type is disabled.
@LargeTest
@Feature({"Sync"})
public void testDisabledNoDownloadAutofill() throws Exception {
+ // The AUTOFILL type here controls both AUTOFILL and AUTOFILL_PROFILE.
disableDataType(ModelType.AUTOFILL);
- addServerAutofillData(STREET, CITY, STATE, ZIP);
- assertServerAutofillCountWithName(1, STREET);
+ addServerAutofillProfile(STREET, CITY, STATE, ZIP);
+ assertServerAutofillProfileCountWithName(1, STREET);
SyncTestUtil.triggerSyncAndWaitForCompletion(mContext);
- assertClientAutofillCount(0);
+ assertClientAutofillProfileCount(0);
}
- // TODO(maxbogue): Switch to using specifics.autofill_profile instead.
- private void addServerAutofillData(String street, String city, String state, String zip) {
+ private void addServerAutofillProfile(String street, String city, String state, String zip) {
EntitySpecifics specifics = new EntitySpecifics();
- specifics.autofill = new AutofillSpecifics();
AutofillProfileSpecifics profile = new AutofillProfileSpecifics();
+ profile.guid = GUID;
+ profile.origin = ORIGIN;
profile.addressHomeLine1 = street;
profile.addressHomeCity = city;
profile.addressHomeState = state;
profile.addressHomeZip = zip;
- specifics.autofill.profile = profile;
+ specifics.autofillProfile = profile;
mFakeServerHelper.injectUniqueClientEntity(street /* name */, specifics);
}
@@ -127,7 +130,7 @@
List<Autofill> autofills = new ArrayList<Autofill>(entities.size());
for (Pair<String, JSONObject> entity : entities) {
String id = entity.first;
- JSONObject profile = entity.second.getJSONObject("profile");
+ JSONObject profile = entity.second;
String street = profile.getString("address_home_line1");
String city = profile.getString("address_home_city");
String state = profile.getString("address_home_state");
@@ -137,18 +140,18 @@
return autofills;
}
- private void assertClientAutofillCount(int count) throws JSONException {
- assertEquals("There should be " + count + " local autofill entities.",
+ private void assertClientAutofillProfileCount(int count) throws JSONException {
+ assertEquals("There should be " + count + " local autofill profiles.",
count, SyncTestUtil.getLocalData(mContext, AUTOFILL_TYPE).size());
}
- private void assertServerAutofillCountWithName(int count, String name) {
- assertTrue("Expected " + count + " server autofills with name " + name + ".",
+ private void assertServerAutofillProfileCountWithName(int count, String name) {
+ assertTrue("Expected " + count + " server autofill profiles with name " + name + ".",
mFakeServerHelper.verifyEntityCountByTypeAndName(
- count, ModelType.AUTOFILL, name));
+ count, ModelType.AUTOFILL_PROFILE, name));
}
- private void waitForClientAutofillCount(final int count) throws InterruptedException {
+ private void waitForClientAutofillProfileCount(final int count) throws InterruptedException {
boolean success = CriteriaHelper.pollForCriteria(new Criteria() {
@Override
public boolean isSatisfied() {
@@ -159,10 +162,10 @@
}
}
}, SyncTestUtil.UI_TIMEOUT_MS, SyncTestUtil.CHECK_INTERVAL_MS);
- assertTrue("Expected " + count + " local autofill entities.", success);
+ assertTrue("Expected " + count + " local autofill profiles.", success);
}
- private void waitForServerAutofillCountWithName(final int count, final String name)
+ private void waitForServerAutofillProfileCountWithName(final int count, final String name)
throws InterruptedException {
boolean success = CriteriaHelper.pollForCriteria(new Criteria() {
@Override
@@ -175,6 +178,7 @@
}
}
}, SyncTestUtil.UI_TIMEOUT_MS, SyncTestUtil.CHECK_INTERVAL_MS);
- assertTrue("Expected " + count + " server autofills with name " + name + ".", success);
+ assertTrue("Expected " + count + " server autofill profiles with name " + name + ".",
+ success);
}
}