================
@@ -2305,7 +2335,45 @@ TEST(BlockEndHints, PointerToMemberFunction) {
       $ptrmem[[}]]
     } // suppress
   )cpp",
-                      ExpectedHint{" // if", "ptrmem"});
+                      ExpectedHint{" // if ()", "ptrmem"});
+}
+
+TEST(BlockEndHints, MinLineLimit) {
+  assertBlockEndHintsWithOpts(
+      R"cpp(
+    namespace ns {
+      int Var;
+      int func1();
+      int func2(int, int);
+      struct S {
+        int Field;
+        int method1() const;
+        int method2(int, int) const;
+      $struct[[}]];
----------------
HighCommander4 wrote:

It's not necessary.

The core assertion the tests make is [this 
one](https://searchfox.org/llvm/rev/bb21a6819b3fb9d689de776f7ee768030dfbacea/clang-tools-extra/clangd/unittests/InlayHintTests.cpp#101-102):

```
  EXPECT_THAT(hintsOfKind(AST, Kind),
              ElementsAre(HintMatcher(Expected, Source)...));
```

`hintsOfKind(AST, Kind)` returns **all** inlay hints of the specified kind in 
the code; its output does not depend on the presence or absence of annotations 
in the code.

`ElementsAre(...)` then assert that these returned hints match the provided 
`ExpectedHint` objects, including how many there are. If in the test case you 
have two `ExpectedHint` objects, and the `hintsOfKind()` starts returning three 
hints, the test will start failing.

The only purpose of the annotations is so that you can name a range passed in 
to an `ExpectedHint`; if you never need to name the range, you don't need the 
annotation.

https://github.com/llvm/llvm-project/pull/136106
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to