summaryrefslogtreecommitdiff
path: root/unittests/libclang
diff options
context:
space:
mode:
authorPetr Pavlu <petr.pavlu@arm.com>2018-04-21 14:35:18 +0000
committerPetr Pavlu <petr.pavlu@arm.com>2018-04-21 14:35:18 +0000
commit2cbb1e02061073165a799fa1ea64def7564320b3 (patch)
tree0d35a8dd0f7324acfca79dc10560e3ec2d2e6560 /unittests/libclang
parentac235578c0e799549718f89572a170e924220848 (diff)
downloadclang-2cbb1e02061073165a799fa1ea64def7564320b3.tar.gz
[libclang] Fix LibclangReparseTest.FileName when TMPDIR is set to a symlink
Fix testing of clang_File_tryGetRealPathName() in LibclangReparseTest.FileName when executing in an environment which has TMPDIR set to a symbolic link that points to an actual directory. The test would fail because the name returned by clang_File_tryGetRealPathName() has the symlink resolved but the test compared it to the original filename of a temporary file. The patch addresses the problem by checking only that the value returned by clang_File_tryGetRealPathName() ends with "main.cpp". Additionally, the patch makes the previous assertion in the test that checks result of clang_getFileName() stricter. It newly verifies that the name returned by the function is exactly same as what was given to clang_parseTranslationUnit()/clang_getFile(). Differential Revision: https://reviews.llvm.org/D45807 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@330507 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/libclang')
-rw-r--r--unittests/libclang/LibclangTest.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/unittests/libclang/LibclangTest.cpp b/unittests/libclang/LibclangTest.cpp
index 262ed26953..c727b93c82 100644
--- a/unittests/libclang/LibclangTest.cpp
+++ b/unittests/libclang/LibclangTest.cpp
@@ -8,6 +8,7 @@
//===----------------------------------------------------------------------===//
#include "clang-c/Index.h"
+#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Path.h"
@@ -490,11 +491,11 @@ TEST_F(LibclangReparseTest, FileName) {
CXFile cxf = clang_getFile(ClangTU, CppName.c_str());
CXString cxname = clang_getFileName(cxf);
- ASSERT_TRUE(strstr(clang_getCString(cxname), CppName.c_str()));
+ ASSERT_STREQ(clang_getCString(cxname), CppName.c_str());
clang_disposeString(cxname);
cxname = clang_File_tryGetRealPathName(cxf);
- ASSERT_TRUE(strstr(clang_getCString(cxname), CppName.c_str()));
+ ASSERT_TRUE(llvm::StringRef(clang_getCString(cxname)).endswith("main.cpp"));
clang_disposeString(cxname);
}