OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/extensions/extension_service_unittest.h" | 5 #include "chrome/browser/extensions/extension_service_unittest.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <set> | 8 #include <set> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 #include "extensions/common/permissions/permission_set.h" | 104 #include "extensions/common/permissions/permission_set.h" |
105 #include "extensions/common/url_pattern.h" | 105 #include "extensions/common/url_pattern.h" |
106 #include "extensions/common/value_builder.h" | 106 #include "extensions/common/value_builder.h" |
107 #include "gpu/config/gpu_info.h" | 107 #include "gpu/config/gpu_info.h" |
108 #include "grit/browser_resources.h" | 108 #include "grit/browser_resources.h" |
109 #include "net/cookies/canonical_cookie.h" | 109 #include "net/cookies/canonical_cookie.h" |
110 #include "net/cookies/cookie_monster.h" | 110 #include "net/cookies/cookie_monster.h" |
111 #include "net/cookies/cookie_options.h" | 111 #include "net/cookies/cookie_options.h" |
112 #include "net/url_request/url_request_context.h" | 112 #include "net/url_request/url_request_context.h" |
113 #include "net/url_request/url_request_context_getter.h" | 113 #include "net/url_request/url_request_context_getter.h" |
| 114 #include "sync/api/fake_sync_change_processor.h" |
114 #include "sync/api/string_ordinal.h" | 115 #include "sync/api/string_ordinal.h" |
115 #include "sync/api/sync_data.h" | 116 #include "sync/api/sync_data.h" |
116 #include "sync/api/sync_error_factory.h" | 117 #include "sync/api/sync_error_factory.h" |
117 #include "sync/api/sync_error_factory_mock.h" | 118 #include "sync/api/sync_error_factory_mock.h" |
118 #include "sync/api/syncable_service.h" | 119 #include "sync/api/syncable_service.h" |
119 #include "sync/protocol/app_specifics.pb.h" | 120 #include "sync/protocol/app_specifics.pb.h" |
120 #include "sync/protocol/extension_specifics.pb.h" | 121 #include "sync/protocol/extension_specifics.pb.h" |
121 #include "sync/protocol/sync.pb.h" | 122 #include "sync/protocol/sync.pb.h" |
122 #include "testing/gtest/include/gtest/gtest.h" | 123 #include "testing/gtest/include/gtest/gtest.h" |
123 #include "testing/platform_test.h" | 124 #include "testing/platform_test.h" |
(...skipping 5298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5422 ValidatePrefKeyCount(1); | 5423 ValidatePrefKeyCount(1); |
5423 | 5424 |
5424 // Reload all extensions, and make sure it comes back. | 5425 // Reload all extensions, and make sure it comes back. |
5425 std::string extension_id = (*registry_->enabled_extensions().begin())->id(); | 5426 std::string extension_id = (*registry_->enabled_extensions().begin())->id(); |
5426 loaded_.clear(); | 5427 loaded_.clear(); |
5427 service_->ReloadExtensionsForTest(); | 5428 service_->ReloadExtensionsForTest(); |
5428 ASSERT_EQ(1u, registry_->enabled_extensions().size()); | 5429 ASSERT_EQ(1u, registry_->enabled_extensions().size()); |
5429 EXPECT_EQ(extension_id, (*registry_->enabled_extensions().begin())->id()); | 5430 EXPECT_EQ(extension_id, (*registry_->enabled_extensions().begin())->id()); |
5430 } | 5431 } |
5431 | 5432 |
5432 namespace { | |
5433 | |
5434 class TestSyncProcessorStub : public syncer::SyncChangeProcessor { | |
5435 virtual syncer::SyncError ProcessSyncChanges( | |
5436 const tracked_objects::Location& from_here, | |
5437 const syncer::SyncChangeList& change_list) OVERRIDE { | |
5438 return syncer::SyncError(); | |
5439 } | |
5440 | |
5441 virtual syncer::SyncDataList GetAllSyncData( | |
5442 syncer::ModelType type) const OVERRIDE { | |
5443 return syncer::SyncDataList(); | |
5444 } | |
5445 }; | |
5446 | |
5447 } // namespace | |
5448 | |
5449 TEST_F(ExtensionServiceTest, DeferredSyncStartupPreInstalledComponent) { | 5433 TEST_F(ExtensionServiceTest, DeferredSyncStartupPreInstalledComponent) { |
5450 InitializeEmptyExtensionService(); | 5434 InitializeEmptyExtensionService(); |
5451 InitializeExtensionSyncService(); | 5435 InitializeExtensionSyncService(); |
5452 | 5436 |
5453 bool flare_was_called = false; | 5437 bool flare_was_called = false; |
5454 syncer::ModelType triggered_type(syncer::UNSPECIFIED); | 5438 syncer::ModelType triggered_type(syncer::UNSPECIFIED); |
5455 base::WeakPtrFactory<ExtensionServiceTest> factory(this); | 5439 base::WeakPtrFactory<ExtensionServiceTest> factory(this); |
5456 extension_sync_service_->SetSyncStartFlare( | 5440 extension_sync_service_->SetSyncStartFlare( |
5457 base::Bind(&ExtensionServiceTest::MockSyncStartFlare, | 5441 base::Bind(&ExtensionServiceTest::MockSyncStartFlare, |
5458 factory.GetWeakPtr(), | 5442 factory.GetWeakPtr(), |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5516 | 5500 |
5517 EXPECT_TRUE(flare_was_called); | 5501 EXPECT_TRUE(flare_was_called); |
5518 EXPECT_EQ(syncer::EXTENSIONS, triggered_type); | 5502 EXPECT_EQ(syncer::EXTENSIONS, triggered_type); |
5519 | 5503 |
5520 // Reset. | 5504 // Reset. |
5521 flare_was_called = false; | 5505 flare_was_called = false; |
5522 triggered_type = syncer::UNSPECIFIED; | 5506 triggered_type = syncer::UNSPECIFIED; |
5523 | 5507 |
5524 // Once sync starts, flare should no longer be invoked. | 5508 // Once sync starts, flare should no longer be invoked. |
5525 extension_sync_service_->MergeDataAndStartSyncing( | 5509 extension_sync_service_->MergeDataAndStartSyncing( |
5526 syncer::EXTENSIONS, syncer::SyncDataList(), | 5510 syncer::EXTENSIONS, |
5527 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5511 syncer::SyncDataList(), |
| 5512 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5513 new syncer::FakeSyncChangeProcessor), |
5528 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5514 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5529 path = data_dir_.AppendASCII("page_action.crx"); | 5515 path = data_dir_.AppendASCII("page_action.crx"); |
5530 InstallCRX(path, INSTALL_NEW); | 5516 InstallCRX(path, INSTALL_NEW); |
5531 EXPECT_FALSE(flare_was_called); | 5517 EXPECT_FALSE(flare_was_called); |
5532 ASSERT_EQ(syncer::UNSPECIFIED, triggered_type); | 5518 ASSERT_EQ(syncer::UNSPECIFIED, triggered_type); |
5533 } | 5519 } |
5534 | 5520 |
5535 TEST_F(ExtensionServiceTest, DisableExtensionFromSync) { | 5521 TEST_F(ExtensionServiceTest, DisableExtensionFromSync) { |
5536 // Start the extensions service with one external extension already installed. | 5522 // Start the extensions service with one external extension already installed. |
5537 base::FilePath source_install_dir = data_dir_ | 5523 base::FilePath source_install_dir = data_dir_ |
(...skipping 18 matching lines...) Expand all Loading... |
5556 // We start enabled. | 5542 // We start enabled. |
5557 const Extension* extension = service_->GetExtensionById(good0, true); | 5543 const Extension* extension = service_->GetExtensionById(good0, true); |
5558 ASSERT_TRUE(extension); | 5544 ASSERT_TRUE(extension); |
5559 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); | 5545 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); |
5560 extensions::ExtensionSyncData disable_good_crx(*extension, false, false); | 5546 extensions::ExtensionSyncData disable_good_crx(*extension, false, false); |
5561 | 5547 |
5562 // Then sync data arrives telling us to disable |good0|. | 5548 // Then sync data arrives telling us to disable |good0|. |
5563 syncer::SyncDataList sync_data; | 5549 syncer::SyncDataList sync_data; |
5564 sync_data.push_back(disable_good_crx.GetSyncData()); | 5550 sync_data.push_back(disable_good_crx.GetSyncData()); |
5565 extension_sync_service_->MergeDataAndStartSyncing( | 5551 extension_sync_service_->MergeDataAndStartSyncing( |
5566 syncer::EXTENSIONS, sync_data, | 5552 syncer::EXTENSIONS, |
5567 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5553 sync_data, |
| 5554 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5555 new syncer::FakeSyncChangeProcessor), |
5568 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5556 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5569 ASSERT_FALSE(service_->IsExtensionEnabled(good0)); | 5557 ASSERT_FALSE(service_->IsExtensionEnabled(good0)); |
5570 } | 5558 } |
5571 | 5559 |
5572 TEST_F(ExtensionServiceTest, DontDisableExtensionWithPendingEnableFromSync) { | 5560 TEST_F(ExtensionServiceTest, DontDisableExtensionWithPendingEnableFromSync) { |
5573 // Start the extensions service with one external extension already installed. | 5561 // Start the extensions service with one external extension already installed. |
5574 base::FilePath source_install_dir = data_dir_ | 5562 base::FilePath source_install_dir = data_dir_ |
5575 .AppendASCII("good") | 5563 .AppendASCII("good") |
5576 .AppendASCII("Extensions"); | 5564 .AppendASCII("Extensions"); |
5577 base::FilePath pref_path = | 5565 base::FilePath pref_path = |
(...skipping 21 matching lines...) Expand all Loading... |
5599 // Enable extension - this is now the most recent state. | 5587 // Enable extension - this is now the most recent state. |
5600 service_->EnableExtension(good0); | 5588 service_->EnableExtension(good0); |
5601 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); | 5589 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); |
5602 | 5590 |
5603 // Now sync data comes in that says to disable good0. This should be | 5591 // Now sync data comes in that says to disable good0. This should be |
5604 // ignored. | 5592 // ignored. |
5605 extensions::ExtensionSyncData disable_good_crx(*extension, false, false); | 5593 extensions::ExtensionSyncData disable_good_crx(*extension, false, false); |
5606 syncer::SyncDataList sync_data; | 5594 syncer::SyncDataList sync_data; |
5607 sync_data.push_back(disable_good_crx.GetSyncData()); | 5595 sync_data.push_back(disable_good_crx.GetSyncData()); |
5608 extension_sync_service_->MergeDataAndStartSyncing( | 5596 extension_sync_service_->MergeDataAndStartSyncing( |
5609 syncer::EXTENSIONS, sync_data, | 5597 syncer::EXTENSIONS, |
5610 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5598 sync_data, |
| 5599 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5600 new syncer::FakeSyncChangeProcessor), |
5611 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5601 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5612 | 5602 |
5613 // The extension was enabled locally before the sync data arrived, so it | 5603 // The extension was enabled locally before the sync data arrived, so it |
5614 // should still be enabled now. | 5604 // should still be enabled now. |
5615 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); | 5605 ASSERT_TRUE(service_->IsExtensionEnabled(good0)); |
5616 } | 5606 } |
5617 | 5607 |
5618 TEST_F(ExtensionServiceTest, GetSyncData) { | 5608 TEST_F(ExtensionServiceTest, GetSyncData) { |
5619 InitializeEmptyExtensionService(); | 5609 InitializeEmptyExtensionService(); |
5620 InitializeExtensionSyncService(); | 5610 InitializeExtensionSyncService(); |
5621 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5611 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
5622 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5612 const Extension* extension = service_->GetInstalledExtension(good_crx); |
5623 ASSERT_TRUE(extension); | 5613 ASSERT_TRUE(extension); |
5624 | 5614 |
5625 extension_sync_service_->MergeDataAndStartSyncing( | 5615 extension_sync_service_->MergeDataAndStartSyncing( |
5626 syncer::EXTENSIONS, syncer::SyncDataList(), | 5616 syncer::EXTENSIONS, |
5627 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5617 syncer::SyncDataList(), |
| 5618 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5619 new syncer::FakeSyncChangeProcessor), |
5628 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5620 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5629 | 5621 |
5630 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5622 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5631 syncer::EXTENSIONS); | 5623 syncer::EXTENSIONS); |
5632 ASSERT_EQ(list.size(), 1U); | 5624 ASSERT_EQ(list.size(), 1U); |
5633 extensions::ExtensionSyncData data(list[0]); | 5625 extensions::ExtensionSyncData data(list[0]); |
5634 EXPECT_EQ(extension->id(), data.id()); | 5626 EXPECT_EQ(extension->id(), data.id()); |
5635 EXPECT_FALSE(data.uninstalled()); | 5627 EXPECT_FALSE(data.uninstalled()); |
5636 EXPECT_EQ(service_->IsExtensionEnabled(good_crx), data.enabled()); | 5628 EXPECT_EQ(service_->IsExtensionEnabled(good_crx), data.enabled()); |
5637 EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile_.get()), | 5629 EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile_.get()), |
5638 data.incognito_enabled()); | 5630 data.incognito_enabled()); |
5639 EXPECT_TRUE(data.version().Equals(*extension->version())); | 5631 EXPECT_TRUE(data.version().Equals(*extension->version())); |
5640 EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension), | 5632 EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension), |
5641 data.update_url()); | 5633 data.update_url()); |
5642 EXPECT_EQ(extension->name(), data.name()); | 5634 EXPECT_EQ(extension->name(), data.name()); |
5643 } | 5635 } |
5644 | 5636 |
5645 TEST_F(ExtensionServiceTest, GetSyncDataTerminated) { | 5637 TEST_F(ExtensionServiceTest, GetSyncDataTerminated) { |
5646 InitializeEmptyExtensionService(); | 5638 InitializeEmptyExtensionService(); |
5647 InitializeExtensionSyncService(); | 5639 InitializeExtensionSyncService(); |
5648 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5640 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
5649 TerminateExtension(good_crx); | 5641 TerminateExtension(good_crx); |
5650 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5642 const Extension* extension = service_->GetInstalledExtension(good_crx); |
5651 ASSERT_TRUE(extension); | 5643 ASSERT_TRUE(extension); |
5652 | 5644 |
5653 TestSyncProcessorStub processor; | 5645 syncer::FakeSyncChangeProcessor processor; |
5654 extension_sync_service_->MergeDataAndStartSyncing( | 5646 extension_sync_service_->MergeDataAndStartSyncing( |
5655 syncer::EXTENSIONS, syncer::SyncDataList(), | 5647 syncer::EXTENSIONS, |
5656 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5648 syncer::SyncDataList(), |
| 5649 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5650 new syncer::FakeSyncChangeProcessor), |
5657 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5651 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5658 | 5652 |
5659 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5653 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5660 syncer::EXTENSIONS); | 5654 syncer::EXTENSIONS); |
5661 ASSERT_EQ(list.size(), 1U); | 5655 ASSERT_EQ(list.size(), 1U); |
5662 extensions::ExtensionSyncData data(list[0]); | 5656 extensions::ExtensionSyncData data(list[0]); |
5663 EXPECT_EQ(extension->id(), data.id()); | 5657 EXPECT_EQ(extension->id(), data.id()); |
5664 EXPECT_FALSE(data.uninstalled()); | 5658 EXPECT_FALSE(data.uninstalled()); |
5665 EXPECT_EQ(service_->IsExtensionEnabled(good_crx), data.enabled()); | 5659 EXPECT_EQ(service_->IsExtensionEnabled(good_crx), data.enabled()); |
5666 EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile_.get()), | 5660 EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile_.get()), |
5667 data.incognito_enabled()); | 5661 data.incognito_enabled()); |
5668 EXPECT_TRUE(data.version().Equals(*extension->version())); | 5662 EXPECT_TRUE(data.version().Equals(*extension->version())); |
5669 EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension), | 5663 EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension), |
5670 data.update_url()); | 5664 data.update_url()); |
5671 EXPECT_EQ(extension->name(), data.name()); | 5665 EXPECT_EQ(extension->name(), data.name()); |
5672 } | 5666 } |
5673 | 5667 |
5674 TEST_F(ExtensionServiceTest, GetSyncDataFilter) { | 5668 TEST_F(ExtensionServiceTest, GetSyncDataFilter) { |
5675 InitializeEmptyExtensionService(); | 5669 InitializeEmptyExtensionService(); |
5676 InitializeExtensionSyncService(); | 5670 InitializeExtensionSyncService(); |
5677 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5671 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
5678 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5672 const Extension* extension = service_->GetInstalledExtension(good_crx); |
5679 ASSERT_TRUE(extension); | 5673 ASSERT_TRUE(extension); |
5680 | 5674 |
5681 TestSyncProcessorStub processor; | 5675 syncer::FakeSyncChangeProcessor processor; |
5682 extension_sync_service_->MergeDataAndStartSyncing(syncer::APPS, | 5676 extension_sync_service_->MergeDataAndStartSyncing( |
| 5677 syncer::APPS, |
5683 syncer::SyncDataList(), | 5678 syncer::SyncDataList(), |
5684 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5679 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5680 new syncer::FakeSyncChangeProcessor), |
5685 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5681 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5686 | 5682 |
5687 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5683 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5688 syncer::EXTENSIONS); | 5684 syncer::EXTENSIONS); |
5689 ASSERT_EQ(list.size(), 0U); | 5685 ASSERT_EQ(list.size(), 0U); |
5690 } | 5686 } |
5691 | 5687 |
5692 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { | 5688 TEST_F(ExtensionServiceTest, GetSyncExtensionDataUserSettings) { |
5693 InitializeEmptyExtensionService(); | 5689 InitializeEmptyExtensionService(); |
5694 InitializeProcessManager(); | 5690 InitializeProcessManager(); |
5695 InitializeExtensionSyncService(); | 5691 InitializeExtensionSyncService(); |
5696 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5692 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
5697 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5693 const Extension* extension = service_->GetInstalledExtension(good_crx); |
5698 ASSERT_TRUE(extension); | 5694 ASSERT_TRUE(extension); |
5699 | 5695 |
5700 TestSyncProcessorStub processor; | 5696 syncer::FakeSyncChangeProcessor processor; |
5701 extension_sync_service_->MergeDataAndStartSyncing( | 5697 extension_sync_service_->MergeDataAndStartSyncing( |
5702 syncer::EXTENSIONS, syncer::SyncDataList(), | 5698 syncer::EXTENSIONS, |
5703 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5699 syncer::SyncDataList(), |
| 5700 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5701 new syncer::FakeSyncChangeProcessor), |
5704 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5702 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5705 | 5703 |
5706 { | 5704 { |
5707 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5705 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5708 syncer::EXTENSIONS); | 5706 syncer::EXTENSIONS); |
5709 ASSERT_EQ(list.size(), 1U); | 5707 ASSERT_EQ(list.size(), 1U); |
5710 extensions::ExtensionSyncData data(list[0]); | 5708 extensions::ExtensionSyncData data(list[0]); |
5711 EXPECT_TRUE(data.enabled()); | 5709 EXPECT_TRUE(data.enabled()); |
5712 EXPECT_FALSE(data.incognito_enabled()); | 5710 EXPECT_FALSE(data.incognito_enabled()); |
5713 } | 5711 } |
(...skipping 30 matching lines...) Expand all Loading... |
5744 } | 5742 } |
5745 | 5743 |
5746 TEST_F(ExtensionServiceTest, SyncForUninstalledExternalExtension) { | 5744 TEST_F(ExtensionServiceTest, SyncForUninstalledExternalExtension) { |
5747 InitializeEmptyExtensionService(); | 5745 InitializeEmptyExtensionService(); |
5748 InitializeExtensionSyncService(); | 5746 InitializeExtensionSyncService(); |
5749 InstallCRXWithLocation(data_dir_.AppendASCII("good.crx"), | 5747 InstallCRXWithLocation(data_dir_.AppendASCII("good.crx"), |
5750 Manifest::EXTERNAL_PREF, INSTALL_NEW); | 5748 Manifest::EXTERNAL_PREF, INSTALL_NEW); |
5751 const Extension* extension = service_->GetInstalledExtension(good_crx); | 5749 const Extension* extension = service_->GetInstalledExtension(good_crx); |
5752 ASSERT_TRUE(extension); | 5750 ASSERT_TRUE(extension); |
5753 | 5751 |
5754 TestSyncProcessorStub processor; | 5752 syncer::FakeSyncChangeProcessor processor; |
5755 extension_sync_service_->MergeDataAndStartSyncing( | 5753 extension_sync_service_->MergeDataAndStartSyncing( |
5756 syncer::EXTENSIONS, syncer::SyncDataList(), | 5754 syncer::EXTENSIONS, |
5757 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5755 syncer::SyncDataList(), |
| 5756 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5757 new syncer::FakeSyncChangeProcessor), |
5758 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5758 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5759 | 5759 |
5760 UninstallExtension(good_crx, false); | 5760 UninstallExtension(good_crx, false); |
5761 EXPECT_TRUE(service_->IsExternalExtensionUninstalled(good_crx)); | 5761 EXPECT_TRUE(service_->IsExternalExtensionUninstalled(good_crx)); |
5762 | 5762 |
5763 sync_pb::EntitySpecifics specifics; | 5763 sync_pb::EntitySpecifics specifics; |
5764 sync_pb::AppSpecifics* app_specifics = specifics.mutable_app(); | 5764 sync_pb::AppSpecifics* app_specifics = specifics.mutable_app(); |
5765 sync_pb::ExtensionSpecifics* extension_specifics = | 5765 sync_pb::ExtensionSpecifics* extension_specifics = |
5766 app_specifics->mutable_extension(); | 5766 app_specifics->mutable_extension(); |
5767 extension_specifics->set_id(good_crx); | 5767 extension_specifics->set_id(good_crx); |
(...skipping 13 matching lines...) Expand all Loading... |
5781 } | 5781 } |
5782 | 5782 |
5783 TEST_F(ExtensionServiceTest, GetSyncAppDataUserSettings) { | 5783 TEST_F(ExtensionServiceTest, GetSyncAppDataUserSettings) { |
5784 InitializeEmptyExtensionService(); | 5784 InitializeEmptyExtensionService(); |
5785 InitializeExtensionSyncService(); | 5785 InitializeExtensionSyncService(); |
5786 const Extension* app = | 5786 const Extension* app = |
5787 PackAndInstallCRX(data_dir_.AppendASCII("app"), INSTALL_NEW); | 5787 PackAndInstallCRX(data_dir_.AppendASCII("app"), INSTALL_NEW); |
5788 ASSERT_TRUE(app); | 5788 ASSERT_TRUE(app); |
5789 ASSERT_TRUE(app->is_app()); | 5789 ASSERT_TRUE(app->is_app()); |
5790 | 5790 |
5791 TestSyncProcessorStub processor; | 5791 syncer::FakeSyncChangeProcessor processor; |
5792 extension_sync_service_->MergeDataAndStartSyncing(syncer::APPS, | 5792 extension_sync_service_->MergeDataAndStartSyncing( |
| 5793 syncer::APPS, |
5793 syncer::SyncDataList(), | 5794 syncer::SyncDataList(), |
5794 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5795 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5796 new syncer::FakeSyncChangeProcessor), |
5795 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5797 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5796 | 5798 |
5797 syncer::StringOrdinal initial_ordinal = | 5799 syncer::StringOrdinal initial_ordinal = |
5798 syncer::StringOrdinal::CreateInitialOrdinal(); | 5800 syncer::StringOrdinal::CreateInitialOrdinal(); |
5799 { | 5801 { |
5800 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5802 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5801 syncer::APPS); | 5803 syncer::APPS); |
5802 ASSERT_EQ(list.size(), 1U); | 5804 ASSERT_EQ(list.size(), 1U); |
5803 | 5805 |
5804 extensions::AppSyncData app_sync_data(list[0]); | 5806 extensions::AppSyncData app_sync_data(list[0]); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5836 const size_t kAppCount = 3; | 5838 const size_t kAppCount = 3; |
5837 const Extension* apps[kAppCount]; | 5839 const Extension* apps[kAppCount]; |
5838 apps[0] = PackAndInstallCRX(data_dir_.AppendASCII("app1"), INSTALL_NEW); | 5840 apps[0] = PackAndInstallCRX(data_dir_.AppendASCII("app1"), INSTALL_NEW); |
5839 apps[1] = PackAndInstallCRX(data_dir_.AppendASCII("app2"), INSTALL_NEW); | 5841 apps[1] = PackAndInstallCRX(data_dir_.AppendASCII("app2"), INSTALL_NEW); |
5840 apps[2] = PackAndInstallCRX(data_dir_.AppendASCII("app4"), INSTALL_NEW); | 5842 apps[2] = PackAndInstallCRX(data_dir_.AppendASCII("app4"), INSTALL_NEW); |
5841 for (size_t i = 0; i < kAppCount; ++i) { | 5843 for (size_t i = 0; i < kAppCount; ++i) { |
5842 ASSERT_TRUE(apps[i]); | 5844 ASSERT_TRUE(apps[i]); |
5843 ASSERT_TRUE(apps[i]->is_app()); | 5845 ASSERT_TRUE(apps[i]->is_app()); |
5844 } | 5846 } |
5845 | 5847 |
5846 TestSyncProcessorStub processor; | 5848 syncer::FakeSyncChangeProcessor processor; |
5847 extension_sync_service_->MergeDataAndStartSyncing(syncer::APPS, | 5849 extension_sync_service_->MergeDataAndStartSyncing( |
| 5850 syncer::APPS, |
5848 syncer::SyncDataList(), | 5851 syncer::SyncDataList(), |
5849 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5852 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5853 new syncer::FakeSyncChangeProcessor), |
5850 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5854 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5851 | 5855 |
5852 service_->OnExtensionMoved(apps[0]->id(), apps[1]->id(), apps[2]->id()); | 5856 service_->OnExtensionMoved(apps[0]->id(), apps[1]->id(), apps[2]->id()); |
5853 { | 5857 { |
5854 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( | 5858 syncer::SyncDataList list = extension_sync_service_->GetAllSyncData( |
5855 syncer::APPS); | 5859 syncer::APPS); |
5856 ASSERT_EQ(list.size(), 3U); | 5860 ASSERT_EQ(list.size(), 3U); |
5857 | 5861 |
5858 extensions::AppSyncData data[kAppCount]; | 5862 extensions::AppSyncData data[kAppCount]; |
5859 for (size_t i = 0; i < kAppCount; ++i) { | 5863 for (size_t i = 0; i < kAppCount; ++i) { |
(...skipping 17 matching lines...) Expand all Loading... |
5877 } | 5881 } |
5878 | 5882 |
5879 TEST_F(ExtensionServiceTest, GetSyncDataList) { | 5883 TEST_F(ExtensionServiceTest, GetSyncDataList) { |
5880 InitializeEmptyExtensionService(); | 5884 InitializeEmptyExtensionService(); |
5881 InitializeExtensionSyncService(); | 5885 InitializeExtensionSyncService(); |
5882 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 5886 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
5883 InstallCRX(data_dir_.AppendASCII("page_action.crx"), INSTALL_NEW); | 5887 InstallCRX(data_dir_.AppendASCII("page_action.crx"), INSTALL_NEW); |
5884 InstallCRX(data_dir_.AppendASCII("theme.crx"), INSTALL_NEW); | 5888 InstallCRX(data_dir_.AppendASCII("theme.crx"), INSTALL_NEW); |
5885 InstallCRX(data_dir_.AppendASCII("theme2.crx"), INSTALL_NEW); | 5889 InstallCRX(data_dir_.AppendASCII("theme2.crx"), INSTALL_NEW); |
5886 | 5890 |
5887 TestSyncProcessorStub processor; | 5891 syncer::FakeSyncChangeProcessor processor; |
5888 extension_sync_service_->MergeDataAndStartSyncing( | 5892 extension_sync_service_->MergeDataAndStartSyncing( |
5889 syncer::APPS, syncer::SyncDataList(), | 5893 syncer::APPS, |
5890 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5894 syncer::SyncDataList(), |
| 5895 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5896 new syncer::FakeSyncChangeProcessor), |
5891 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5897 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5892 extension_sync_service_->MergeDataAndStartSyncing( | 5898 extension_sync_service_->MergeDataAndStartSyncing( |
5893 syncer::EXTENSIONS, syncer::SyncDataList(), | 5899 syncer::EXTENSIONS, |
5894 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5900 syncer::SyncDataList(), |
| 5901 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5902 new syncer::FakeSyncChangeProcessor), |
5895 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5903 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5896 | 5904 |
5897 service_->DisableExtension(page_action, Extension::DISABLE_USER_ACTION); | 5905 service_->DisableExtension(page_action, Extension::DISABLE_USER_ACTION); |
5898 TerminateExtension(theme2_crx); | 5906 TerminateExtension(theme2_crx); |
5899 | 5907 |
5900 EXPECT_EQ(0u, extension_sync_service_->GetAllSyncData(syncer::APPS).size()); | 5908 EXPECT_EQ(0u, extension_sync_service_->GetAllSyncData(syncer::APPS).size()); |
5901 EXPECT_EQ(2u, extension_sync_service_-> | 5909 EXPECT_EQ(2u, extension_sync_service_-> |
5902 GetAllSyncData(syncer::EXTENSIONS).size()); | 5910 GetAllSyncData(syncer::EXTENSIONS).size()); |
5903 } | 5911 } |
5904 | 5912 |
5905 TEST_F(ExtensionServiceTest, ProcessSyncDataUninstall) { | 5913 TEST_F(ExtensionServiceTest, ProcessSyncDataUninstall) { |
5906 InitializeEmptyExtensionService(); | 5914 InitializeEmptyExtensionService(); |
5907 InitializeExtensionSyncService(); | 5915 InitializeExtensionSyncService(); |
5908 TestSyncProcessorStub processor; | 5916 syncer::FakeSyncChangeProcessor processor; |
5909 extension_sync_service_->MergeDataAndStartSyncing( | 5917 extension_sync_service_->MergeDataAndStartSyncing( |
5910 syncer::EXTENSIONS, syncer::SyncDataList(), | 5918 syncer::EXTENSIONS, |
5911 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 5919 syncer::SyncDataList(), |
| 5920 scoped_ptr<syncer::SyncChangeProcessor>( |
| 5921 new syncer::FakeSyncChangeProcessor), |
5912 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 5922 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
5913 | 5923 |
5914 sync_pb::EntitySpecifics specifics; | 5924 sync_pb::EntitySpecifics specifics; |
5915 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); | 5925 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); |
5916 ext_specifics->set_id(good_crx); | 5926 ext_specifics->set_id(good_crx); |
5917 ext_specifics->set_version("1.0"); | 5927 ext_specifics->set_version("1.0"); |
5918 syncer::SyncData sync_data = | 5928 syncer::SyncData sync_data = |
5919 syncer::SyncData::CreateLocalData(good_crx, "Name", specifics); | 5929 syncer::SyncData::CreateLocalData(good_crx, "Name", specifics); |
5920 syncer::SyncChange sync_change(FROM_HERE, | 5930 syncer::SyncChange sync_change(FROM_HERE, |
5921 syncer::SyncChange::ACTION_DELETE, | 5931 syncer::SyncChange::ACTION_DELETE, |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5986 // Should again do nothing. | 5996 // Should again do nothing. |
5987 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 5997 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
5988 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); | 5998 EXPECT_TRUE(service_->GetExtensionById(good_crx, false)); |
5989 } | 5999 } |
5990 } | 6000 } |
5991 | 6001 |
5992 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { | 6002 TEST_F(ExtensionServiceTest, ProcessSyncDataSettings) { |
5993 InitializeEmptyExtensionService(); | 6003 InitializeEmptyExtensionService(); |
5994 InitializeProcessManager(); | 6004 InitializeProcessManager(); |
5995 InitializeExtensionSyncService(); | 6005 InitializeExtensionSyncService(); |
5996 TestSyncProcessorStub processor; | 6006 syncer::FakeSyncChangeProcessor processor; |
5997 extension_sync_service_->MergeDataAndStartSyncing( | 6007 extension_sync_service_->MergeDataAndStartSyncing( |
5998 syncer::EXTENSIONS, syncer::SyncDataList(), | 6008 syncer::EXTENSIONS, |
5999 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 6009 syncer::SyncDataList(), |
| 6010 scoped_ptr<syncer::SyncChangeProcessor>( |
| 6011 new syncer::FakeSyncChangeProcessor), |
6000 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 6012 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
6001 | 6013 |
6002 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 6014 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
6003 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 6015 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
6004 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); | 6016 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); |
6005 | 6017 |
6006 sync_pb::EntitySpecifics specifics; | 6018 sync_pb::EntitySpecifics specifics; |
6007 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); | 6019 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); |
6008 ext_specifics->set_id(good_crx); | 6020 ext_specifics->set_id(good_crx); |
6009 ext_specifics->set_version( | 6021 ext_specifics->set_version( |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6053 EXPECT_FALSE(service_->IsExtensionEnabled(good_crx)); | 6065 EXPECT_FALSE(service_->IsExtensionEnabled(good_crx)); |
6054 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); | 6066 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); |
6055 } | 6067 } |
6056 | 6068 |
6057 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); | 6069 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); |
6058 } | 6070 } |
6059 | 6071 |
6060 TEST_F(ExtensionServiceTest, ProcessSyncDataTerminatedExtension) { | 6072 TEST_F(ExtensionServiceTest, ProcessSyncDataTerminatedExtension) { |
6061 InitializeExtensionServiceWithUpdater(); | 6073 InitializeExtensionServiceWithUpdater(); |
6062 InitializeExtensionSyncService(); | 6074 InitializeExtensionSyncService(); |
6063 TestSyncProcessorStub processor; | 6075 syncer::FakeSyncChangeProcessor processor; |
6064 extension_sync_service_->MergeDataAndStartSyncing( | 6076 extension_sync_service_->MergeDataAndStartSyncing( |
6065 syncer::EXTENSIONS, syncer::SyncDataList(), | 6077 syncer::EXTENSIONS, |
6066 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 6078 syncer::SyncDataList(), |
| 6079 scoped_ptr<syncer::SyncChangeProcessor>( |
| 6080 new syncer::FakeSyncChangeProcessor), |
6067 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 6081 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
6068 | 6082 |
6069 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 6083 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
6070 TerminateExtension(good_crx); | 6084 TerminateExtension(good_crx); |
6071 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 6085 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
6072 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); | 6086 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); |
6073 | 6087 |
6074 sync_pb::EntitySpecifics specifics; | 6088 sync_pb::EntitySpecifics specifics; |
6075 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); | 6089 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); |
6076 ext_specifics->set_id(good_crx); | 6090 ext_specifics->set_id(good_crx); |
(...skipping 12 matching lines...) Expand all Loading... |
6089 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 6103 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
6090 EXPECT_FALSE(service_->IsExtensionEnabled(good_crx)); | 6104 EXPECT_FALSE(service_->IsExtensionEnabled(good_crx)); |
6091 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); | 6105 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); |
6092 | 6106 |
6093 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); | 6107 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); |
6094 } | 6108 } |
6095 | 6109 |
6096 TEST_F(ExtensionServiceTest, ProcessSyncDataVersionCheck) { | 6110 TEST_F(ExtensionServiceTest, ProcessSyncDataVersionCheck) { |
6097 InitializeExtensionServiceWithUpdater(); | 6111 InitializeExtensionServiceWithUpdater(); |
6098 InitializeExtensionSyncService(); | 6112 InitializeExtensionSyncService(); |
6099 TestSyncProcessorStub processor; | 6113 syncer::FakeSyncChangeProcessor processor; |
6100 extension_sync_service_->MergeDataAndStartSyncing( | 6114 extension_sync_service_->MergeDataAndStartSyncing( |
6101 syncer::EXTENSIONS, syncer::SyncDataList(), | 6115 syncer::EXTENSIONS, |
6102 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 6116 syncer::SyncDataList(), |
| 6117 scoped_ptr<syncer::SyncChangeProcessor>( |
| 6118 new syncer::FakeSyncChangeProcessor), |
6103 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 6119 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
6104 | 6120 |
6105 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); | 6121 InstallCRX(data_dir_.AppendASCII("good.crx"), INSTALL_NEW); |
6106 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); | 6122 EXPECT_TRUE(service_->IsExtensionEnabled(good_crx)); |
6107 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); | 6123 EXPECT_FALSE(extensions::util::IsIncognitoEnabled(good_crx, profile_.get())); |
6108 | 6124 |
6109 sync_pb::EntitySpecifics specifics; | 6125 sync_pb::EntitySpecifics specifics; |
6110 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); | 6126 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); |
6111 ext_specifics->set_id(good_crx); | 6127 ext_specifics->set_id(good_crx); |
6112 ext_specifics->set_enabled(true); | 6128 ext_specifics->set_enabled(true); |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6157 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); | 6173 extension_sync_service_->ProcessSyncChanges(FROM_HERE, list); |
6158 EXPECT_TRUE(service_->updater()->WillCheckSoon()); | 6174 EXPECT_TRUE(service_->updater()->WillCheckSoon()); |
6159 } | 6175 } |
6160 | 6176 |
6161 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); | 6177 EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(good_crx)); |
6162 } | 6178 } |
6163 | 6179 |
6164 TEST_F(ExtensionServiceTest, ProcessSyncDataNotInstalled) { | 6180 TEST_F(ExtensionServiceTest, ProcessSyncDataNotInstalled) { |
6165 InitializeExtensionServiceWithUpdater(); | 6181 InitializeExtensionServiceWithUpdater(); |
6166 InitializeExtensionSyncService(); | 6182 InitializeExtensionSyncService(); |
6167 TestSyncProcessorStub processor; | 6183 syncer::FakeSyncChangeProcessor processor; |
6168 extension_sync_service_->MergeDataAndStartSyncing( | 6184 extension_sync_service_->MergeDataAndStartSyncing( |
6169 syncer::EXTENSIONS, syncer::SyncDataList(), | 6185 syncer::EXTENSIONS, |
6170 scoped_ptr<syncer::SyncChangeProcessor>(new TestSyncProcessorStub), | 6186 syncer::SyncDataList(), |
| 6187 scoped_ptr<syncer::SyncChangeProcessor>( |
| 6188 new syncer::FakeSyncChangeProcessor), |
6171 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); | 6189 scoped_ptr<syncer::SyncErrorFactory>(new syncer::SyncErrorFactoryMock())); |
6172 | 6190 |
6173 sync_pb::EntitySpecifics specifics; | 6191 sync_pb::EntitySpecifics specifics; |
6174 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); | 6192 sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension(); |
6175 ext_specifics->set_id(good_crx); | 6193 ext_specifics->set_id(good_crx); |
6176 ext_specifics->set_enabled(false); | 6194 ext_specifics->set_enabled(false); |
6177 ext_specifics->set_incognito_enabled(true); | 6195 ext_specifics->set_incognito_enabled(true); |
6178 ext_specifics->set_update_url("http://www.google.com/"); | 6196 ext_specifics->set_update_url("http://www.google.com/"); |
6179 ext_specifics->set_version("1.2.3.4"); | 6197 ext_specifics->set_version("1.2.3.4"); |
6180 syncer::SyncData sync_data = | 6198 syncer::SyncData sync_data = |
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6954 // ReconcileKnownDisabled(). | 6972 // ReconcileKnownDisabled(). |
6955 service_->EnableExtension(good2); | 6973 service_->EnableExtension(good2); |
6956 service_->ReconcileKnownDisabled(); | 6974 service_->ReconcileKnownDisabled(); |
6957 expected_extensions.insert(good2); | 6975 expected_extensions.insert(good2); |
6958 expected_disabled_extensions.erase(good2); | 6976 expected_disabled_extensions.erase(good2); |
6959 | 6977 |
6960 EXPECT_EQ(expected_extensions, registry_->enabled_extensions().GetIDs()); | 6978 EXPECT_EQ(expected_extensions, registry_->enabled_extensions().GetIDs()); |
6961 EXPECT_EQ(expected_disabled_extensions, | 6979 EXPECT_EQ(expected_disabled_extensions, |
6962 registry_->disabled_extensions().GetIDs()); | 6980 registry_->disabled_extensions().GetIDs()); |
6963 } | 6981 } |
OLD | NEW |