From 3e59bacae6bff857dfb5e3d3e8359dbde60ccb04 Mon Sep 17 00:00:00 2001 From: "viettrungluu@chromium.org" Date: Thu, 8 Apr 2010 16:16:55 +0000 Subject: Revert 43950 - Revert 43931 [GTTF] Clean up browser tests: [original revert broke compile; will disable tests in another CL instead] use more ui_test_utils functions to simplify the code expose more consistent and powerful utilities in ui_test_utils minor style improvements move some tests from DISABLED to FLAKY so we don't lose coverage remove redundant timeouts check more return values TEST=browser_tests BUG=none Review URL: http://codereview.chromium.org/1571002 TBR=phajdan.jr@chromium.org Review URL: http://codereview.chromium.org/1520026 TBR=viettrungluu@chromium.org, phajdan.jr@chromium.org Review URL: http://codereview.chromium.org/1518020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43951 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/download/save_page_browsertest.cc | 52 ++++++------------------ 1 file changed, 13 insertions(+), 39 deletions(-) (limited to 'chrome/browser/download') diff --git a/chrome/browser/download/save_page_browsertest.cc b/chrome/browser/download/save_page_browsertest.cc index 70b1822..99648b4 100644 --- a/chrome/browser/download/save_page_browsertest.cc +++ b/chrome/browser/download/save_page_browsertest.cc @@ -16,6 +16,8 @@ #include "chrome/test/ui_test_utils.h" #include "testing/gtest/include/gtest/gtest.h" +namespace { + static const FilePath::CharType* kTestDir = FILE_PATH_LITERAL("save_page"); static const char* kAppendedExtension = @@ -25,37 +27,6 @@ static const char* kAppendedExtension = ".html"; #endif -namespace { - -class SavePageFinishedObserver : public NotificationObserver { - public: - SavePageFinishedObserver() { - registrar_.Add(this, NotificationType::SAVE_PACKAGE_SUCCESSFULLY_FINISHED, - NotificationService::AllSources()); - ui_test_utils::RunMessageLoop(); - } - - GURL page_url() const { return page_url_; } - - virtual void Observe(NotificationType type, - const NotificationSource& source, - const NotificationDetails& details) { - if (type == NotificationType::SAVE_PACKAGE_SUCCESSFULLY_FINISHED) { - page_url_ = *Details(details).ptr(); - MessageLoopForUI::current()->Quit(); - } else { - NOTREACHED(); - } - } - - private: - NotificationRegistrar registrar_; - - GURL page_url_; - - DISALLOW_COPY_AND_ASSIGN(SavePageFinishedObserver); -}; - class SavePageBrowserTest : public InProcessBrowserTest { protected: void SetUp() { @@ -64,6 +35,14 @@ class SavePageBrowserTest : public InProcessBrowserTest { InProcessBrowserTest::SetUp(); } + GURL WaitForSavePackageToFinish() { + ui_test_utils::TestNotificationObserver observer; + ui_test_utils::RegisterAndWait(&observer, + NotificationType::SAVE_PACKAGE_SUCCESSFULLY_FINISHED, + NotificationService::AllSources()); + return *Details(observer.details()).ptr(); + } + // Path to directory containing test data. FilePath test_dir_; @@ -85,9 +64,7 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, SaveHTMLOnly) { ASSERT_TRUE(current_tab->SavePage(full_file_name, dir, SavePackage::SAVE_AS_ONLY_HTML)); - SavePageFinishedObserver observer; - - EXPECT_EQ(url, observer.page_url()); + EXPECT_EQ(url, WaitForSavePackageToFinish()); if (browser()->SupportsWindowFeature(Browser::FEATURE_DOWNLOADSHELF)) EXPECT_TRUE(browser()->window()->IsDownloadShelfVisible()); @@ -142,9 +119,7 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, SaveCompleteHTML) { ASSERT_TRUE(current_tab->SavePage(full_file_name, dir, SavePackage::SAVE_AS_COMPLETE_HTML)); - SavePageFinishedObserver observer; - - EXPECT_EQ(url, observer.page_url()); + EXPECT_EQ(url, WaitForSavePackageToFinish()); if (browser()->SupportsWindowFeature(Browser::FEATURE_DOWNLOADSHELF)) EXPECT_TRUE(browser()->window()->IsDownloadShelfVisible()); @@ -185,9 +160,8 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, FileNameFromPageTitle) { ASSERT_TRUE(current_tab->SavePage(full_file_name, dir, SavePackage::SAVE_AS_COMPLETE_HTML)); - SavePageFinishedObserver observer; - EXPECT_EQ(url, observer.page_url()); + EXPECT_EQ(url, WaitForSavePackageToFinish()); if (browser()->SupportsWindowFeature(Browser::FEATURE_DOWNLOADSHELF)) EXPECT_TRUE(browser()->window()->IsDownloadShelfVisible()); -- cgit v1.1