Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/supervised_user/legacy/supervised_user_shared_settings_ service.h" | 5 #include "chrome/browser/supervised_user/legacy/supervised_user_shared_settings_ service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 80 | 80 |
| 81 class SupervisedUserSharedSettingsServiceTest : public ::testing::Test { | 81 class SupervisedUserSharedSettingsServiceTest : public ::testing::Test { |
| 82 protected: | 82 protected: |
| 83 typedef base::CallbackList<void(const std::string&, const std::string&)> | 83 typedef base::CallbackList<void(const std::string&, const std::string&)> |
| 84 CallbackList; | 84 CallbackList; |
| 85 | 85 |
| 86 SupervisedUserSharedSettingsServiceTest() | 86 SupervisedUserSharedSettingsServiceTest() |
| 87 : settings_service_(profile_.GetPrefs()) {} | 87 : settings_service_(profile_.GetPrefs()) {} |
| 88 ~SupervisedUserSharedSettingsServiceTest() override {} | 88 ~SupervisedUserSharedSettingsServiceTest() override {} |
| 89 | 89 |
| 90 void StartSyncing(const syncer::SyncDataList& initial_sync_data) { | 90 SyncMergeResult StartSyncing(const syncer::SyncDataList& initial_sync_data) { |
| 91 sync_processor_.reset(new syncer::FakeSyncChangeProcessor); | 91 sync_processor_.reset(new syncer::FakeSyncChangeProcessor); |
| 92 scoped_ptr<syncer::SyncErrorFactory> error_handler( | 92 scoped_ptr<syncer::SyncErrorFactory> error_handler( |
| 93 new MockSyncErrorFactory(SUPERVISED_USER_SHARED_SETTINGS)); | 93 new MockSyncErrorFactory(SUPERVISED_USER_SHARED_SETTINGS)); |
| 94 SyncMergeResult result = settings_service_.MergeDataAndStartSyncing( | 94 SyncMergeResult result = settings_service_.MergeDataAndStartSyncing( |
| 95 SUPERVISED_USER_SHARED_SETTINGS, initial_sync_data, | 95 SUPERVISED_USER_SHARED_SETTINGS, initial_sync_data, |
| 96 scoped_ptr<SyncChangeProcessor>( | 96 scoped_ptr<SyncChangeProcessor>( |
| 97 new SyncChangeProcessorWrapperForTest(sync_processor_.get())), | 97 new SyncChangeProcessorWrapperForTest(sync_processor_.get())), |
| 98 std::move(error_handler)); | 98 std::move(error_handler)); |
| 99 EXPECT_FALSE(result.error().IsSet()); | 99 EXPECT_FALSE(result.error().IsSet()); |
| 100 return result; | |
| 100 } | 101 } |
| 101 | 102 |
| 102 const base::DictionaryValue* GetAllSettings() { | 103 const base::DictionaryValue* GetAllSettings() { |
| 103 return profile_.GetPrefs()->GetDictionary( | 104 return profile_.GetPrefs()->GetDictionary( |
| 104 prefs::kSupervisedUserSharedSettings); | 105 prefs::kSupervisedUserSharedSettings); |
| 105 } | 106 } |
| 106 | 107 |
| 107 void VerifySyncChangesAndClear() { | 108 void VerifySyncChangesAndClear() { |
| 108 SyncChangeList& changes = sync_processor_->changes(); | 109 SyncChangeList& changes = sync_processor_->changes(); |
| 109 for (const SyncChange& sync_change : changes) { | 110 for (const SyncChange& sync_change : changes) { |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 225 EXPECT_EQ(ToJson(&name), | 226 EXPECT_EQ(ToJson(&name), |
| 226 ToJson(settings_service_.GetValue(kIdA, "name"))); | 227 ToJson(settings_service_.GetValue(kIdA, "name"))); |
| 227 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); | 228 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); |
| 228 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); | 229 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); |
| 229 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); | 230 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); |
| 230 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); | 231 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); |
| 231 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); | 232 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); |
| 232 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); | 233 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); |
| 233 } | 234 } |
| 234 | 235 |
| 236 TEST_F(SupervisedUserSharedSettingsServiceTest, MergeResult) { | |
|
Bernhard Bauer
2016/01/05 14:10:54
Can you just merge this into the Merge test (heh)?
Deepak
2016/01/06 05:26:30
Done.
| |
| 237 // Set initial values, then stop syncing so we can restart. | |
| 238 SyncMergeResult result = StartSyncing(SyncDataList()); | |
| 239 EXPECT_EQ(0u, sync_processor_->changes().size()); | |
| 240 EXPECT_EQ(0u, changed_settings_.size()); | |
| 241 EXPECT_EQ(0, result.num_items_added()); | |
| 242 EXPECT_EQ(0, result.num_items_modified()); | |
|
Bernhard Bauer
2016/01/05 14:10:54
Also verify the number of deleted items, just for
Deepak
2016/01/06 05:26:30
Done.
| |
| 243 | |
| 244 const char kIdA[] = "aaaaaa"; | |
| 245 const char kIdB[] = "bbbbbb"; | |
| 246 const char kIdC[] = "cccccc"; | |
| 247 | |
| 248 FundamentalValue age(8); | |
| 249 StringValue bar("bar"); | |
| 250 settings_service_.SetValue(kIdA, "name", StringValue("Jack")); | |
| 251 settings_service_.SetValue(kIdA, "age", age); | |
| 252 settings_service_.SetValue(kIdB, "foo", bar); | |
| 253 | |
| 254 settings_service_.StopSyncing(SUPERVISED_USER_SHARED_SETTINGS); | |
| 255 | |
| 256 StringValue name("Jill"); | |
| 257 StringValue blurp("blurp"); | |
| 258 SyncDataList sync_data; | |
| 259 sync_data.push_back( | |
| 260 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( | |
| 261 kIdA, "name", name, true)); | |
| 262 sync_data.push_back( | |
| 263 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( | |
| 264 kIdC, "baz", blurp, true)); | |
| 265 sync_data.push_back( | |
|
Bernhard Bauer
2016/01/05 14:10:54
I don't think we need to test this, as this should
Deepak
2016/01/06 05:26:30
Done.
| |
| 266 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( | |
| 267 kIdC, "baz1", blurp, true)); | |
| 268 | |
| 269 result = StartSyncing(sync_data); | |
| 270 EXPECT_EQ(2u, sync_processor_->changes().size()); | |
| 271 VerifySyncChangesAndClear(); | |
| 272 EXPECT_EQ(3u, changed_settings_.size()); | |
| 273 EXPECT_EQ(2, result.num_items_added()); | |
| 274 EXPECT_EQ(1, result.num_items_modified()); | |
| 275 } | |
| 276 | |
| 235 TEST_F(SupervisedUserSharedSettingsServiceTest, ProcessChanges) { | 277 TEST_F(SupervisedUserSharedSettingsServiceTest, ProcessChanges) { |
| 236 StartSyncing(SyncDataList()); | 278 StartSyncing(SyncDataList()); |
| 237 | 279 |
| 238 const char kIdA[] = "aaaaaa"; | 280 const char kIdA[] = "aaaaaa"; |
| 239 const char kIdB[] = "bbbbbb"; | 281 const char kIdB[] = "bbbbbb"; |
| 240 const char kIdC[] = "cccccc"; | 282 const char kIdC[] = "cccccc"; |
| 241 | 283 |
| 242 FundamentalValue age(8); | 284 FundamentalValue age(8); |
| 243 StringValue bar("bar"); | 285 StringValue bar("bar"); |
| 244 settings_service_.SetValue(kIdA, "name", StringValue("Jack")); | 286 settings_service_.SetValue(kIdA, "name", StringValue("Jack")); |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 267 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); | 309 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); |
| 268 EXPECT_EQ(ToJson(&name), | 310 EXPECT_EQ(ToJson(&name), |
| 269 ToJson(settings_service_.GetValue(kIdA, "name"))); | 311 ToJson(settings_service_.GetValue(kIdA, "name"))); |
| 270 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); | 312 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); |
| 271 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); | 313 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); |
| 272 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); | 314 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); |
| 273 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); | 315 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); |
| 274 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); | 316 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); |
| 275 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); | 317 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); |
| 276 } | 318 } |
| OLD | NEW |