Index: components/sync_driver/device_info_service_unittest.cc |
diff --git a/components/sync_driver/device_info_service_unittest.cc b/components/sync_driver/device_info_service_unittest.cc |
index ccaa6929e6bec267881efdf69079a0d42e8a4b52..21ca76ff7bf0742cde5da6c100c20c3946a1aa99 100644 |
--- a/components/sync_driver/device_info_service_unittest.cc |
+++ b/components/sync_driver/device_info_service_unittest.cc |
@@ -18,6 +18,7 @@ |
#include "sync/api/data_batch.h" |
#include "sync/api/metadata_batch.h" |
#include "sync/api/model_type_store.h" |
+#include "sync/internal_api/public/shared_model_type_processor.h" |
#include "sync/internal_api/public/test/model_type_store_test_util.h" |
#include "sync/protocol/data_type_state.pb.h" |
#include "testing/gtest/include/gtest/gtest.h" |
@@ -101,10 +102,13 @@ void AssertExpectedFromDataBatch( |
// in members that can then be accessed. TODO(skym): If this ends up being |
// useful for other model type unittests it should be moved out to a shared |
// location. |
-class FakeModelTypeChangeProcessor : public ModelTypeChangeProcessor { |
+class FakeSharedModelTypeProcessor |
+ : public syncer_v2::SharedModelTypeProcessor { |
public: |
- FakeModelTypeChangeProcessor() {} |
- ~FakeModelTypeChangeProcessor() override {} |
+ FakeSharedModelTypeProcessor(syncer::ModelType type, |
+ ModelTypeService* service) |
+ : SharedModelTypeProcessor(type, service) {} |
+ ~FakeSharedModelTypeProcessor() override {} |
void Put(const std::string& client_tag, |
scoped_ptr<EntityData> entity_data, |
@@ -135,6 +139,28 @@ class FakeModelTypeChangeProcessor : public ModelTypeChangeProcessor { |
} // namespace |
+class FakeDeviceInfoService : public DeviceInfoService { |
+ public: |
+ FakeDeviceInfoService( |
+ sync_driver::LocalDeviceInfoProvider* local_device_info_provider, |
+ const StoreFactoryFunction& callback) |
+ : DeviceInfoService(local_device_info_provider, callback){}; |
+ ~FakeDeviceInfoService() override{}; |
+ |
+ void set_processor(FakeSharedModelTypeProcessor* processor) { |
+ processor_ = processor; |
+ } |
+ |
+ protected: |
+ scoped_ptr<syncer_v2::SharedModelTypeProcessor> |
+ CreateSharedModelTypeProcessor(syncer::ModelType type) override { |
+ return make_scoped_ptr(processor_); |
+ } |
+ |
+ private: |
+ FakeSharedModelTypeProcessor* processor_ = nullptr; |
+}; |
+ |
class DeviceInfoServiceTest : public testing::Test, |
public DeviceInfoTracker::Observer { |
protected: |
@@ -165,7 +191,7 @@ class DeviceInfoServiceTest : public testing::Test, |
// only be called once per run, as it passes |store_|. |
void InitializeService() { |
ASSERT_TRUE(store_); |
- service_.reset(new DeviceInfoService( |
+ service_.reset(new FakeDeviceInfoService( |
local_device_.get(), |
base::Bind(&ModelTypeStoreTestUtil::MoveStoreToCallback, |
base::Passed(&store_)))); |
@@ -183,8 +209,10 @@ class DeviceInfoServiceTest : public testing::Test, |
// pump in this scenario because metadata is going to need to be loading from |
// the store and given to the processor, which is async. |
void SetProcessorAndPump() { |
skym
2016/03/04 22:12:28
I don't think we need this method anymore. Origina
Gang Wu
2016/03/08 20:35:24
Will update where to trigger initial processor in
|
- processor_ = new FakeModelTypeChangeProcessor(); |
- service()->set_change_processor(make_scoped_ptr(processor_)); |
+ processor_ = |
+ new FakeSharedModelTypeProcessor(syncer::DEVICE_INFO, service()); |
+ service()->set_processor(processor_); |
+ service()->InitializeProcessor(syncer::DEVICE_INFO); |
base::RunLoop().RunUntilIdle(); |
} |
@@ -243,12 +271,12 @@ class DeviceInfoServiceTest : public testing::Test, |
LocalDeviceInfoProviderMock* local_device() { return local_device_.get(); } |
// Allows access to the service after InitializeService() is called. |
- DeviceInfoService* service() { |
+ FakeDeviceInfoService* service() { |
EXPECT_TRUE(service_); |
return service_.get(); |
} |
- FakeModelTypeChangeProcessor* processor() { |
+ FakeSharedModelTypeProcessor* processor() { |
EXPECT_TRUE(processor_); |
return processor_; |
} |
@@ -279,11 +307,11 @@ class DeviceInfoServiceTest : public testing::Test, |
// Not initialized immediately (upon test's constructor). This allows each |
// test case to modify the dependencies the service will be constructed with. |
- scoped_ptr<DeviceInfoService> service_; |
+ scoped_ptr<FakeDeviceInfoService> service_; |
// A non-owning pointer to the processor given to the service. Will be nullptr |
// before being given to the service, to make ownership easier. |
- FakeModelTypeChangeProcessor* processor_ = nullptr; |
+ FakeSharedModelTypeProcessor* processor_ = nullptr; |
// A monotonically increasing label for generated specifics objects with data |
// that is slightly different from eachother. |