summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions
diff options
context:
space:
mode:
authorgbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-19 00:40:00 +0000
committergbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-19 00:40:00 +0000
commit160f17f10e3675c8fa1215f039bd16a3ff3da77f (patch)
tree0f0c4b1df629064f1a21c4ea04713fd74a7b8e51 /chrome/browser/extensions
parent28f5649780a53eb29f76565fe64a726a4123ac77 (diff)
downloadchromium_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.cc18
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 =