Index: base/file_util_unittest.cc |
=================================================================== |
--- base/file_util_unittest.cc (revision 11294) |
+++ base/file_util_unittest.cc (working copy) |
@@ -685,6 +685,36 @@ |
DeleteFile(link_file.value().c_str()); |
CoUninitialize(); |
} |
+ |
+TEST_F(FileUtilTest, CopyAndDeleteDirectoryTest) { |
+ // Create a directory |
+ FilePath dir_name_from = |
+ test_dir_.Append(FILE_PATH_LITERAL("CopyAndDelete_From_Subdir")); |
+ file_util::CreateDirectory(dir_name_from); |
+ ASSERT_TRUE(file_util::PathExists(dir_name_from)); |
+ |
+ // Create a file under the directory |
+ FilePath file_name_from = |
+ dir_name_from.Append(FILE_PATH_LITERAL("CopyAndDelete_Test_File.txt")); |
+ CreateTextFile(file_name_from, L"Gooooooooooooooooooooogle"); |
+ ASSERT_TRUE(file_util::PathExists(file_name_from)); |
+ |
+ // Move the directory by using CopyAndDeleteDirectory |
+ FilePath dir_name_to = test_dir_.Append( |
+ FILE_PATH_LITERAL("CopyAndDelete_To_Subdir")); |
+ FilePath file_name_to = |
+ dir_name_to.Append(FILE_PATH_LITERAL("CopyAndDelete_Test_File.txt")); |
+ |
+ ASSERT_FALSE(file_util::PathExists(dir_name_to)); |
+ |
+ EXPECT_TRUE(file_util::CopyAndDeleteDirectory(dir_name_from, dir_name_to)); |
+ |
+ // Check everything has been moved. |
+ EXPECT_FALSE(file_util::PathExists(dir_name_from)); |
+ EXPECT_FALSE(file_util::PathExists(file_name_from)); |
+ EXPECT_TRUE(file_util::PathExists(dir_name_to)); |
+ EXPECT_TRUE(file_util::PathExists(file_name_to)); |
+} |
#endif |
TEST_F(FileUtilTest, CreateTemporaryFileNameTest) { |