diff options
Diffstat (limited to 'clang/unittests/Tooling/RefactoringTest.cpp')
-rw-r--r-- | clang/unittests/Tooling/RefactoringTest.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/unittests/Tooling/RefactoringTest.cpp b/clang/unittests/Tooling/RefactoringTest.cpp index 0a70a112aa8..bf50b7d94d4 100644 --- a/clang/unittests/Tooling/RefactoringTest.cpp +++ b/clang/unittests/Tooling/RefactoringTest.cpp @@ -972,5 +972,23 @@ TEST_F(MergeReplacementsTest, OverlappingRanges) { toReplacements({{"", 0, 3, "cc"}, {"", 3, 3, "dd"}})); } +TEST(DeduplicateByFileTest, LeaveLeadingDotDot) { + std::map<std::string, Replacements> FileToReplaces; + FileToReplaces["../../a/b/.././c.h"] = Replacements(); + FileToReplaces["../../a/c.h"] = Replacements(); + FileToReplaces = groupReplacementsByFile(FileToReplaces); + EXPECT_EQ(1u, FileToReplaces.size()); + EXPECT_EQ("../../a/c.h", FileToReplaces.begin()->first); +} + +TEST(DeduplicateByFileTest, RemoveDotSlash) { + std::map<std::string, Replacements> FileToReplaces; + FileToReplaces["./a/b/.././c.h"] = Replacements(); + FileToReplaces["a/c.h"] = Replacements(); + FileToReplaces = groupReplacementsByFile(FileToReplaces); + EXPECT_EQ(1u, FileToReplaces.size()); + EXPECT_EQ("a/c.h", FileToReplaces.begin()->first); +} + } // end namespace tooling } // end namespace clang |