| 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 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 183 EXPECT_EQ(ToJson(&name), ToJson(settings_service_.GetValue(kIdA, "name"))); | 184 EXPECT_EQ(ToJson(&name), ToJson(settings_service_.GetValue(kIdA, "name"))); |
| 184 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); | 185 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); |
| 185 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); | 186 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); |
| 186 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); | 187 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); |
| 187 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); | 188 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); |
| 188 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); | 189 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); |
| 189 } | 190 } |
| 190 | 191 |
| 191 TEST_F(SupervisedUserSharedSettingsServiceTest, Merge) { | 192 TEST_F(SupervisedUserSharedSettingsServiceTest, Merge) { |
| 192 // Set initial values, then stop syncing so we can restart. | 193 // Set initial values, then stop syncing so we can restart. |
| 193 StartSyncing(SyncDataList()); | 194 SyncMergeResult result = StartSyncing(SyncDataList()); |
| 195 EXPECT_EQ(0, result.num_items_added()); |
| 196 EXPECT_EQ(0, result.num_items_deleted()); |
| 197 EXPECT_EQ(0, result.num_items_modified()); |
| 198 EXPECT_EQ(0, result.num_items_before_association()); |
| 199 EXPECT_EQ(0, result.num_items_after_association()); |
| 194 | 200 |
| 195 const char kIdA[] = "aaaaaa"; | 201 const char kIdA[] = "aaaaaa"; |
| 196 const char kIdB[] = "bbbbbb"; | 202 const char kIdB[] = "bbbbbb"; |
| 197 const char kIdC[] = "cccccc"; | 203 const char kIdC[] = "cccccc"; |
| 198 | 204 |
| 199 FundamentalValue age(8); | 205 FundamentalValue age(8); |
| 200 StringValue bar("bar"); | 206 StringValue bar("bar"); |
| 201 settings_service_.SetValue(kIdA, "name", StringValue("Jack")); | 207 settings_service_.SetValue(kIdA, "name", StringValue("Jack")); |
| 202 settings_service_.SetValue(kIdA, "age", age); | 208 settings_service_.SetValue(kIdA, "age", age); |
| 203 settings_service_.SetValue(kIdB, "foo", bar); | 209 settings_service_.SetValue(kIdB, "foo", bar); |
| 204 | 210 |
| 205 settings_service_.StopSyncing(SUPERVISED_USER_SHARED_SETTINGS); | 211 settings_service_.StopSyncing(SUPERVISED_USER_SHARED_SETTINGS); |
| 206 | 212 |
| 207 StringValue name("Jill"); | 213 StringValue name("Jill"); |
| 208 StringValue blurp("blurp"); | 214 StringValue blurp("blurp"); |
| 209 SyncDataList sync_data; | 215 SyncDataList sync_data; |
| 210 sync_data.push_back( | 216 sync_data.push_back( |
| 211 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( | 217 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( |
| 212 kIdA, "name", name, true)); | 218 kIdA, "name", name, true)); |
| 213 sync_data.push_back( | 219 sync_data.push_back( |
| 214 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( | 220 SupervisedUserSharedSettingsService::CreateSyncDataForSetting( |
| 215 kIdC, "baz", blurp, true)); | 221 kIdC, "baz", blurp, true)); |
| 216 | 222 |
| 217 StartSyncing(sync_data); | 223 result = StartSyncing(sync_data); |
| 224 |
| 225 EXPECT_EQ(1, result.num_items_added()); |
| 226 EXPECT_EQ(0, result.num_items_deleted()); |
| 227 EXPECT_EQ(1, result.num_items_modified()); |
| 228 EXPECT_EQ(3, result.num_items_before_association()); |
| 229 EXPECT_EQ(4, result.num_items_after_association()); |
| 230 |
| 218 EXPECT_EQ(2u, sync_processor_->changes().size()); | 231 EXPECT_EQ(2u, sync_processor_->changes().size()); |
| 219 VerifySyncChangesAndClear(); | 232 VerifySyncChangesAndClear(); |
| 220 EXPECT_EQ(2u, changed_settings_.size()); | 233 EXPECT_EQ(2u, changed_settings_.size()); |
| 221 | 234 |
| 222 EXPECT_EQ( | 235 EXPECT_EQ( |
| 223 4u, | 236 4u, |
| 224 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); | 237 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); |
| 225 EXPECT_EQ(ToJson(&name), | 238 EXPECT_EQ(ToJson(&name), |
| 226 ToJson(settings_service_.GetValue(kIdA, "name"))); | 239 ToJson(settings_service_.GetValue(kIdA, "name"))); |
| 227 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); | 240 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); | 280 settings_service_.GetAllSyncData(SUPERVISED_USER_SHARED_SETTINGS).size()); |
| 268 EXPECT_EQ(ToJson(&name), | 281 EXPECT_EQ(ToJson(&name), |
| 269 ToJson(settings_service_.GetValue(kIdA, "name"))); | 282 ToJson(settings_service_.GetValue(kIdA, "name"))); |
| 270 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); | 283 EXPECT_EQ(ToJson(&age), ToJson(settings_service_.GetValue(kIdA, "age"))); |
| 271 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); | 284 EXPECT_EQ(ToJson(&bar), ToJson(settings_service_.GetValue(kIdB, "foo"))); |
| 272 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); | 285 EXPECT_EQ(ToJson(&blurp), ToJson(settings_service_.GetValue(kIdC, "baz"))); |
| 273 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); | 286 EXPECT_FALSE(settings_service_.GetValue(kIdA, "foo")); |
| 274 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); | 287 EXPECT_FALSE(settings_service_.GetValue(kIdB, "name")); |
| 275 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); | 288 EXPECT_FALSE(settings_service_.GetValue(kIdC, "name")); |
| 276 } | 289 } |
| OLD | NEW |