OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <sstream> | 5 #include <sstream> |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/file_path.h" | 9 #include "base/file_path.h" |
10 #include "base/file_util.h" | 10 #include "base/file_util.h" |
(...skipping 23 matching lines...) Expand all Loading... |
34 #include "chrome/browser/extensions/extension_system.h" | 34 #include "chrome/browser/extensions/extension_system.h" |
35 #include "chrome/browser/history/download_row.h" | 35 #include "chrome/browser/history/download_row.h" |
36 #include "chrome/browser/history/history_service.h" | 36 #include "chrome/browser/history/history_service.h" |
37 #include "chrome/browser/history/history_service_factory.h" | 37 #include "chrome/browser/history/history_service_factory.h" |
38 #include "chrome/browser/net/url_request_mock_util.h" | 38 #include "chrome/browser/net/url_request_mock_util.h" |
39 #include "chrome/browser/prefs/pref_service.h" | 39 #include "chrome/browser/prefs/pref_service.h" |
40 #include "chrome/browser/profiles/profile.h" | 40 #include "chrome/browser/profiles/profile.h" |
41 #include "chrome/browser/tab_contents/render_view_context_menu.h" | 41 #include "chrome/browser/tab_contents/render_view_context_menu.h" |
42 #include "chrome/browser/ui/browser.h" | 42 #include "chrome/browser/ui/browser.h" |
43 #include "chrome/browser/ui/browser_commands.h" | 43 #include "chrome/browser/ui/browser_commands.h" |
44 #include "chrome/browser/ui/browser_list.h" | 44 #include "chrome/browser/ui/browser_finder.h" |
45 #include "chrome/browser/ui/browser_tabstrip.h" | 45 #include "chrome/browser/ui/browser_tabstrip.h" |
46 #include "chrome/browser/ui/browser_window.h" | 46 #include "chrome/browser/ui/browser_window.h" |
47 #include "chrome/browser/ui/chrome_pages.h" | 47 #include "chrome/browser/ui/chrome_pages.h" |
48 #include "chrome/browser/ui/host_desktop.h" | 48 #include "chrome/browser/ui/host_desktop.h" |
49 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 49 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
50 #include "chrome/common/chrome_notification_types.h" | 50 #include "chrome/common/chrome_notification_types.h" |
51 #include "chrome/common/chrome_paths.h" | 51 #include "chrome/common/chrome_paths.h" |
52 #include "chrome/common/extensions/feature_switch.h" | 52 #include "chrome/common/extensions/feature_switch.h" |
53 #include "chrome/common/pref_names.h" | 53 #include "chrome/common/pref_names.h" |
54 #include "chrome/common/url_constants.h" | 54 #include "chrome/common/url_constants.h" |
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
308 | 308 |
309 // Returning false indicates a failure of the setup, and should be asserted | 309 // Returning false indicates a failure of the setup, and should be asserted |
310 // in the caller. | 310 // in the caller. |
311 virtual bool InitialSetup() { | 311 virtual bool InitialSetup() { |
312 bool have_test_dir = PathService::Get(chrome::DIR_TEST_DATA, &test_dir_); | 312 bool have_test_dir = PathService::Get(chrome::DIR_TEST_DATA, &test_dir_); |
313 EXPECT_TRUE(have_test_dir); | 313 EXPECT_TRUE(have_test_dir); |
314 if (!have_test_dir) | 314 if (!have_test_dir) |
315 return false; | 315 return false; |
316 | 316 |
317 // Sanity check default values for window / tab count and shelf visibility. | 317 // Sanity check default values for window / tab count and shelf visibility. |
318 int window_count = BrowserList::size(); | 318 int window_count = chrome::GetTotalBrowserCount(); |
319 EXPECT_EQ(1, window_count); | 319 EXPECT_EQ(1, window_count); |
320 EXPECT_EQ(1, browser()->tab_strip_model()->count()); | 320 EXPECT_EQ(1, browser()->tab_strip_model()->count()); |
321 EXPECT_FALSE(browser()->window()->IsDownloadShelfVisible()); | 321 EXPECT_FALSE(browser()->window()->IsDownloadShelfVisible()); |
322 | 322 |
323 // Set up the temporary download folder. | 323 // Set up the temporary download folder. |
324 bool created_downloads_dir = CreateAndSetDownloadsDirectory(browser()); | 324 bool created_downloads_dir = CreateAndSetDownloadsDirectory(browser()); |
325 EXPECT_TRUE(created_downloads_dir); | 325 EXPECT_TRUE(created_downloads_dir); |
326 if (!created_downloads_dir) | 326 if (!created_downloads_dir) |
327 return false; | 327 return false; |
328 browser()->profile()->GetPrefs()->SetBoolean( | 328 browser()->profile()->GetPrefs()->SetBoolean( |
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
587 return true; | 587 return true; |
588 } | 588 } |
589 | 589 |
590 void GetDownloads(Browser* browser, std::vector<DownloadItem*>* downloads) { | 590 void GetDownloads(Browser* browser, std::vector<DownloadItem*>* downloads) { |
591 DCHECK(downloads); | 591 DCHECK(downloads); |
592 DownloadManager* manager = DownloadManagerForBrowser(browser); | 592 DownloadManager* manager = DownloadManagerForBrowser(browser); |
593 manager->GetAllDownloads(downloads); | 593 manager->GetAllDownloads(downloads); |
594 } | 594 } |
595 | 595 |
596 static void ExpectWindowCountAfterDownload(size_t expected) { | 596 static void ExpectWindowCountAfterDownload(size_t expected) { |
597 EXPECT_EQ(expected, BrowserList::size()); | 597 EXPECT_EQ(expected, chrome::GetTotalBrowserCount()); |
598 } | 598 } |
599 | 599 |
600 void EnableFileChooser(bool enable) { | 600 void EnableFileChooser(bool enable) { |
601 file_activity_observer_->EnableFileChooser(enable); | 601 file_activity_observer_->EnableFileChooser(enable); |
602 } | 602 } |
603 | 603 |
604 bool DidShowFileChooser() { | 604 bool DidShowFileChooser() { |
605 return file_activity_observer_->TestAndResetDidShowFileChooser(); | 605 return file_activity_observer_->TestAndResetDidShowFileChooser(); |
606 } | 606 } |
607 | 607 |
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1148 } | 1148 } |
1149 | 1149 |
1150 // Test that when downloading an item in Incognito mode, we don't crash when | 1150 // Test that when downloading an item in Incognito mode, we don't crash when |
1151 // closing the last Incognito window (http://crbug.com/13983). | 1151 // closing the last Incognito window (http://crbug.com/13983). |
1152 // Also check that the download shelf is not visible after closing the | 1152 // Also check that the download shelf is not visible after closing the |
1153 // Incognito window. | 1153 // Incognito window. |
1154 IN_PROC_BROWSER_TEST_F(DownloadTest, IncognitoDownload) { | 1154 IN_PROC_BROWSER_TEST_F(DownloadTest, IncognitoDownload) { |
1155 // Open an Incognito window. | 1155 // Open an Incognito window. |
1156 Browser* incognito = CreateIncognitoBrowser(); // Waits. | 1156 Browser* incognito = CreateIncognitoBrowser(); // Waits. |
1157 ASSERT_TRUE(incognito); | 1157 ASSERT_TRUE(incognito); |
1158 int window_count = BrowserList::size(); | 1158 int window_count = chrome::GetTotalBrowserCount(); |
1159 EXPECT_EQ(2, window_count); | 1159 EXPECT_EQ(2, window_count); |
1160 | 1160 |
1161 // Download a file in the Incognito window and wait. | 1161 // Download a file in the Incognito window and wait. |
1162 CreateAndSetDownloadsDirectory(incognito); | 1162 CreateAndSetDownloadsDirectory(incognito); |
1163 FilePath file(FILE_PATH_LITERAL("download-test1.lib")); | 1163 FilePath file(FILE_PATH_LITERAL("download-test1.lib")); |
1164 GURL url(URLRequestMockHTTPJob::GetMockUrl(file)); | 1164 GURL url(URLRequestMockHTTPJob::GetMockUrl(file)); |
1165 // Since |incognito| is a separate browser, we have to set it up explicitly. | 1165 // Since |incognito| is a separate browser, we have to set it up explicitly. |
1166 incognito->profile()->GetPrefs()->SetBoolean(prefs::kPromptForDownload, | 1166 incognito->profile()->GetPrefs()->SetBoolean(prefs::kPromptForDownload, |
1167 false); | 1167 false); |
1168 DownloadAndWait(incognito, url); | 1168 DownloadAndWait(incognito, url); |
(...skipping 1228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2397 browser()->tab_strip_model()->GetActiveWebContents(); | 2397 browser()->tab_strip_model()->GetActiveWebContents(); |
2398 scoped_ptr<DownloadUrlParameters> params( | 2398 scoped_ptr<DownloadUrlParameters> params( |
2399 DownloadUrlParameters::FromWebContents(web_contents, url)); | 2399 DownloadUrlParameters::FromWebContents(web_contents, url)); |
2400 params->set_callback(base::Bind(&SetHiddenDownloadCallback)); | 2400 params->set_callback(base::Bind(&SetHiddenDownloadCallback)); |
2401 download_manager->DownloadUrl(params.Pass()); | 2401 download_manager->DownloadUrl(params.Pass()); |
2402 observer->WaitForFinished(); | 2402 observer->WaitForFinished(); |
2403 | 2403 |
2404 // Verify that download shelf is not shown. | 2404 // Verify that download shelf is not shown. |
2405 EXPECT_FALSE(browser()->window()->IsDownloadShelfVisible()); | 2405 EXPECT_FALSE(browser()->window()->IsDownloadShelfVisible()); |
2406 } | 2406 } |
OLD | NEW |