| 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 "components/sync/driver/generic_change_processor.h" | 5 #include "components/sync/driver/generic_change_processor.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 }; | 117 }; |
| 118 | 118 |
| 119 class SyncGenericChangeProcessorTest : public testing::Test { | 119 class SyncGenericChangeProcessorTest : public testing::Test { |
| 120 public: | 120 public: |
| 121 // Most test cases will use this type. For those that need a | 121 // Most test cases will use this type. For those that need a |
| 122 // GenericChangeProcessor for a different type, use |InitializeForType|. | 122 // GenericChangeProcessor for a different type, use |InitializeForType|. |
| 123 static const ModelType kType = PREFERENCES; | 123 static const ModelType kType = PREFERENCES; |
| 124 | 124 |
| 125 SyncGenericChangeProcessorTest() | 125 SyncGenericChangeProcessorTest() |
| 126 : syncable_service_ptr_factory_(&fake_syncable_service_), | 126 : syncable_service_ptr_factory_(&fake_syncable_service_), |
| 127 mock_attachment_service_(nullptr), | 127 mock_attachment_service_(nullptr) {} |
| 128 sync_client_(&sync_factory_) {} | |
| 129 | 128 |
| 130 void SetUp() override { | 129 void SetUp() override { |
| 131 // Use kType by default, but allow test cases to re-initialize with whatever | 130 // Use kType by default, but allow test cases to re-initialize with whatever |
| 132 // type they choose. Therefore, it's important that all type dependent | 131 // type they choose. Therefore, it's important that all type dependent |
| 133 // initialization occurs in InitializeForType. | 132 // initialization occurs in InitializeForType. |
| 134 InitializeForType(kType); | 133 InitializeForType(kType); |
| 135 } | 134 } |
| 136 | 135 |
| 137 void TearDown() override { | 136 void TearDown() override { |
| 138 mock_attachment_service_ = nullptr; | 137 mock_attachment_service_ = nullptr; |
| (...skipping 21 matching lines...) Expand all Loading... |
| 160 ConstructGenericChangeProcessor(type); | 159 ConstructGenericChangeProcessor(type); |
| 161 } | 160 } |
| 162 | 161 |
| 163 void ConstructGenericChangeProcessor(ModelType type) { | 162 void ConstructGenericChangeProcessor(ModelType type) { |
| 164 std::unique_ptr<AttachmentStore> attachment_store = | 163 std::unique_ptr<AttachmentStore> attachment_store = |
| 165 AttachmentStore::CreateInMemoryStore(); | 164 AttachmentStore::CreateInMemoryStore(); |
| 166 change_processor_ = base::MakeUnique<GenericChangeProcessor>( | 165 change_processor_ = base::MakeUnique<GenericChangeProcessor>( |
| 167 type, base::MakeUnique<DataTypeErrorHandlerMock>(), | 166 type, base::MakeUnique<DataTypeErrorHandlerMock>(), |
| 168 syncable_service_ptr_factory_.GetWeakPtr(), | 167 syncable_service_ptr_factory_.GetWeakPtr(), |
| 169 merge_result_ptr_factory_->GetWeakPtr(), test_user_share_->user_share(), | 168 merge_result_ptr_factory_->GetWeakPtr(), test_user_share_->user_share(), |
| 170 &sync_client_, attachment_store->CreateAttachmentStoreForSync()); | 169 &sync_factory_, attachment_store->CreateAttachmentStoreForSync()); |
| 171 mock_attachment_service_ = sync_factory_.GetMockAttachmentService(); | 170 mock_attachment_service_ = sync_factory_.GetMockAttachmentService(); |
| 172 } | 171 } |
| 173 | 172 |
| 174 void BuildChildNodes(ModelType type, int n) { | 173 void BuildChildNodes(ModelType type, int n) { |
| 175 WriteTransaction trans(FROM_HERE, user_share()); | 174 WriteTransaction trans(FROM_HERE, user_share()); |
| 176 for (int i = 0; i < n; ++i) { | 175 for (int i = 0; i < n; ++i) { |
| 177 WriteNode node(&trans); | 176 WriteNode node(&trans); |
| 178 node.InitUniqueByCreation(type, base::StringPrintf("node%05d", i)); | 177 node.InitUniqueByCreation(type, base::StringPrintf("node%05d", i)); |
| 179 } | 178 } |
| 180 } | 179 } |
| (...skipping 16 matching lines...) Expand all Loading... |
| 197 | 196 |
| 198 std::unique_ptr<SyncMergeResult> sync_merge_result_; | 197 std::unique_ptr<SyncMergeResult> sync_merge_result_; |
| 199 std::unique_ptr<base::WeakPtrFactory<SyncMergeResult>> | 198 std::unique_ptr<base::WeakPtrFactory<SyncMergeResult>> |
| 200 merge_result_ptr_factory_; | 199 merge_result_ptr_factory_; |
| 201 | 200 |
| 202 FakeSyncableService fake_syncable_service_; | 201 FakeSyncableService fake_syncable_service_; |
| 203 base::WeakPtrFactory<FakeSyncableService> syncable_service_ptr_factory_; | 202 base::WeakPtrFactory<FakeSyncableService> syncable_service_ptr_factory_; |
| 204 | 203 |
| 205 std::unique_ptr<TestUserShare> test_user_share_; | 204 std::unique_ptr<TestUserShare> test_user_share_; |
| 206 MockAttachmentService* mock_attachment_service_; | 205 MockAttachmentService* mock_attachment_service_; |
| 207 FakeSyncClient sync_client_; | |
| 208 MockSyncApiComponentFactory sync_factory_; | 206 MockSyncApiComponentFactory sync_factory_; |
| 209 | 207 |
| 210 std::unique_ptr<GenericChangeProcessor> change_processor_; | 208 std::unique_ptr<GenericChangeProcessor> change_processor_; |
| 211 }; | 209 }; |
| 212 | 210 |
| 213 // Similar to above, but focused on the method that implements sync/api | 211 // Similar to above, but focused on the method that implements sync/api |
| 214 // interfaces and is hence exposed to datatypes directly. | 212 // interfaces and is hence exposed to datatypes directly. |
| 215 TEST_F(SyncGenericChangeProcessorTest, StressGetAllSyncData) { | 213 TEST_F(SyncGenericChangeProcessorTest, StressGetAllSyncData) { |
| 216 const int kNumChildNodes = 1000; | 214 const int kNumChildNodes = 1000; |
| 217 const int kRepeatCount = 1; | 215 const int kRepeatCount = 1; |
| (...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 501 SyncDataList sync_data = change_processor()->GetAllSyncData(SESSIONS); | 499 SyncDataList sync_data = change_processor()->GetAllSyncData(SESSIONS); |
| 502 ASSERT_EQ(sync_data.size(), 1U); | 500 ASSERT_EQ(sync_data.size(), 1U); |
| 503 ASSERT_EQ("session tag 2", | 501 ASSERT_EQ("session tag 2", |
| 504 sync_data[0].GetSpecifics().session().session_tag()); | 502 sync_data[0].GetSpecifics().session().session_tag()); |
| 505 EXPECT_FALSE(SyncDataRemote(sync_data[0]).GetClientTagHash().empty()); | 503 EXPECT_FALSE(SyncDataRemote(sync_data[0]).GetClientTagHash().empty()); |
| 506 } | 504 } |
| 507 | 505 |
| 508 } // namespace | 506 } // namespace |
| 509 | 507 |
| 510 } // namespace syncer | 508 } // namespace syncer |
| OLD | NEW |