Index: chrome/common/extensions/extension_unittest.cc |
diff --git a/chrome/common/extensions/extension_unittest.cc b/chrome/common/extensions/extension_unittest.cc |
index e7fa0d6c24557d7a75d9c6f479b5ef3bb9de5002..6c12d191b435beb8a4babcb005f07a14675551c5 100644 |
--- a/chrome/common/extensions/extension_unittest.cc |
+++ b/chrome/common/extensions/extension_unittest.cc |
@@ -96,10 +96,10 @@ static scoped_refptr<Extension> LoadManifestStrict( |
return LoadManifest(dir, test_file, Extension::NO_FLAGS); |
} |
-static ExtensionAction* LoadAction(const std::string& manifest) { |
+static scoped_ptr<ExtensionAction> LoadAction(const std::string& manifest) { |
scoped_refptr<Extension> extension = LoadManifest("page_action", |
manifest); |
- return new ExtensionAction(*(extension->page_action())); |
+ return extension->page_action()->CopyForTest(); |
} |
static void LoadActionAndExpectError(const std::string& manifest, |
@@ -204,7 +204,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
scoped_ptr<ExtensionAction> action; |
// First try with an empty dictionary. |
- action.reset(LoadAction("page_action_empty.json")); |
+ action = LoadAction("page_action_empty.json"); |
ASSERT_TRUE(action != NULL); |
// Now setup some values to use in the action. |
@@ -213,7 +213,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
std::string img1("image1.png"); |
std::string img2("image2.png"); |
- action.reset(LoadAction("page_action.json")); |
+ action = LoadAction("page_action.json"); |
ASSERT_TRUE(NULL != action.get()); |
ASSERT_EQ(id, action->id()); |
@@ -224,20 +224,20 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
ASSERT_EQ(img2, (*action->icon_paths())[1]); |
// Same test with explicitly set type. |
- action.reset(LoadAction("page_action_type.json")); |
+ action = LoadAction("page_action_type.json"); |
ASSERT_TRUE(NULL != action.get()); |
// Try an action without id key. |
- action.reset(LoadAction("page_action_no_id.json")); |
+ action = LoadAction("page_action_no_id.json"); |
ASSERT_TRUE(NULL != action.get()); |
// Then try without the name key. It's optional, so no error. |
- action.reset(LoadAction("page_action_no_name.json")); |
+ action = LoadAction("page_action_no_name.json"); |
ASSERT_TRUE(NULL != action.get()); |
ASSERT_TRUE(action->GetTitle(1).empty()); |
// Then try without the icon paths key. |
- action.reset(LoadAction("page_action_no_icon.json")); |
+ action = LoadAction("page_action_no_icon.json"); |
ASSERT_TRUE(NULL != action.get()); |
// Now test that we can parse the new format for page actions. |
@@ -245,7 +245,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
const std::string kIcon("image1.png"); |
const std::string kPopupHtmlFile("a_popup.html"); |
- action.reset(LoadAction("page_action_new_format.json")); |
+ action = LoadAction("page_action_new_format.json"); |
ASSERT_TRUE(action.get()); |
ASSERT_EQ(kTitle, action->GetTitle(1)); |
ASSERT_EQ(0u, action->icon_paths()->size()); |
@@ -255,7 +255,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
errors::kInvalidPageActionDefaultTitle); |
// Invalid name should give an error only with no title. |
- action.reset(LoadAction("page_action_invalid_name.json")); |
+ action = LoadAction("page_action_invalid_name.json"); |
ASSERT_TRUE(NULL != action.get()); |
ASSERT_EQ(kTitle, action->GetTitle(1)); |
@@ -269,7 +269,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
// Only use "popup", expect success. |
scoped_refptr<Extension> extension = LoadManifest("page_action", |
"page_action_popup.json"); |
- action.reset(LoadAction("page_action_popup.json")); |
+ action = LoadAction("page_action_popup.json"); |
ASSERT_TRUE(NULL != action.get()); |
ASSERT_STREQ( |
extension->url().Resolve(kPopupHtmlFile).spec().c_str(), |
@@ -284,14 +284,14 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
// Use only "default_popup", expect success. |
extension = LoadManifest("page_action", "page_action_popup.json"); |
- action.reset(LoadAction("page_action_default_popup.json")); |
+ action = LoadAction("page_action_default_popup.json"); |
ASSERT_TRUE(NULL != action.get()); |
ASSERT_STREQ( |
extension->url().Resolve(kPopupHtmlFile).spec().c_str(), |
action->GetPopupUrl(ExtensionAction::kDefaultTabId).spec().c_str()); |
// Setting default_popup to "" is the same as having no popup. |
- action.reset(LoadAction("page_action_empty_default_popup.json")); |
+ action = LoadAction("page_action_empty_default_popup.json"); |
ASSERT_TRUE(NULL != action.get()); |
EXPECT_FALSE(action->HasPopup(ExtensionAction::kDefaultTabId)); |
ASSERT_STREQ( |
@@ -299,7 +299,7 @@ TEST(ExtensionTest, LoadPageActionHelper) { |
action->GetPopupUrl(ExtensionAction::kDefaultTabId).spec().c_str()); |
// Setting popup to "" is the same as having no popup. |
- action.reset(LoadAction("page_action_empty_popup.json")); |
+ action = LoadAction("page_action_empty_popup.json"); |
ASSERT_TRUE(NULL != action.get()); |
EXPECT_FALSE(action->HasPopup(ExtensionAction::kDefaultTabId)); |