diff options
author | gbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-19 00:40:00 +0000 |
---|---|---|
committer | gbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-19 00:40:00 +0000 |
commit | 160f17f10e3675c8fa1215f039bd16a3ff3da77f (patch) | |
tree | 0f0c4b1df629064f1a21c4ea04713fd74a7b8e51 /chrome/browser/extensions | |
parent | 28f5649780a53eb29f76565fe64a726a4123ac77 (diff) | |
download | chromium_src-160f17f10e3675c8fa1215f039bd16a3ff3da77f.zip chromium_src-160f17f10e3675c8fa1215f039bd16a3ff3da77f.tar.gz chromium_src-160f17f10e3675c8fa1215f039bd16a3ff3da77f.tar.bz2 |
Revert 105033 Revert 105015 - Eliminate WaitForNavigation.
Original review URL: http://codereview.chromium.org/8232010
R=phajdan.jr@chromium.org
BUG=None
TEST=browser_tests,interactive_ui_tests
Review URL: http://codereview.chromium.org/8242014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106187 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r-- | chrome/browser/extensions/app_process_apitest.cc | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/chrome/browser/extensions/app_process_apitest.cc b/chrome/browser/extensions/app_process_apitest.cc index 06d80f2..33f8fcc9 100644 --- a/chrome/browser/extensions/app_process_apitest.cc +++ b/chrome/browser/extensions/app_process_apitest.cc @@ -387,8 +387,15 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenAppFromIframe) { TabContents* newtab = last_active_browser->GetSelectedTabContents(); EXPECT_TRUE(newtab); if (!newtab->controller().GetLastCommittedEntry() || - newtab->controller().GetLastCommittedEntry()->url() != app_url) - ui_test_utils::WaitForNavigation(&newtab->controller()); + newtab->controller().GetLastCommittedEntry()->url() != app_url) { + // TODO(gbillock): This still looks racy. Need to make a custom + // observer to intercept new window creation and then look for + // NAV_ENTRY_COMMITTED on the new tab there. + ui_test_utils::WindowedNotificationObserver observer( + content::NOTIFICATION_NAV_ENTRY_COMMITTED, + Source<NavigationController>(&(newtab->controller()))); + observer.Wait(); + } // Popup window should be in the app's process. EXPECT_TRUE(extension_process_manager->IsExtensionProcess( @@ -419,6 +426,9 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenWebPopupFromWebIframe) { const Extension* app = LoadExtension(test_data_dir_.AppendASCII("app_process")); ASSERT_TRUE(app); + ui_test_utils::WindowedNotificationObserver observer( + content::NOTIFICATION_LOAD_STOP, + NotificationService::AllSources()); ui_test_utils::NavigateToURLWithDisposition( browser(), base_url.Resolve("path1/container.html"), @@ -445,9 +455,7 @@ IN_PROC_BROWSER_TEST_F(AppApiTest, OpenWebPopupFromWebIframe) { TabContents* newtab = last_active_browser->GetSelectedTabContents(); EXPECT_TRUE(newtab); GURL non_app_url = base_url.Resolve("path3/empty.html"); - if (!newtab->controller().GetLastCommittedEntry() || - newtab->controller().GetLastCommittedEntry()->url() != non_app_url) - ui_test_utils::WaitForNavigation(&newtab->controller()); + observer.Wait(); // Popup window should be in the app's process. RenderProcessHost* popup_process = |