summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clangd/unittests/SourceCodeTests.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/clangd/unittests/SourceCodeTests.cpp')
-rw-r--r--clang-tools-extra/clangd/unittests/SourceCodeTests.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/unittests/SourceCodeTests.cpp b/clang-tools-extra/clangd/unittests/SourceCodeTests.cpp
index cbed9a0f064..e9cd886e1dd 100644
--- a/clang-tools-extra/clangd/unittests/SourceCodeTests.cpp
+++ b/clang-tools-extra/clangd/unittests/SourceCodeTests.cpp
@@ -680,6 +680,27 @@ TEST(SourceCodeTests, GetEligiblePoints) {
EXPECT_EQ(Res.EnclosingNamespace, Case.EnclosingNamespace) << Test.code();
}
}
+
+TEST(SourceCodeTests, IdentifierRanges) {
+ Annotations Code(R"cpp(
+ class [[Foo]] {};
+ // Foo
+ /* Foo */
+ void f([[Foo]]* foo1) {
+ [[Foo]] foo2;
+ auto S = [[Foo]]();
+// cross-line identifier is not supported.
+F\
+o\
+o foo2;
+ }
+ )cpp");
+ LangOptions LangOpts;
+ LangOpts.CPlusPlus = true;
+ EXPECT_EQ(Code.ranges(),
+ collectIdentifierRanges("Foo", Code.code(), LangOpts));
+}
+
} // namespace
} // namespace clangd
} // namespace clang
OpenPOWER on IntegriCloud