@@ -3277,7 +3277,7 @@ TEST(SignatureHelpTest, SkipExplicitObjectParameter) {
32773277 A a {};
32783278 a.foo($c1^);
32793279 (&A::bar)($c2^);
3280- // TODO: (&A::foo)(^c3)
3280+ (&A::foo)($c3^);
32813281 }
32823282 )cpp" );
32833283
@@ -3294,18 +3294,27 @@ TEST(SignatureHelpTest, SkipExplicitObjectParameter) {
32943294 const auto Result = signatureHelp (testPath (TU.Filename ), Code.point (" c1" ),
32953295 *Preamble, Inputs, MarkupKind::PlainText);
32963296
3297- EXPECT_EQ (1 , Result.signatures .size ());
3297+ EXPECT_EQ (1U , Result.signatures .size ());
32983298
32993299 EXPECT_THAT (Result.signatures [0 ], AllOf (sig (" foo([[int arg]]) -> void" )));
33003300 }
33013301 {
33023302 const auto Result = signatureHelp (testPath (TU.Filename ), Code.point (" c2" ),
33033303 *Preamble, Inputs, MarkupKind::PlainText);
33043304
3305- EXPECT_EQ (1 , Result.signatures .size ());
3305+ EXPECT_EQ (1U , Result.signatures .size ());
33063306
33073307 EXPECT_THAT (Result.signatures [0 ], AllOf (sig (" ([[A]], [[int]]) -> void" )));
33083308 }
3309+ {
3310+ const auto Result = signatureHelp (testPath (TU.Filename ), Code.point (" c3" ),
3311+ *Preamble, Inputs, MarkupKind::PlainText);
3312+ // TODO: We expect 1 signature here
3313+ // EXPECT_EQ(1U, Result.signatures.size());
3314+
3315+ // EXPECT_THAT(Result.signatures[0], AllOf(sig("([[A]], [[int]]) ->
3316+ // void")));
3317+ }
33093318}
33103319
33113320TEST (CompletionTest, IncludedCompletionKinds) {
@@ -4415,9 +4424,9 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44154424
44164425 int main() {
44174426 A a {};
4418- a.$c1^s
4427+ a.$c1^
44194428 (&A::ba$c2^;
4420- // TODO: (&A::fo$c3^
4429+ (&A::fo$c3^;
44214430 }
44224431 )cpp" );
44234432
@@ -4435,11 +4444,11 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44354444 auto Result = codeComplete (testPath (TU.Filename ), Code.point (" c1" ),
44364445 Preamble.get (), Inputs, Opts);
44374446
4438- EXPECT_THAT (Result. Completions ,
4439- UnorderedElementsAre ( AllOf ( named ( " foo " ), signature ( " (int arg) " ) ,
4440- snippetSuffix ( " (${1:int arg}) " )),
4441- AllOf (named (" bar " ), signature (" (int arg)" ),
4442- snippetSuffix (" (${1: int arg}) " ))));
4447+ EXPECT_THAT (
4448+ Result. Completions ,
4449+ UnorderedElementsAre (
4450+ AllOf (named (" foo " ), signature (" (int arg)" ), snippetSuffix ( " " ) ),
4451+ AllOf ( named ( " bar " ), signature (" (int arg) " ), snippetSuffix ( " " ))));
44434452 }
44444453 {
44454454 auto Result = codeComplete (testPath (TU.Filename ), Code.point (" c2" ),
@@ -4449,6 +4458,14 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44494458 ElementsAre (AllOf (named (" bar" ), signature (" (int arg)" ),
44504459 snippetSuffix (" " ))));
44514460 }
4461+ {
4462+ auto Result = codeComplete (testPath (TU.Filename ), Code.point (" c3" ),
4463+ Preamble.get (), Inputs, Opts);
4464+ EXPECT_THAT (
4465+ Result.Completions ,
4466+ ElementsAre (AllOf (named (" foo" ), signature (" <class self:auto>(int arg)" ),
4467+ snippetSuffix (" <${1:class self:auto}>" ))));
4468+ }
44524469}
44534470} // namespace
44544471} // namespace clangd
0 commit comments