X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=unittests%2FSupport%2FPath.cpp;h=9a68e08f9c9cb003dfb240fc5e8110a99192ad11;hb=11eb51e23935e22e1cb7b346c45713e8c9169c84;hp=d5591ea1bdc27e3073a3ec4f71996dcd74c8ab94;hpb=9aa3365426ef5b8b82361945bc6a8dbcd3d2bc2a;p=oota-llvm.git diff --git a/unittests/Support/Path.cpp b/unittests/Support/Path.cpp index d5591ea1bdc..9a68e08f9c9 100644 --- a/unittests/Support/Path.cpp +++ b/unittests/Support/Path.cpp @@ -147,13 +147,9 @@ protected: SmallString<128> TestDirectory; virtual void SetUp() { - int fd; ASSERT_NO_ERROR( - fs::unique_file("file-system-test-%%-%%-%%-%%/test-directory.anchor", fd, - TestDirectory)); + fs::createUniqueDirectory("file-system-test", TestDirectory)); // We don't care about this specific file. - ::close(fd); - TestDirectory = path::parent_path(TestDirectory); errs() << "Test Directory: " << TestDirectory << '\n'; errs().flush(); } @@ -169,7 +165,7 @@ TEST_F(FileSystemTest, Unique) { int FileDescriptor; SmallString<64> TempPath; ASSERT_NO_ERROR( - fs::unique_file("%%-%%-%%-%%.temp", FileDescriptor, TempPath)); + fs::createTemporaryFile("prefix", "temp", FileDescriptor, TempPath)); // The same file should return an identical unique id. uint64_t F1, F2; @@ -181,8 +177,8 @@ TEST_F(FileSystemTest, Unique) { int FileDescriptor2; SmallString<64> TempPath2; ASSERT_NO_ERROR( - fs::unique_file("%%-%%-%%-%%.temp", FileDescriptor2, TempPath2)); - + fs::createTemporaryFile("prefix", "temp", FileDescriptor2, TempPath2)); + uint64_t D; ASSERT_NO_ERROR(fs::getUniqueID(Twine(TempPath2), D)); ASSERT_NE(D, F1); @@ -205,7 +201,7 @@ TEST_F(FileSystemTest, TempFiles) { int FileDescriptor; SmallString<64> TempPath; ASSERT_NO_ERROR( - fs::unique_file("%%-%%-%%-%%.temp", FileDescriptor, TempPath)); + fs::createTemporaryFile("prefix", "temp", FileDescriptor, TempPath)); // Make sure it exists. bool TempFileExists; @@ -215,7 +211,7 @@ TEST_F(FileSystemTest, TempFiles) { // Create another temp tile. int FD2; SmallString<64> TempPath2; - ASSERT_NO_ERROR(fs::unique_file("%%-%%-%%-%%.temp", FD2, TempPath2)); + ASSERT_NO_ERROR(fs::createTemporaryFile("prefix", "temp", FD2, TempPath2)); ASSERT_NE(TempPath.str(), TempPath2.str()); fs::file_status A, B; @@ -269,7 +265,7 @@ TEST_F(FileSystemTest, TempFiles) { "abcdefghijklmnopqrstuvwxyz5abcdefghijklmnopqrstuvwxyz4" "abcdefghijklmnopqrstuvwxyz3abcdefghijklmnopqrstuvwxyz2" "abcdefghijklmnopqrstuvwxyz1abcdefghijklmnopqrstuvwxyz0"; - EXPECT_EQ(fs::unique_file(Twine(Path270), FileDescriptor, TempPath), + EXPECT_EQ(fs::createUniqueFile(Twine(Path270), FileDescriptor, TempPath), windows_error::path_not_found); #endif } @@ -367,40 +363,12 @@ TEST_F(FileSystemTest, Magic) { } } -#if !defined(_WIN32) // FIXME: Win32 has different permission schema. -TEST_F(FileSystemTest, Permissions) { - // Create a temp file. - int FileDescriptor; - SmallString<64> TempPath; - ASSERT_NO_ERROR( - fs::unique_file("%%-%%-%%-%%.temp", FileDescriptor, TempPath)); - - // Mark file as read-only - const fs::perms AllWrite = fs::owner_write|fs::group_write|fs::others_write; - ASSERT_NO_ERROR(fs::permissions(Twine(TempPath), fs::remove_perms|AllWrite)); - - // Verify file is read-only - fs::file_status Status; - ASSERT_NO_ERROR(fs::status(Twine(TempPath), Status)); - bool AnyWriteBits = (Status.permissions() & AllWrite); - EXPECT_FALSE(AnyWriteBits); - - // Mark file as read-write - ASSERT_NO_ERROR(fs::permissions(Twine(TempPath), fs::add_perms|AllWrite)); - - // Verify file is read-write - ASSERT_NO_ERROR(fs::status(Twine(TempPath), Status)); - AnyWriteBits = (Status.permissions() & AllWrite); - EXPECT_TRUE(AnyWriteBits); -} -#endif - TEST_F(FileSystemTest, FileMapping) { // Create a temp file. int FileDescriptor; SmallString<64> TempPath; ASSERT_NO_ERROR( - fs::unique_file("%%-%%-%%-%%.temp", FileDescriptor, TempPath)); + fs::createTemporaryFile("prefix", "temp", FileDescriptor, TempPath)); // Map in temp file and add some content error_code EC; StringRef Val("hello there");