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/file_util.h" | 5 #include "base/file_util.h" |
6 #include "base/files/file_path.h" | 6 #include "base/files/file_path.h" |
7 #include "base/files/scoped_temp_dir.h" | 7 #include "base/files/scoped_temp_dir.h" |
8 #include "base/memory/weak_ptr.h" | 8 #include "base/memory/weak_ptr.h" |
9 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
10 #include "base/observer_list.h" | 10 #include "base/observer_list.h" |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
274 | 274 |
275 // If there are files on the file system, a unique reservation should uniquify | 275 // If there are files on the file system, a unique reservation should uniquify |
276 // around it. | 276 // around it. |
277 TEST_F(DownloadPathReservationTrackerTest, ConflictingFiles) { | 277 TEST_F(DownloadPathReservationTrackerTest, ConflictingFiles) { |
278 scoped_ptr<FakeDownloadItem> item(CreateDownloadItem(1)); | 278 scoped_ptr<FakeDownloadItem> item(CreateDownloadItem(1)); |
279 base::FilePath path( | 279 base::FilePath path( |
280 GetPathInDownloadsDirectory(FILE_PATH_LITERAL("foo.txt"))); | 280 GetPathInDownloadsDirectory(FILE_PATH_LITERAL("foo.txt"))); |
281 base::FilePath path1( | 281 base::FilePath path1( |
282 GetPathInDownloadsDirectory(FILE_PATH_LITERAL("foo (1).txt"))); | 282 GetPathInDownloadsDirectory(FILE_PATH_LITERAL("foo (1).txt"))); |
283 // Create a file at |path|, and a .crdownload file at |path1|. | 283 // Create a file at |path|, and a .crdownload file at |path1|. |
284 ASSERT_EQ(0, file_util::WriteFile(path, "", 0)); | 284 ASSERT_EQ(0, base::WriteFile(path, "", 0)); |
285 ASSERT_EQ(0, | 285 ASSERT_EQ(0, |
286 file_util::WriteFile( | 286 base::WriteFile( |
287 DownloadTargetDeterminer::GetCrDownloadPath(path1), "", 0)); | 287 DownloadTargetDeterminer::GetCrDownloadPath(path1), "", 0)); |
288 ASSERT_TRUE(IsPathInUse(path)); | 288 ASSERT_TRUE(IsPathInUse(path)); |
289 | 289 |
290 base::FilePath reserved_path; | 290 base::FilePath reserved_path; |
291 bool verified = false; | 291 bool verified = false; |
292 bool create_directory = false; | 292 bool create_directory = false; |
293 DownloadPathReservationTracker::FilenameConflictAction conflict_action = | 293 DownloadPathReservationTracker::FilenameConflictAction conflict_action = |
294 DownloadPathReservationTracker::UNIQUIFY; | 294 DownloadPathReservationTracker::UNIQUIFY; |
295 CallGetReservedPath( | 295 CallGetReservedPath( |
296 item.get(), | 296 item.get(), |
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
640 base::FilePath path0(GetLongNamePathInDownloadsDirectory( | 640 base::FilePath path0(GetLongNamePathInDownloadsDirectory( |
641 max_length - 4, FILE_PATH_LITERAL(".txt"))); | 641 max_length - 4, FILE_PATH_LITERAL(".txt"))); |
642 base::FilePath path1(GetLongNamePathInDownloadsDirectory( | 642 base::FilePath path1(GetLongNamePathInDownloadsDirectory( |
643 max_length - 8, FILE_PATH_LITERAL(" (1).txt"))); | 643 max_length - 8, FILE_PATH_LITERAL(" (1).txt"))); |
644 base::FilePath path2(GetLongNamePathInDownloadsDirectory( | 644 base::FilePath path2(GetLongNamePathInDownloadsDirectory( |
645 max_length - 8, FILE_PATH_LITERAL(" (2).txt"))); | 645 max_length - 8, FILE_PATH_LITERAL(" (2).txt"))); |
646 ASSERT_FALSE(IsPathInUse(path)); | 646 ASSERT_FALSE(IsPathInUse(path)); |
647 // "aaa...aaaaaaa.txt" (truncated path) and | 647 // "aaa...aaaaaaa.txt" (truncated path) and |
648 // "aaa...aaa (1).txt" (truncated and first uniquification try) exists. | 648 // "aaa...aaa (1).txt" (truncated and first uniquification try) exists. |
649 // "aaa...aaa (2).txt" should be used. | 649 // "aaa...aaa (2).txt" should be used. |
650 ASSERT_EQ(0, file_util::WriteFile(path0, "", 0)); | 650 ASSERT_EQ(0, base::WriteFile(path0, "", 0)); |
651 ASSERT_EQ(0, file_util::WriteFile(path1, "", 0)); | 651 ASSERT_EQ(0, base::WriteFile(path1, "", 0)); |
652 | 652 |
653 base::FilePath reserved_path; | 653 base::FilePath reserved_path; |
654 bool verified = false; | 654 bool verified = false; |
655 DownloadPathReservationTracker::FilenameConflictAction conflict_action = | 655 DownloadPathReservationTracker::FilenameConflictAction conflict_action = |
656 DownloadPathReservationTracker::UNIQUIFY; | 656 DownloadPathReservationTracker::UNIQUIFY; |
657 bool create_directory = false; | 657 bool create_directory = false; |
658 CallGetReservedPath( | 658 CallGetReservedPath( |
659 item.get(), | 659 item.get(), |
660 path, | 660 path, |
661 create_directory, | 661 create_directory, |
(...skipping 29 matching lines...) Expand all Loading... |
691 create_directory, | 691 create_directory, |
692 conflict_action, | 692 conflict_action, |
693 &reserved_path, | 693 &reserved_path, |
694 &verified); | 694 &verified); |
695 // We cannot truncate a path with very long extension. | 695 // We cannot truncate a path with very long extension. |
696 EXPECT_FALSE(verified); | 696 EXPECT_FALSE(verified); |
697 item->SetState(DownloadItem::COMPLETE); | 697 item->SetState(DownloadItem::COMPLETE); |
698 } | 698 } |
699 | 699 |
700 #endif | 700 #endif |
OLD | NEW |