| Index: chrome/browser/extensions/app_process_apitest.cc
|
| diff --git a/chrome/browser/extensions/app_process_apitest.cc b/chrome/browser/extensions/app_process_apitest.cc
|
| index 2e37fd3205eaed838b9fdafd50e4078f56f4ee2f..c45dfd38c18b06a11c148c7323315b3618983d23 100644
|
| --- a/chrome/browser/extensions/app_process_apitest.cc
|
| +++ b/chrome/browser/extensions/app_process_apitest.cc
|
| @@ -88,6 +88,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, MAYBE_AppProcess) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kDisablePopupBlocking);
|
|
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| +
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -102,18 +105,18 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, MAYBE_AppProcess) {
|
| ui_test_utils::NavigateToURLWithDisposition(
|
| browser(), base_url.Resolve("path1/empty.html"), NEW_FOREGROUND_TAB,
|
| ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
|
| - EXPECT_TRUE(browser()->GetTabContentsAt(1)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(1)->render_view_host()->process()->id()));
|
| EXPECT_FALSE(browser()->GetTabContentsAt(1)->web_ui());
|
| browser()->NewTab();
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path2/empty.html"));
|
| - EXPECT_TRUE(browser()->GetTabContentsAt(2)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(2)->render_view_host()->process()->id()));
|
| EXPECT_FALSE(browser()->GetTabContentsAt(2)->web_ui());
|
| browser()->NewTab();
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path3/empty.html"));
|
| - EXPECT_FALSE(browser()->GetTabContentsAt(3)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_FALSE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(3)->render_view_host()->process()->id()));
|
| EXPECT_FALSE(browser()->GetTabContentsAt(3)->web_ui());
|
|
|
| // We should have opened 3 new extension tabs. Including the original blank
|
| @@ -176,6 +179,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, MAYBE_AppProcessInstances) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kDisablePopupBlocking);
|
|
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| +
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -191,13 +197,13 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, MAYBE_AppProcessInstances) {
|
| ui_test_utils::NavigateToURLWithDisposition(
|
| browser(), base_url.Resolve("path1/empty.html"), NEW_FOREGROUND_TAB,
|
| ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION);
|
| - EXPECT_TRUE(browser()->GetTabContentsAt(1)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(1)->render_view_host()->process()->id()));
|
| EXPECT_FALSE(browser()->GetTabContentsAt(1)->web_ui());
|
| browser()->NewTab();
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path2/empty.html"));
|
| - EXPECT_TRUE(browser()->GetTabContentsAt(2)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(2)->render_view_host()->process()->id()));
|
| EXPECT_FALSE(browser()->GetTabContentsAt(2)->web_ui());
|
|
|
| // We should have opened 2 new extension tabs. Including the original blank
|
| @@ -259,6 +265,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadIntoAppProcess) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kDisablePopupBlocking);
|
|
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| +
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -269,19 +278,22 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadIntoAppProcess) {
|
| // Load an app URL before loading the app.
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path1/empty.html"));
|
| TabContents* contents = browser()->GetTabContentsAt(0);
|
| - EXPECT_FALSE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_FALSE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
|
|
| // Load app and reload page.
|
| const Extension* app =
|
| LoadExtension(test_data_dir_.AppendASCII("app_process"));
|
| ASSERT_TRUE(app);
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path1/empty.html"));
|
| - EXPECT_TRUE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
|
|
| // Disable app and reload page.
|
| DisableExtension(app->id());
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path1/empty.html"));
|
| - EXPECT_FALSE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_FALSE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
|
|
| // Enable app and reload via JavaScript.
|
| EnableExtension(app->id());
|
| @@ -290,7 +302,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadIntoAppProcess) {
|
| ASSERT_TRUE(ui_test_utils::ExecuteJavaScript(contents->render_view_host(),
|
| L"", L"location.reload();"));
|
| observer.Wait();
|
| - EXPECT_TRUE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
|
|
| // Disable app and reload via JavaScript.
|
| DisableExtension(app->id());
|
| @@ -299,7 +312,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadIntoAppProcess) {
|
| ASSERT_TRUE(ui_test_utils::ExecuteJavaScript(contents->render_view_host(),
|
| L"", L"location.reload();"));
|
| observer2.Wait();
|
| - EXPECT_FALSE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_FALSE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
| }
|
|
|
|
|
| @@ -312,6 +326,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenAppFromIframe) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kDisablePopupBlocking);
|
|
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| +
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -327,8 +344,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenAppFromIframe) {
|
| CURRENT_TAB,
|
| ui_test_utils::BROWSER_TEST_WAIT_FOR_NAVIGATION |
|
| ui_test_utils::BROWSER_TEST_WAIT_FOR_BROWSER);
|
| - EXPECT_FALSE(browser()->GetTabContentsAt(0)->render_view_host()->process()->
|
| - is_extension_process());
|
| + EXPECT_FALSE(extension_process_manager->IsExtensionProcess(
|
| + browser()->GetTabContentsAt(0)->render_view_host()->process()->id()));
|
|
|
| // Wait for popup window to appear.
|
| GURL app_url = base_url.Resolve("path1/empty.html");
|
| @@ -342,8 +359,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenAppFromIframe) {
|
| ui_test_utils::WaitForNavigation(&newtab->controller());
|
|
|
| // Popup window should be in the app's process.
|
| - EXPECT_TRUE(last_active_browser->GetTabContentsAt(0)->render_view_host()->
|
| - process()->is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + last_active_browser->GetTabContentsAt(0)->render_view_host()->process()->
|
| + id()));
|
| }
|
|
|
| // Tests that if we have an app process (path1/container.html) with a non-app
|
| @@ -357,6 +375,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenWebPopupFromWebIframe) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kDisablePopupBlocking);
|
|
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| +
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -374,7 +395,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenWebPopupFromWebIframe) {
|
| ui_test_utils::BROWSER_TEST_WAIT_FOR_BROWSER);
|
| RenderProcessHost* process =
|
| browser()->GetTabContentsAt(0)->render_view_host()->process();
|
| - EXPECT_TRUE(process->is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + process->id()));
|
|
|
| // Wait for popup window to appear. The new Browser may not have been
|
| // added with SetLastActive, in which case we need to show it first.
|
| @@ -402,6 +424,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenWebPopupFromWebIframe) {
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadAppAfterCrash) {
|
| + ExtensionProcessManager* extension_process_manager =
|
| + browser()->profile()->GetExtensionProcessManager();
|
| host_resolver()->AddRule("*", "127.0.0.1");
|
| ASSERT_TRUE(test_server()->Start());
|
|
|
| @@ -412,7 +436,8 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, ReloadAppAfterCrash) {
|
| // Load the app, chrome.app.isInstalled should be true.
|
| ui_test_utils::NavigateToURL(browser(), base_url.Resolve("path1/empty.html"));
|
| TabContents* contents = browser()->GetTabContentsAt(0);
|
| - EXPECT_TRUE(contents->render_view_host()->process()->is_extension_process());
|
| + EXPECT_TRUE(extension_process_manager->IsExtensionProcess(
|
| + contents->render_view_host()->process()->id()));
|
| bool is_installed = false;
|
| ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractBool(
|
| contents->render_view_host(), L"",
|
|
|