| Index: chrome/browser/download/save_page_browsertest.cc
|
| diff --git a/chrome/browser/download/save_page_browsertest.cc b/chrome/browser/download/save_page_browsertest.cc
|
| index 88859b3ee1d40d7322d09397d98f26a8191024cb..76c098f5b44bf06303b5d434ff0cd75a5f77c2b3 100644
|
| --- a/chrome/browser/download/save_page_browsertest.cc
|
| +++ b/chrome/browser/download/save_page_browsertest.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "base/file_path.h"
|
| #include "base/scoped_temp_dir.h"
|
| +#include "chrome/app/chrome_dll_resource.h"
|
| #include "chrome/browser/browser.h"
|
| #include "chrome/browser/browser_window.h"
|
| #include "chrome/browser/net/url_request_mock_http_job.h"
|
| @@ -16,6 +17,13 @@
|
|
|
| static const FilePath::CharType* kTestDir = FILE_PATH_LITERAL("save_page");
|
|
|
| +static const char* kAppendedExtension =
|
| +#if defined(OS_WIN)
|
| + ".htm";
|
| +#else
|
| + ".html";
|
| +#endif
|
| +
|
| namespace {
|
|
|
| class SavePageFinishedObserver : public NotificationObserver {
|
| @@ -73,8 +81,9 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, SaveHTMLOnly) {
|
|
|
| FilePath full_file_name = save_dir_.path().Append(file_name);
|
| FilePath dir = save_dir_.path().AppendASCII("a_files");
|
| - current_tab->SavePage(full_file_name.ToWStringHack(), dir.ToWStringHack(),
|
| - SavePackage::SAVE_AS_ONLY_HTML);
|
| + ASSERT_TRUE(current_tab->SavePage(full_file_name.ToWStringHack(),
|
| + dir.ToWStringHack(),
|
| + SavePackage::SAVE_AS_ONLY_HTML));
|
|
|
| SavePageFinishedObserver observer;
|
|
|
| @@ -98,8 +107,9 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, SaveCompleteHTML) {
|
|
|
| FilePath full_file_name = save_dir_.path().Append(file_name);
|
| FilePath dir = save_dir_.path().AppendASCII("b_files");
|
| - current_tab->SavePage(full_file_name.ToWStringHack(), dir.ToWStringHack(),
|
| - SavePackage::SAVE_AS_COMPLETE_HTML);
|
| + ASSERT_TRUE(current_tab->SavePage(full_file_name.ToWStringHack(),
|
| + dir.ToWStringHack(),
|
| + SavePackage::SAVE_AS_COMPLETE_HTML));
|
|
|
| SavePageFinishedObserver observer;
|
|
|
| @@ -107,7 +117,50 @@ IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, SaveCompleteHTML) {
|
| EXPECT_TRUE(browser()->window()->IsDownloadShelfVisible());
|
| EXPECT_TRUE(file_util::PathExists(full_file_name));
|
| EXPECT_TRUE(file_util::PathExists(dir));
|
| - // TODO(phajdan.jr): Check saved html file's contents (http://crbug.com/3791).
|
| + EXPECT_TRUE(file_util::ContentsEqual(
|
| + test_dir_.Append(FilePath(kTestDir)).AppendASCII("b.saved1.htm"),
|
| + full_file_name));
|
| + EXPECT_TRUE(file_util::ContentsEqual(
|
| + test_dir_.Append(FilePath(kTestDir)).AppendASCII("1.png"),
|
| + dir.AppendASCII("1.png")));
|
| + EXPECT_TRUE(file_util::ContentsEqual(
|
| + test_dir_.Append(FilePath(kTestDir)).AppendASCII("1.css"),
|
| + dir.AppendASCII("1.css")));
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, NoSave) {
|
| + ui_test_utils::NavigateToURL(browser(), GURL("about:blank"));
|
| + ASSERT_TRUE(browser()->command_updater()->SupportsCommand(IDC_SAVE_PAGE));
|
| + EXPECT_FALSE(browser()->command_updater()->IsCommandEnabled(IDC_SAVE_PAGE));
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(SavePageBrowserTest, FileNameFromPageTitle) {
|
| + FilePath file_name(FILE_PATH_LITERAL("b.htm"));
|
| +
|
| + GURL url = URLRequestMockHTTPJob::GetMockUrl(
|
| + FilePath(kTestDir).Append(file_name).ToWStringHack());
|
| + ui_test_utils::NavigateToURL(browser(), url);
|
| +
|
| + FilePath full_file_name = save_dir_.path().AppendASCII(
|
| + std::string("Test page for saving page feature") + kAppendedExtension);
|
| + FilePath dir = save_dir_.path().AppendASCII(
|
| + "Test page for saving page feature_files");
|
| +
|
| + TabContents* current_tab = browser()->GetSelectedTabContents();
|
| + ASSERT_TRUE(current_tab);
|
| +
|
| + ASSERT_TRUE(current_tab->SavePage(full_file_name.ToWStringHack(),
|
| + dir.ToWStringHack(),
|
| + SavePackage::SAVE_AS_COMPLETE_HTML));
|
| + SavePageFinishedObserver observer;
|
| +
|
| + EXPECT_EQ(url, observer.page_url());
|
| + EXPECT_TRUE(browser()->window()->IsDownloadShelfVisible());
|
| + EXPECT_TRUE(file_util::PathExists(full_file_name));
|
| + EXPECT_TRUE(file_util::PathExists(dir));
|
| + EXPECT_TRUE(file_util::ContentsEqual(
|
| + test_dir_.Append(FilePath(kTestDir)).AppendASCII("b.saved2.htm"),
|
| + full_file_name));
|
| EXPECT_TRUE(file_util::ContentsEqual(
|
| test_dir_.Append(FilePath(kTestDir)).AppendASCII("1.png"),
|
| dir.AppendASCII("1.png")));
|
|
|