| 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 <algorithm> | 5 #include <algorithm> |
| 6 #include <set> | 6 #include <set> |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/at_exit.h" | 9 #include "base/at_exit.h" |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 2742 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2753 base::FilePath path = data_dir().AppendASCII("good.crx"); | 2753 base::FilePath path = data_dir().AppendASCII("good.crx"); |
| 2754 | 2754 |
| 2755 const Extension* good = InstallCRX(path, INSTALL_NEW); | 2755 const Extension* good = InstallCRX(path, INSTALL_NEW); |
| 2756 ASSERT_EQ("1.0.0.0", good->VersionString()); | 2756 ASSERT_EQ("1.0.0.0", good->VersionString()); |
| 2757 ASSERT_EQ(good_crx, good->id()); | 2757 ASSERT_EQ(good_crx, good->id()); |
| 2758 | 2758 |
| 2759 // Disable it and allow it to run in incognito. These settings should carry | 2759 // Disable it and allow it to run in incognito. These settings should carry |
| 2760 // over to the updated version. | 2760 // over to the updated version. |
| 2761 service()->DisableExtension(good->id(), Extension::DISABLE_USER_ACTION); | 2761 service()->DisableExtension(good->id(), Extension::DISABLE_USER_ACTION); |
| 2762 extensions::util::SetIsIncognitoEnabled(good->id(), profile(), true); | 2762 extensions::util::SetIsIncognitoEnabled(good->id(), profile(), true); |
| 2763 ExtensionPrefs::Get(profile()) | |
| 2764 ->SetDidExtensionEscalatePermissions(good, true); | |
| 2765 | 2763 |
| 2766 path = data_dir().AppendASCII("good2.crx"); | 2764 path = data_dir().AppendASCII("good2.crx"); |
| 2767 UpdateExtension(good_crx, path, INSTALLED); | 2765 UpdateExtension(good_crx, path, INSTALLED); |
| 2768 ASSERT_EQ(1u, registry()->disabled_extensions().size()); | 2766 ASSERT_EQ(1u, registry()->disabled_extensions().size()); |
| 2769 const Extension* good2 = service()->GetExtensionById(good_crx, true); | 2767 const Extension* good2 = service()->GetExtensionById(good_crx, true); |
| 2770 ASSERT_EQ("1.0.0.1", good2->version()->GetString()); | 2768 ASSERT_EQ("1.0.0.1", good2->version()->GetString()); |
| 2771 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good2->id(), profile())); | 2769 EXPECT_TRUE(extensions::util::IsIncognitoEnabled(good2->id(), profile())); |
| 2772 EXPECT_TRUE(ExtensionPrefs::Get(profile()) | 2770 EXPECT_EQ(Extension::DISABLE_USER_ACTION, |
| 2773 ->DidExtensionEscalatePermissions(good2->id())); | 2771 ExtensionPrefs::Get(profile())->GetDisableReasons(good2->id())); |
| 2774 } | 2772 } |
| 2775 | 2773 |
| 2776 // Tests that updating preserves extension location. | 2774 // Tests that updating preserves extension location. |
| 2777 TEST_F(ExtensionServiceTest, UpdateExtensionPreservesLocation) { | 2775 TEST_F(ExtensionServiceTest, UpdateExtensionPreservesLocation) { |
| 2778 InitializeEmptyExtensionService(); | 2776 InitializeEmptyExtensionService(); |
| 2779 | 2777 |
| 2780 base::FilePath path = data_dir().AppendASCII("good.crx"); | 2778 base::FilePath path = data_dir().AppendASCII("good.crx"); |
| 2781 | 2779 |
| 2782 const Extension* good = | 2780 const Extension* good = |
| 2783 InstallCRXWithLocation(path, Manifest::EXTERNAL_PREF, INSTALL_NEW); | 2781 InstallCRXWithLocation(path, Manifest::EXTERNAL_PREF, INSTALL_NEW); |
| (...skipping 5282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8066 | 8064 |
| 8067 service()->Observe(chrome::NOTIFICATION_PROFILE_DESTRUCTION_STARTED, | 8065 service()->Observe(chrome::NOTIFICATION_PROFILE_DESTRUCTION_STARTED, |
| 8068 content::Source<Profile>(profile()), | 8066 content::Source<Profile>(profile()), |
| 8069 content::NotificationService::NoDetails()); | 8067 content::NotificationService::NoDetails()); |
| 8070 EXPECT_EQ(UnloadedExtensionInfo::REASON_PROFILE_SHUTDOWN, unloaded_reason_); | 8068 EXPECT_EQ(UnloadedExtensionInfo::REASON_PROFILE_SHUTDOWN, unloaded_reason_); |
| 8071 EXPECT_EQ(0u, registry()->enabled_extensions().size()); | 8069 EXPECT_EQ(0u, registry()->enabled_extensions().size()); |
| 8072 EXPECT_EQ(0u, registry()->disabled_extensions().size()); | 8070 EXPECT_EQ(0u, registry()->disabled_extensions().size()); |
| 8073 EXPECT_EQ(0u, registry()->terminated_extensions().size()); | 8071 EXPECT_EQ(0u, registry()->terminated_extensions().size()); |
| 8074 EXPECT_EQ(0u, registry()->blacklisted_extensions().size()); | 8072 EXPECT_EQ(0u, registry()->blacklisted_extensions().size()); |
| 8075 } | 8073 } |
| OLD | NEW |