| OLD | NEW |
| 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2015 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 #include "base/json/json_writer.h" | 5 #include "base/json/json_writer.h" |
| 6 #include "base/macros.h" | 6 #include "base/macros.h" |
| 7 #include "chrome/browser/prefs/pref_service_syncable_util.h" | 7 #include "chrome/browser/prefs/pref_service_syncable_util.h" |
| 8 #include "chrome/browser/sync/test/integration/password_manager_setting_migrator
_helper.h" | 8 #include "chrome/browser/sync/test/integration/password_manager_setting_migrator
_helper.h" |
| 9 #include "chrome/browser/sync/test/integration/preferences_helper.h" | 9 #include "chrome/browser/sync/test/integration/preferences_helper.h" |
| 10 #include "chrome/browser/sync/test/integration/profile_sync_service_harness.h" | 10 #include "chrome/browser/sync/test/integration/profile_sync_service_harness.h" |
| 11 #include "chrome/browser/sync/test/integration/sync_integration_test_util.h" | |
| 12 #include "chrome/browser/sync/test/integration/sync_test.h" | 11 #include "chrome/browser/sync/test/integration/sync_test.h" |
| 12 #include "chrome/browser/sync/test/integration/updated_progress_marker_checker.h
" |
| 13 #include "chrome/common/pref_names.h" | 13 #include "chrome/common/pref_names.h" |
| 14 #include "components/password_manager/core/common/password_manager_pref_names.h" | 14 #include "components/password_manager/core/common/password_manager_pref_names.h" |
| 15 #include "components/password_manager/sync/browser/password_manager_setting_migr
ator_service.h" | 15 #include "components/password_manager/sync/browser/password_manager_setting_migr
ator_service.h" |
| 16 #include "components/prefs/pref_service.h" | 16 #include "components/prefs/pref_service.h" |
| 17 #include "components/sync/base/model_type.h" | 17 #include "components/sync/base/model_type.h" |
| 18 #include "components/sync/protocol/preference_specifics.pb.h" | 18 #include "components/sync/protocol/preference_specifics.pb.h" |
| 19 #include "components/sync/protocol/priority_preference_specifics.pb.h" | 19 #include "components/sync/protocol/priority_preference_specifics.pb.h" |
| 20 #include "components/sync/protocol/sync.pb.h" | 20 #include "components/sync/protocol/sync.pb.h" |
| 21 #include "components/sync/test/fake_server/unique_client_entity.h" | 21 #include "components/sync/test/fake_server/unique_client_entity.h" |
| 22 #include "components/syncable_prefs/pref_service_syncable.h" | 22 #include "components/syncable_prefs/pref_service_syncable.h" |
| 23 #include "components/syncable_prefs/pref_service_syncable_observer.h" | 23 #include "components/syncable_prefs/pref_service_syncable_observer.h" |
| 24 #include "content/public/browser/notification_details.h" | 24 #include "content/public/browser/notification_details.h" |
| 25 #include "content/public/browser/notification_service.h" | 25 #include "content/public/browser/notification_service.h" |
| 26 #include "content/public/browser/notification_source.h" | 26 #include "content/public/browser/notification_source.h" |
| 27 #include "content/public/test/test_browser_thread_bundle.h" | 27 #include "content/public/test/test_browser_thread_bundle.h" |
| 28 | 28 |
| 29 using password_manager_setting_migrater_helper::ExpectPrefValuesOnClient; | 29 using password_manager_setting_migrater_helper::ExpectPrefValuesOnClient; |
| 30 using preferences_helper::AwaitBooleanPrefMatches; | |
| 31 using preferences_helper::BooleanPrefMatches; | |
| 32 using preferences_helper::ChangeBooleanPref; | |
| 33 using preferences_helper::GetPrefs; | 30 using preferences_helper::GetPrefs; |
| 34 using password_manager::prefs::kCredentialsEnableService; | 31 using password_manager::prefs::kCredentialsEnableService; |
| 35 using password_manager::prefs::kPasswordManagerSavingEnabled; | 32 using password_manager::prefs::kPasswordManagerSavingEnabled; |
| 36 | 33 |
| 37 namespace { | 34 namespace { |
| 38 | 35 |
| 39 void InjectPreferenceValueToFakeServer(fake_server::FakeServer* fake_server, | 36 void InjectPreferenceValueToFakeServer(fake_server::FakeServer* fake_server, |
| 40 const std::string& name, | 37 const std::string& name, |
| 41 bool value) { | 38 bool value) { |
| 42 std::string serialized; | 39 std::string serialized; |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 112 | 109 |
| 113 IN_PROC_BROWSER_TEST_F( | 110 IN_PROC_BROWSER_TEST_F( |
| 114 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 111 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 115 LocalOnOnSyncOffOff) { | 112 LocalOnOnSyncOffOff) { |
| 116 ASSERT_TRUE(SetupClients()); | 113 ASSERT_TRUE(SetupClients()); |
| 117 SetLocalPrefValues(true /* kCredentialsEnableService */, | 114 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 118 true /* kPasswordManagerSavingEnabled */); | 115 true /* kPasswordManagerSavingEnabled */); |
| 119 InjectNewValues(false /* kCredentialsEnableService */, | 116 InjectNewValues(false /* kCredentialsEnableService */, |
| 120 false /* kPasswordManagerSavingEnabled */); | 117 false /* kPasswordManagerSavingEnabled */); |
| 121 InitMigrationServiceAndSync(); | 118 InitMigrationServiceAndSync(); |
| 122 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 119 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 123 GetSyncService(0))); | |
| 124 AssertPrefValues(false /* kCredentialsEnableService */, | 120 AssertPrefValues(false /* kCredentialsEnableService */, |
| 125 false /* kPasswordManagerSavingEnabled */); | 121 false /* kPasswordManagerSavingEnabled */); |
| 126 } | 122 } |
| 127 | 123 |
| 128 IN_PROC_BROWSER_TEST_F( | 124 IN_PROC_BROWSER_TEST_F( |
| 129 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 125 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 130 LocalOnOnSyncOnOff) { | 126 LocalOnOnSyncOnOff) { |
| 131 ASSERT_TRUE(SetupClients()); | 127 ASSERT_TRUE(SetupClients()); |
| 132 InjectNewValues(true /* kCredentialsEnableService */, | 128 InjectNewValues(true /* kCredentialsEnableService */, |
| 133 false /* kPasswordManagerSavingEnabled */); | 129 false /* kPasswordManagerSavingEnabled */); |
| 134 InitMigrationServiceAndSync(); | 130 InitMigrationServiceAndSync(); |
| 135 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 131 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 136 GetSyncService(0))); | |
| 137 AssertPrefValues(false /* kCredentialsEnableService */, | 132 AssertPrefValues(false /* kCredentialsEnableService */, |
| 138 false /* kPasswordManagerSavingEnabled */); | 133 false /* kPasswordManagerSavingEnabled */); |
| 139 } | 134 } |
| 140 | 135 |
| 141 IN_PROC_BROWSER_TEST_F( | 136 IN_PROC_BROWSER_TEST_F( |
| 142 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 137 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 143 LocalOnOnSyncOffOn) { | 138 LocalOnOnSyncOffOn) { |
| 144 ASSERT_TRUE(SetupClients()); | 139 ASSERT_TRUE(SetupClients()); |
| 145 SetLocalPrefValues(true /* kCredentialsEnableService */, | 140 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 146 true /* kPasswordManagerSavingEnabled */); | 141 true /* kPasswordManagerSavingEnabled */); |
| 147 InjectNewValues(false /* kCredentialsEnableService */, | 142 InjectNewValues(false /* kCredentialsEnableService */, |
| 148 true /* kPasswordManagerSavingEnabled */); | 143 true /* kPasswordManagerSavingEnabled */); |
| 149 InitMigrationServiceAndSync(); | 144 InitMigrationServiceAndSync(); |
| 150 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 145 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 151 GetSyncService(0))); | |
| 152 AssertPrefValues(false /* kCredentialsEnableService */, | 146 AssertPrefValues(false /* kCredentialsEnableService */, |
| 153 false /* kPasswordManagerSavingEnabled */); | 147 false /* kPasswordManagerSavingEnabled */); |
| 154 } | 148 } |
| 155 | 149 |
| 156 IN_PROC_BROWSER_TEST_F( | 150 IN_PROC_BROWSER_TEST_F( |
| 157 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 151 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 158 LocalOnOffSyncOnOn) { | 152 LocalOnOffSyncOnOn) { |
| 159 ASSERT_TRUE(SetupClients()); | 153 ASSERT_TRUE(SetupClients()); |
| 160 SetLocalPrefValues(true /* kCredentialsEnableService */, | 154 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 161 false /* kPasswordManagerSavingEnabled */); | 155 false /* kPasswordManagerSavingEnabled */); |
| 162 InjectNewValues(true /* kCredentialsEnableService */, | 156 InjectNewValues(true /* kCredentialsEnableService */, |
| 163 true /* kPasswordManagerSavingEnabled */); | 157 true /* kPasswordManagerSavingEnabled */); |
| 164 InitMigrationServiceAndSync(); | 158 InitMigrationServiceAndSync(); |
| 165 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 159 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 166 GetSyncService(0))); | |
| 167 AssertPrefValues(true /* kCredentialsEnableService */, | 160 AssertPrefValues(true /* kCredentialsEnableService */, |
| 168 true /* kPasswordManagerSavingEnabled */); | 161 true /* kPasswordManagerSavingEnabled */); |
| 169 } | 162 } |
| 170 | 163 |
| 171 IN_PROC_BROWSER_TEST_F( | 164 IN_PROC_BROWSER_TEST_F( |
| 172 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 165 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 173 LocalOnOffSyncOnOff) { | 166 LocalOnOffSyncOnOff) { |
| 174 ASSERT_TRUE(SetupClients()); | 167 ASSERT_TRUE(SetupClients()); |
| 175 SetLocalPrefValues(true /* kCredentialsEnableService */, | 168 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 176 false /* kPasswordManagerSavingEnabled */); | 169 false /* kPasswordManagerSavingEnabled */); |
| 177 InjectNewValues(true /* kCredentialsEnableService */, | 170 InjectNewValues(true /* kCredentialsEnableService */, |
| 178 false /* kPasswordManagerSavingEnabled */); | 171 false /* kPasswordManagerSavingEnabled */); |
| 179 InitMigrationServiceAndSync(); | 172 InitMigrationServiceAndSync(); |
| 180 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 173 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 181 GetSyncService(0))); | |
| 182 AssertPrefValues(false /* kCredentialsEnableService */, | 174 AssertPrefValues(false /* kCredentialsEnableService */, |
| 183 false /* kPasswordManagerSavingEnabled */); | 175 false /* kPasswordManagerSavingEnabled */); |
| 184 } | 176 } |
| 185 | 177 |
| 186 IN_PROC_BROWSER_TEST_F( | 178 IN_PROC_BROWSER_TEST_F( |
| 187 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 179 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 188 LocalOnOffSyncOffOn) { | 180 LocalOnOffSyncOffOn) { |
| 189 ASSERT_TRUE(SetupClients()); | 181 ASSERT_TRUE(SetupClients()); |
| 190 SetLocalPrefValues(true /* kCredentialsEnableService */, | 182 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 191 false /* kPasswordManagerSavingEnabled */); | 183 false /* kPasswordManagerSavingEnabled */); |
| 192 InjectNewValues(false /* kCredentialsEnableService */, | 184 InjectNewValues(false /* kCredentialsEnableService */, |
| 193 true /* kPasswordManagerSavingEnabled */); | 185 true /* kPasswordManagerSavingEnabled */); |
| 194 InitMigrationServiceAndSync(); | 186 InitMigrationServiceAndSync(); |
| 195 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 187 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 196 GetSyncService(0))); | |
| 197 AssertPrefValues(false /* kCredentialsEnableService */, | 188 AssertPrefValues(false /* kCredentialsEnableService */, |
| 198 false /* kPasswordManagerSavingEnabled */); | 189 false /* kPasswordManagerSavingEnabled */); |
| 199 } | 190 } |
| 200 | 191 |
| 201 IN_PROC_BROWSER_TEST_F( | 192 IN_PROC_BROWSER_TEST_F( |
| 202 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 193 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 203 LocalOffOffSyncOffOn) { | 194 LocalOffOffSyncOffOn) { |
| 204 ASSERT_TRUE(SetupClients()); | 195 ASSERT_TRUE(SetupClients()); |
| 205 SetLocalPrefValues(false /* kCredentialsEnableService */, | 196 SetLocalPrefValues(false /* kCredentialsEnableService */, |
| 206 false /* kPasswordManagerSavingEnabled */); | 197 false /* kPasswordManagerSavingEnabled */); |
| 207 InjectNewValues(false /* kCredentialsEnableService */, | 198 InjectNewValues(false /* kCredentialsEnableService */, |
| 208 true /* kPasswordManagerSavingEnabled */); | 199 true /* kPasswordManagerSavingEnabled */); |
| 209 InitMigrationServiceAndSync(); | 200 InitMigrationServiceAndSync(); |
| 210 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 201 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 211 GetSyncService(0))); | |
| 212 AssertPrefValues(true /* kCredentialsEnableService */, | 202 AssertPrefValues(true /* kCredentialsEnableService */, |
| 213 true /* kPasswordManagerSavingEnabled */); | 203 true /* kPasswordManagerSavingEnabled */); |
| 214 } | 204 } |
| 215 | 205 |
| 216 IN_PROC_BROWSER_TEST_F( | 206 IN_PROC_BROWSER_TEST_F( |
| 217 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 207 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 218 LocalOffOffSyncOnOff) { | 208 LocalOffOffSyncOnOff) { |
| 219 ASSERT_TRUE(SetupClients()); | 209 ASSERT_TRUE(SetupClients()); |
| 220 SetLocalPrefValues(false /* kCredentialsEnableService */, | 210 SetLocalPrefValues(false /* kCredentialsEnableService */, |
| 221 false /* kPasswordManagerSavingEnabled */); | 211 false /* kPasswordManagerSavingEnabled */); |
| 222 InjectNewValues(true /* kCredentialsEnableService */, | 212 InjectNewValues(true /* kCredentialsEnableService */, |
| 223 false /* kPasswordManagerSavingEnabled */); | 213 false /* kPasswordManagerSavingEnabled */); |
| 224 InitMigrationServiceAndSync(); | 214 InitMigrationServiceAndSync(); |
| 225 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 215 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 226 GetSyncService(0))); | |
| 227 AssertPrefValues(true /* kCredentialsEnableService */, | 216 AssertPrefValues(true /* kCredentialsEnableService */, |
| 228 true /* kPasswordManagerSavingEnabled */); | 217 true /* kPasswordManagerSavingEnabled */); |
| 229 } | 218 } |
| 230 | 219 |
| 231 IN_PROC_BROWSER_TEST_F( | 220 IN_PROC_BROWSER_TEST_F( |
| 232 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 221 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 233 LocalOffOnSyncOffOn) { | 222 LocalOffOnSyncOffOn) { |
| 234 ASSERT_TRUE(SetupClients()); | 223 ASSERT_TRUE(SetupClients()); |
| 235 SetLocalPrefValues(false /* kCredentialsEnableService */, | 224 SetLocalPrefValues(false /* kCredentialsEnableService */, |
| 236 true /* kPasswordManagerSavingEnabled */); | 225 true /* kPasswordManagerSavingEnabled */); |
| 237 InjectNewValues(false /* kCredentialsEnableService */, | 226 InjectNewValues(false /* kCredentialsEnableService */, |
| 238 true /* kPasswordManagerSavingEnabled */); | 227 true /* kPasswordManagerSavingEnabled */); |
| 239 InitMigrationServiceAndSync(); | 228 InitMigrationServiceAndSync(); |
| 240 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 229 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 241 GetSyncService(0))); | |
| 242 AssertPrefValues(false /* kCredentialsEnableService */, | 230 AssertPrefValues(false /* kCredentialsEnableService */, |
| 243 false /* kPasswordManagerSavingEnabled */); | 231 false /* kPasswordManagerSavingEnabled */); |
| 244 } | 232 } |
| 245 | 233 |
| 246 IN_PROC_BROWSER_TEST_F( | 234 IN_PROC_BROWSER_TEST_F( |
| 247 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 235 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 248 LocalOffOffSyncOffOff) { | 236 LocalOffOffSyncOffOff) { |
| 249 ASSERT_TRUE(SetupClients()); | 237 ASSERT_TRUE(SetupClients()); |
| 250 SetLocalPrefValues(false /* kCredentialsEnableService */, | 238 SetLocalPrefValues(false /* kCredentialsEnableService */, |
| 251 false /* kPasswordManagerSavingEnabled */); | 239 false /* kPasswordManagerSavingEnabled */); |
| 252 InjectNewValues(false /* kCredentialsEnableService */, | 240 InjectNewValues(false /* kCredentialsEnableService */, |
| 253 false /* kPasswordManagerSavingEnabled */); | 241 false /* kPasswordManagerSavingEnabled */); |
| 254 InitMigrationServiceAndSync(); | 242 InitMigrationServiceAndSync(); |
| 255 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 243 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 256 GetSyncService(0))); | |
| 257 AssertPrefValues(false /* kCredentialsEnableService */, | 244 AssertPrefValues(false /* kCredentialsEnableService */, |
| 258 false /* kPasswordManagerSavingEnabled */); | 245 false /* kPasswordManagerSavingEnabled */); |
| 259 } | 246 } |
| 260 | 247 |
| 261 IN_PROC_BROWSER_TEST_F( | 248 IN_PROC_BROWSER_TEST_F( |
| 262 SingleClientPasswordManagerSettingMigratorServiceSyncTest, | 249 SingleClientPasswordManagerSettingMigratorServiceSyncTest, |
| 263 LocalOnOnSyncOnOn) { | 250 LocalOnOnSyncOnOn) { |
| 264 ASSERT_TRUE(SetupClients()); | 251 ASSERT_TRUE(SetupClients()); |
| 265 SetLocalPrefValues(true /* kCredentialsEnableService */, | 252 SetLocalPrefValues(true /* kCredentialsEnableService */, |
| 266 true /* kPasswordManagerSavingEnabled */); | 253 true /* kPasswordManagerSavingEnabled */); |
| 267 InjectNewValues(true /* kCredentialsEnableService */, | 254 InjectNewValues(true /* kCredentialsEnableService */, |
| 268 true /* kPasswordManagerSavingEnabled */); | 255 true /* kPasswordManagerSavingEnabled */); |
| 269 InitMigrationServiceAndSync(); | 256 InitMigrationServiceAndSync(); |
| 270 ASSERT_TRUE(sync_integration_test_util::AwaitCommitActivityCompletion( | 257 ASSERT_TRUE(UpdatedProgressMarkerChecker(GetSyncService(0)).Wait()); |
| 271 GetSyncService(0))); | |
| 272 AssertPrefValues(true /* kCredentialsEnableService */, | 258 AssertPrefValues(true /* kCredentialsEnableService */, |
| 273 true /* kPasswordManagerSavingEnabled */); | 259 true /* kPasswordManagerSavingEnabled */); |
| 274 } | 260 } |
| OLD | NEW |