summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clangd/unittests/XRefsTests.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/clangd/unittests/XRefsTests.cpp')
-rw-r--r--clang-tools-extra/clangd/unittests/XRefsTests.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/unittests/XRefsTests.cpp b/clang-tools-extra/clangd/unittests/XRefsTests.cpp
index e009c1c3ab2..058f205bb3a 100644
--- a/clang-tools-extra/clangd/unittests/XRefsTests.cpp
+++ b/clang-tools-extra/clangd/unittests/XRefsTests.cpp
@@ -1048,6 +1048,27 @@ TEST(GetNonLocalDeclRefs, All) {
}
}
+TEST(DocumentLinks, All) {
+ Annotations MainCpp(R"cpp(
+ #include $foo[["foo.h"]]
+ int end_of_preamble = 0;
+ #include $bar[["bar.h"]]
+ )cpp");
+
+ TestTU TU;
+ TU.Code = MainCpp.code();
+ TU.AdditionalFiles = {{"foo.h", ""}, {"bar.h", ""}};
+ auto AST = TU.build();
+
+ EXPECT_THAT(
+ clangd::getDocumentLinks(AST),
+ ElementsAre(
+ DocumentLink({MainCpp.range("foo"),
+ URIForFile::canonicalize(testPath("foo.h"), "")}),
+ DocumentLink({MainCpp.range("bar"),
+ URIForFile::canonicalize(testPath("bar.h"), "")})));
+}
+
} // namespace
} // namespace clangd
} // namespace clang
OpenPOWER on IntegriCloud