| Index: components/sync/device_info/device_info_service_unittest.cc
|
| diff --git a/components/sync/device_info/device_info_service_unittest.cc b/components/sync/device_info/device_info_service_unittest.cc
|
| index 83a9c8d4e55a32dd1f696f5fde7bf3a0277fe549..4b5d9b30eae570bf431b1116172392f1b8500e99 100644
|
| --- a/components/sync/device_info/device_info_service_unittest.cc
|
| +++ b/components/sync/device_info/device_info_service_unittest.cc
|
| @@ -338,7 +338,7 @@ TEST_F(DeviceInfoServiceTest, LocalProviderSubscription) {
|
|
|
| // Metadata shouldn't be loaded before the provider is initialized.
|
| TEST_F(DeviceInfoServiceTest, LocalProviderInitRace) {
|
| - set_local_device(base::WrapUnique(new LocalDeviceInfoProviderMock()));
|
| + set_local_device(base::MakeUnique<LocalDeviceInfoProviderMock>());
|
| InitializeAndPump();
|
| EXPECT_FALSE(processor()->metadata());
|
|
|
| @@ -731,6 +731,24 @@ TEST_F(DeviceInfoServiceTest, CountActiveDevices) {
|
| EXPECT_EQ(2, service()->CountActiveDevices());
|
| }
|
|
|
| +TEST_F(DeviceInfoServiceTest, MultipleOnProviderInitialized) {
|
| + set_local_device(base::MakeUnique<LocalDeviceInfoProviderMock>());
|
| + InitializeAndPump();
|
| + EXPECT_EQ(nullptr, processor()->metadata());
|
| +
|
| + // Verify the processor was given metadata.
|
| + local_device()->Initialize(CreateDeviceInfo());
|
| + base::RunLoop().RunUntilIdle();
|
| + const MetadataBatch* metadata = processor()->metadata();
|
| + EXPECT_NE(nullptr, metadata);
|
| +
|
| + // Pointer address of metadata should remain constant because the processor
|
| + // should not have been given new metadata.
|
| + local_device()->Initialize(CreateDeviceInfo());
|
| + base::RunLoop().RunUntilIdle();
|
| + EXPECT_EQ(metadata, processor()->metadata());
|
| +}
|
| +
|
| } // namespace
|
|
|
| } // namespace syncer
|
|
|