From 5198ffa4e9bf8019d55e7f2f88bc95b33eab193c Mon Sep 17 00:00:00 2001 From: "aa@chromium.org" Date: Fri, 13 Aug 2010 18:59:05 +0000 Subject: Merge 55656 - Allow chrome:// pages to load extension resources. Also, lock down access from chrome-extension:// pages to the origin of the resource being requested. BUG=51702 Review URL: http://codereview.chromium.org/3121003 TBR=aa@chromium.org Review URL: http://codereview.chromium.org/3186001 git-svn-id: svn://svn.chromium.org/chrome/branches/472/src@56061 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/extensions/extension_browsertests_misc.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'chrome/browser/extensions/extension_browsertests_misc.cc') diff --git a/chrome/browser/extensions/extension_browsertests_misc.cc b/chrome/browser/extensions/extension_browsertests_misc.cc index 457b224..b6c582c 100644 --- a/chrome/browser/extensions/extension_browsertests_misc.cc +++ b/chrome/browser/extensions/extension_browsertests_misc.cc @@ -182,6 +182,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, OriginPrivileges) { ASSERT_TRUE(LoadExtension(test_data_dir_ .AppendASCII("origin_privileges").AppendASCII("extension"))); + // A web host that has permission. ui_test_utils::NavigateToURL(browser(), GURL("http://a.com:1337/files/extensions/origin_privileges/index.html")); std::string result; @@ -191,6 +192,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, OriginPrivileges) { &result); EXPECT_EQ(result, "Loaded"); + // A web host that does not have permission. ui_test_utils::NavigateToURL(browser(), GURL("http://b.com:1337/files/extensions/origin_privileges/index.html")); ui_test_utils::ExecuteJavaScriptAndExtractString( @@ -198,6 +200,19 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, OriginPrivileges) { L"window.domAutomationController.send(document.title)", &result); EXPECT_EQ(result, "Image failed to load"); + + // A different extension. Extensions should always be able to load each + // other's resources. + ASSERT_TRUE(LoadExtension(test_data_dir_ + .AppendASCII("origin_privileges").AppendASCII("extension2"))); + ui_test_utils::NavigateToURL( + browser(), + GURL("chrome-extension://pbkkcbgdkliohhfaeefcijaghglkahja/index.html")); + ui_test_utils::ExecuteJavaScriptAndExtractString( + browser()->GetSelectedTabContents()->render_view_host(), L"", + L"window.domAutomationController.send(document.title)", + &result); + EXPECT_EQ(result, "Loaded"); } // Tests that we can load extension pages into the tab area and they can call -- cgit v1.1