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 |