diff options
author | shashishekhar@chromium.org <shashishekhar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-04 22:45:26 +0000 |
---|---|---|
committer | shashishekhar@chromium.org <shashishekhar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-04 22:45:26 +0000 |
commit | 79827135c3144b3b860578e7f07167dbeb1a649b (patch) | |
tree | 13e1c86a23b978afb326a313589e4806d0704b1e /sync/tools/testserver | |
parent | ca29b0f4d939b6ef56145e22b09946e816811774 (diff) | |
download | chromium_src-79827135c3144b3b860578e7f07167dbeb1a649b.zip chromium_src-79827135c3144b3b860578e7f07167dbeb1a649b.tar.gz chromium_src-79827135c3144b3b860578e7f07167dbeb1a649b.tar.bz2 |
Fix sync testserver for Android.
Sync testserver should create synced_bookmarks permanent item when
requested by client. Android mobile bookmarks test fail because
testserver does not create synced_bookmarks item. Modify testserver to
create the permanent item when requested by client.
BUG=153416
Review URL: https://chromiumcodereview.appspot.com/12377027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186004 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/tools/testserver')
-rw-r--r-- | sync/tools/testserver/chromiumsync.py | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/sync/tools/testserver/chromiumsync.py b/sync/tools/testserver/chromiumsync.py index f6636ae..b6e536c 100644 --- a/sync/tools/testserver/chromiumsync.py +++ b/sync/tools/testserver/chromiumsync.py @@ -410,6 +410,13 @@ class UpdateSieve(object): return [datatype for datatype, timestamp in self._state.iteritems() if timestamp == 0] + def GetCreateMobileBookmarks(self): + """Return true if the client has requested to create the 'Mobile Bookmarks' + folder. + """ + return (self._original_request.HasField('create_mobile_bookmarks_folder') + and self._original_request.create_mobile_bookmarks_folder) + def SaveProgress(self, new_timestamp, get_updates_response): """Write the new_timestamp or new_progress_marker fields to a response.""" if self._original_request.from_progress_marker: @@ -449,7 +456,7 @@ class SyncDataModel(object): parent_tag='google_chrome_bookmarks', sync_type=BOOKMARK), PermanentItem('synced_bookmarks', name='Synced Bookmarks', parent_tag='google_chrome_bookmarks', sync_type=BOOKMARK, - create_by_default=False), # Must be True in the iOS tree. + create_by_default=False), PermanentItem('google_chrome_autofill', name='Autofill', parent_tag=ROOT_ID, sync_type=AUTOFILL), PermanentItem('google_chrome_autofill_profiles', name='Autofill Profiles', @@ -683,7 +690,14 @@ class SyncDataModel(object): if not sieve.HasAnyTimestamp(): return (0, [], 0) min_timestamp = sieve.GetMinTimestamp() - self._CreateDefaultPermanentItems(sieve.GetFirstTimeTypes()) + first_time_types = sieve.GetFirstTimeTypes() + self._CreateDefaultPermanentItems(first_time_types) + # Mobile bookmark folder is not created by default, create it only when + # client requested it. + if (sieve.GetCreateMobileBookmarks() and + first_time_types.count(BOOKMARK) > 0): + self.TriggerCreateSyncedBookmarks() + change_log = sorted(self._entries.values(), key=operator.attrgetter('version')) new_changes = [x for x in change_log if x.version > min_timestamp] |