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 "base/bind.h" | 5 #include "base/bind.h" |
6 #include "base/bind_helpers.h" | 6 #include "base/bind_helpers.h" |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/files/file_path.h" | 8 #include "base/files/file_path.h" |
9 #include "base/files/file_util.h" | 9 #include "base/files/file_util.h" |
10 #include "base/files/scoped_temp_dir.h" | 10 #include "base/files/scoped_temp_dir.h" |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 bool WaitForPersisted() { | 78 bool WaitForPersisted() { |
79 if (persisted_) | 79 if (persisted_) |
80 return true; | 80 return true; |
81 waiting_ = true; | 81 waiting_ = true; |
82 content::RunMessageLoop(); | 82 content::RunMessageLoop(); |
83 waiting_ = false; | 83 waiting_ = false; |
84 return persisted_; | 84 return persisted_; |
85 } | 85 } |
86 | 86 |
87 virtual void OnDownloadStored(DownloadItem* item, | 87 virtual void OnDownloadStored(DownloadItem* item, |
88 const history::DownloadRow& info) OVERRIDE { | 88 const history::DownloadRow& info) override { |
89 persisted_ = persisted_ || filter_.Run(item, info); | 89 persisted_ = persisted_ || filter_.Run(item, info); |
90 if (persisted_ && waiting_) | 90 if (persisted_ && waiting_) |
91 base::MessageLoopForUI::current()->Quit(); | 91 base::MessageLoopForUI::current()->Quit(); |
92 } | 92 } |
93 | 93 |
94 private: | 94 private: |
95 Profile* profile_; | 95 Profile* profile_; |
96 PersistedFilter filter_; | 96 PersistedFilter filter_; |
97 bool waiting_; | 97 bool waiting_; |
98 bool persisted_; | 98 bool persisted_; |
(...skipping 15 matching lines...) Expand all Loading... |
114 bool WaitForRemoved() { | 114 bool WaitForRemoved() { |
115 if (removed_) | 115 if (removed_) |
116 return true; | 116 return true; |
117 waiting_ = true; | 117 waiting_ = true; |
118 content::RunMessageLoop(); | 118 content::RunMessageLoop(); |
119 waiting_ = false; | 119 waiting_ = false; |
120 return removed_; | 120 return removed_; |
121 } | 121 } |
122 | 122 |
123 virtual void OnDownloadStored(DownloadItem* item, | 123 virtual void OnDownloadStored(DownloadItem* item, |
124 const history::DownloadRow& info) OVERRIDE { | 124 const history::DownloadRow& info) override { |
125 } | 125 } |
126 | 126 |
127 virtual void OnDownloadsRemoved(const DownloadHistory::IdSet& ids) OVERRIDE { | 127 virtual void OnDownloadsRemoved(const DownloadHistory::IdSet& ids) override { |
128 removed_ = ids.find(download_id_) != ids.end(); | 128 removed_ = ids.find(download_id_) != ids.end(); |
129 if (removed_ && waiting_) | 129 if (removed_ && waiting_) |
130 base::MessageLoopForUI::current()->Quit(); | 130 base::MessageLoopForUI::current()->Quit(); |
131 } | 131 } |
132 | 132 |
133 private: | 133 private: |
134 bool removed_; | 134 bool removed_; |
135 bool waiting_; | 135 bool waiting_; |
136 int32 download_id_; | 136 int32 download_id_; |
137 | 137 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 waiting_ = false; | 211 waiting_ = false; |
212 } | 212 } |
213 | 213 |
214 *items_seen = items_seen_; | 214 *items_seen = items_seen_; |
215 return; | 215 return; |
216 } | 216 } |
217 | 217 |
218 private: | 218 private: |
219 // DownloadManager::Observer | 219 // DownloadManager::Observer |
220 virtual void OnDownloadCreated( | 220 virtual void OnDownloadCreated( |
221 DownloadManager* manager, DownloadItem* item) OVERRIDE { | 221 DownloadManager* manager, DownloadItem* item) override { |
222 DCHECK_EQ(manager, manager_); | 222 DCHECK_EQ(manager, manager_); |
223 items_seen_.push_back(item); | 223 items_seen_.push_back(item); |
224 | 224 |
225 if (waiting_) | 225 if (waiting_) |
226 base::MessageLoopForUI::current()->Quit(); | 226 base::MessageLoopForUI::current()->Quit(); |
227 } | 227 } |
228 | 228 |
229 virtual void ManagerGoingDown(DownloadManager* manager) OVERRIDE { | 229 virtual void ManagerGoingDown(DownloadManager* manager) override { |
230 manager_->RemoveObserver(this); | 230 manager_->RemoveObserver(this); |
231 manager_ = NULL; | 231 manager_ = NULL; |
232 if (waiting_) | 232 if (waiting_) |
233 base::MessageLoopForUI::current()->Quit(); | 233 base::MessageLoopForUI::current()->Quit(); |
234 } | 234 } |
235 | 235 |
236 bool waiting_; | 236 bool waiting_; |
237 DownloadManager* manager_; | 237 DownloadManager* manager_; |
238 std::vector<DownloadItem*> items_seen_; | 238 std::vector<DownloadItem*> items_seen_; |
239 | 239 |
240 DISALLOW_COPY_AND_ASSIGN(DownloadItemCreatedObserver); | 240 DISALLOW_COPY_AND_ASSIGN(DownloadItemCreatedObserver); |
241 }; | 241 }; |
242 | 242 |
243 class SavePackageFinishedObserver : public content::DownloadManager::Observer { | 243 class SavePackageFinishedObserver : public content::DownloadManager::Observer { |
244 public: | 244 public: |
245 SavePackageFinishedObserver(content::DownloadManager* manager, | 245 SavePackageFinishedObserver(content::DownloadManager* manager, |
246 const base::Closure& callback) | 246 const base::Closure& callback) |
247 : download_manager_(manager), | 247 : download_manager_(manager), |
248 callback_(callback) { | 248 callback_(callback) { |
249 download_manager_->AddObserver(this); | 249 download_manager_->AddObserver(this); |
250 } | 250 } |
251 | 251 |
252 virtual ~SavePackageFinishedObserver() { | 252 virtual ~SavePackageFinishedObserver() { |
253 if (download_manager_) | 253 if (download_manager_) |
254 download_manager_->RemoveObserver(this); | 254 download_manager_->RemoveObserver(this); |
255 } | 255 } |
256 | 256 |
257 // DownloadManager::Observer: | 257 // DownloadManager::Observer: |
258 virtual void OnSavePackageSuccessfullyFinished( | 258 virtual void OnSavePackageSuccessfullyFinished( |
259 content::DownloadManager* manager, content::DownloadItem* item) OVERRIDE { | 259 content::DownloadManager* manager, content::DownloadItem* item) override { |
260 callback_.Run(); | 260 callback_.Run(); |
261 } | 261 } |
262 virtual void ManagerGoingDown(content::DownloadManager* manager) OVERRIDE { | 262 virtual void ManagerGoingDown(content::DownloadManager* manager) override { |
263 download_manager_->RemoveObserver(this); | 263 download_manager_->RemoveObserver(this); |
264 download_manager_ = NULL; | 264 download_manager_ = NULL; |
265 } | 265 } |
266 | 266 |
267 private: | 267 private: |
268 content::DownloadManager* download_manager_; | 268 content::DownloadManager* download_manager_; |
269 base::Closure callback_; | 269 base::Closure callback_; |
270 | 270 |
271 DISALLOW_COPY_AND_ASSIGN(SavePackageFinishedObserver); | 271 DISALLOW_COPY_AND_ASSIGN(SavePackageFinishedObserver); |
272 }; | 272 }; |
273 | 273 |
274 class SavePageBrowserTest : public InProcessBrowserTest { | 274 class SavePageBrowserTest : public InProcessBrowserTest { |
275 public: | 275 public: |
276 SavePageBrowserTest() {} | 276 SavePageBrowserTest() {} |
277 virtual ~SavePageBrowserTest(); | 277 virtual ~SavePageBrowserTest(); |
278 | 278 |
279 protected: | 279 protected: |
280 virtual void SetUp() OVERRIDE { | 280 virtual void SetUp() override { |
281 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir_)); | 281 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir_)); |
282 ASSERT_TRUE(save_dir_.CreateUniqueTempDir()); | 282 ASSERT_TRUE(save_dir_.CreateUniqueTempDir()); |
283 InProcessBrowserTest::SetUp(); | 283 InProcessBrowserTest::SetUp(); |
284 } | 284 } |
285 | 285 |
286 virtual void SetUpOnMainThread() OVERRIDE { | 286 virtual void SetUpOnMainThread() override { |
287 browser()->profile()->GetPrefs()->SetFilePath( | 287 browser()->profile()->GetPrefs()->SetFilePath( |
288 prefs::kDownloadDefaultDirectory, save_dir_.path()); | 288 prefs::kDownloadDefaultDirectory, save_dir_.path()); |
289 browser()->profile()->GetPrefs()->SetFilePath( | 289 browser()->profile()->GetPrefs()->SetFilePath( |
290 prefs::kSaveFileDefaultDirectory, save_dir_.path()); | 290 prefs::kSaveFileDefaultDirectory, save_dir_.path()); |
291 BrowserThread::PostTask( | 291 BrowserThread::PostTask( |
292 BrowserThread::IO, FROM_HERE, | 292 BrowserThread::IO, FROM_HERE, |
293 base::Bind(&chrome_browser_net::SetUrlRequestMocksEnabled, true)); | 293 base::Bind(&chrome_browser_net::SetUrlRequestMocksEnabled, true)); |
294 } | 294 } |
295 | 295 |
296 GURL NavigateToMockURL(const std::string& prefix) { | 296 GURL NavigateToMockURL(const std::string& prefix) { |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
440 | 440 |
441 class DelayingDownloadManagerDelegate : public ChromeDownloadManagerDelegate { | 441 class DelayingDownloadManagerDelegate : public ChromeDownloadManagerDelegate { |
442 public: | 442 public: |
443 explicit DelayingDownloadManagerDelegate(Profile* profile) | 443 explicit DelayingDownloadManagerDelegate(Profile* profile) |
444 : ChromeDownloadManagerDelegate(profile) { | 444 : ChromeDownloadManagerDelegate(profile) { |
445 } | 445 } |
446 virtual ~DelayingDownloadManagerDelegate() {} | 446 virtual ~DelayingDownloadManagerDelegate() {} |
447 | 447 |
448 virtual bool ShouldCompleteDownload( | 448 virtual bool ShouldCompleteDownload( |
449 content::DownloadItem* item, | 449 content::DownloadItem* item, |
450 const base::Closure& user_complete_callback) OVERRIDE { | 450 const base::Closure& user_complete_callback) override { |
451 return false; | 451 return false; |
452 } | 452 } |
453 | 453 |
454 private: | 454 private: |
455 DISALLOW_COPY_AND_ASSIGN(DelayingDownloadManagerDelegate); | 455 DISALLOW_COPY_AND_ASSIGN(DelayingDownloadManagerDelegate); |
456 }; | 456 }; |
457 | 457 |
458 // Disabled on Windows due to flakiness. http://crbug.com/162323 | 458 // Disabled on Windows due to flakiness. http://crbug.com/162323 |
459 #if defined(OS_WIN) | 459 #if defined(OS_WIN) |
460 #define MAYBE_SaveHTMLOnlyTabDestroy DISABLED_SaveHTMLOnlyTabDestroy | 460 #define MAYBE_SaveHTMLOnlyTabDestroy DISABLED_SaveHTMLOnlyTabDestroy |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
744 | 744 |
745 EXPECT_TRUE(base::DieFileDie(full_file_name, false)); | 745 EXPECT_TRUE(base::DieFileDie(full_file_name, false)); |
746 EXPECT_TRUE(base::DieFileDie(dir, true)); | 746 EXPECT_TRUE(base::DieFileDie(dir, true)); |
747 } | 747 } |
748 #endif | 748 #endif |
749 | 749 |
750 class SavePageAsMHTMLBrowserTest : public SavePageBrowserTest { | 750 class SavePageAsMHTMLBrowserTest : public SavePageBrowserTest { |
751 public: | 751 public: |
752 SavePageAsMHTMLBrowserTest() {} | 752 SavePageAsMHTMLBrowserTest() {} |
753 virtual ~SavePageAsMHTMLBrowserTest(); | 753 virtual ~SavePageAsMHTMLBrowserTest(); |
754 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 754 virtual void SetUpCommandLine(CommandLine* command_line) override { |
755 command_line->AppendSwitch(switches::kSavePageAsMHTML); | 755 command_line->AppendSwitch(switches::kSavePageAsMHTML); |
756 } | 756 } |
757 | 757 |
758 private: | 758 private: |
759 DISALLOW_COPY_AND_ASSIGN(SavePageAsMHTMLBrowserTest); | 759 DISALLOW_COPY_AND_ASSIGN(SavePageAsMHTMLBrowserTest); |
760 }; | 760 }; |
761 | 761 |
762 SavePageAsMHTMLBrowserTest::~SavePageAsMHTMLBrowserTest() { | 762 SavePageAsMHTMLBrowserTest::~SavePageAsMHTMLBrowserTest() { |
763 } | 763 } |
764 | 764 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
803 base::FilePath download_dir = DownloadPrefs::FromDownloadManager( | 803 base::FilePath download_dir = DownloadPrefs::FromDownloadManager( |
804 GetDownloadManager())->DownloadPath(); | 804 GetDownloadManager())->DownloadPath(); |
805 base::FilePath filename = download_dir.AppendASCII("dataurl.txt"); | 805 base::FilePath filename = download_dir.AppendASCII("dataurl.txt"); |
806 ASSERT_TRUE(base::PathExists(filename)); | 806 ASSERT_TRUE(base::PathExists(filename)); |
807 std::string contents; | 807 std::string contents; |
808 EXPECT_TRUE(base::ReadFileToString(filename, &contents)); | 808 EXPECT_TRUE(base::ReadFileToString(filename, &contents)); |
809 EXPECT_EQ("foo", contents); | 809 EXPECT_EQ("foo", contents); |
810 } | 810 } |
811 | 811 |
812 } // namespace | 812 } // namespace |
OLD | NEW |