diff options
Diffstat (limited to 'clang-tools-extra/clangd/unittests/HeadersTests.cpp')
-rw-r--r-- | clang-tools-extra/clangd/unittests/HeadersTests.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/unittests/HeadersTests.cpp b/clang-tools-extra/clangd/unittests/HeadersTests.cpp index 751383e3..440582e 100644 --- a/clang-tools-extra/clangd/unittests/HeadersTests.cpp +++ b/clang-tools-extra/clangd/unittests/HeadersTests.cpp @@ -344,6 +344,17 @@ TEST_F(HeadersTest, ShortenIncludesInSearchPathBracketed) { EXPECT_EQ(calculate(BarHeader), "<sub/bar.h>"); } +TEST_F(HeadersTest, ShortenIncludesInSearchPathBracketedFilterByFullPath) { + // The filter receives the full path of the header, so it is able to filter by + // the parent directory, even if it is part of the include search path + AngledHeaders.push_back([](auto Path) { + llvm::Regex Pattern("sub/.*"); + return Pattern.match(Path); + }); + std::string BarHeader = testPath("sub/bar.h"); + EXPECT_EQ(calculate(BarHeader), "<bar.h>"); +} + TEST_F(HeadersTest, ShortenedIncludeNotInSearchPath) { std::string BarHeader = llvm::sys::path::convert_to_slash(testPath("sub-2/bar.h")); |