Some additional tests in variable_name_contributor_test.dart to cover all the doIncludePrivateVersion cases
Change-Id: I8ec2a14e8ba4cc3a1ca4228c5455ab7cb6a2138c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101924
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
diff --git a/pkg/analysis_server/test/services/completion/dart/variable_name_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/variable_name_contributor_test.dart
index cf71397..ed57fbe 100644
--- a/pkg/analysis_server/test/services/completion/dart/variable_name_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/variable_name_contributor_test.dart
@@ -42,7 +42,28 @@
assertNotSuggested('a');
}
- test_ExpressionStatement_long() async {
+ test_ExpressionStatement_inConstructorBody() async {
+ addTestSource('''
+ class A { A() { AbstractCrazyNonsenseClassName ^ } }
+ ''');
+ await computeSuggestions();
+ expect(replacementOffset, completionOffset);
+ expect(replacementLength, 0);
+ assertSuggestName('abstractCrazyNonsenseClassName');
+ assertSuggestName('crazyNonsenseClassName');
+ assertSuggestName('nonsenseClassName');
+ assertSuggestName('className');
+ assertSuggestName('name');
+ // private versions aren't provided as this completion is in a constructor
+ // body
+ assertNotSuggested('_abstractCrazyNonsenseClassName');
+ assertNotSuggested('_crazyNonsenseClassName');
+ assertNotSuggested('_nonsenseClassName');
+ assertNotSuggested('_className');
+ assertNotSuggested('_name');
+ }
+
+ test_ExpressionStatement_inFunctionBody() async {
addTestSource('''
f() { AbstractCrazyNonsenseClassName ^ }
''');
@@ -54,7 +75,27 @@
assertSuggestName('nonsenseClassName');
assertSuggestName('className');
assertSuggestName('name');
- // private versions
+ // private versions aren't provided as this completion is in a function body
+ assertNotSuggested('_abstractCrazyNonsenseClassName');
+ assertNotSuggested('_crazyNonsenseClassName');
+ assertNotSuggested('_nonsenseClassName');
+ assertNotSuggested('_className');
+ assertNotSuggested('_name');
+ }
+
+ test_ExpressionStatement_inMethodBody() async {
+ addTestSource('''
+ class A { f() { AbstractCrazyNonsenseClassName ^ } }
+ ''');
+ await computeSuggestions();
+ expect(replacementOffset, completionOffset);
+ expect(replacementLength, 0);
+ assertSuggestName('abstractCrazyNonsenseClassName');
+ assertSuggestName('crazyNonsenseClassName');
+ assertSuggestName('nonsenseClassName');
+ assertSuggestName('className');
+ assertSuggestName('name');
+ // private versions aren't provided as this completion is in a method body
assertNotSuggested('_abstractCrazyNonsenseClassName');
assertNotSuggested('_crazyNonsenseClassName');
assertNotSuggested('_nonsenseClassName');