Make completionOffset non-nullable as per earlier feedback
Change-Id: I41eb78f804081b34799716a42c5d3d5e2ece51d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194902
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analysis_server/test/services/completion/dart/completion_contributor_util.dart b/pkg/analysis_server/test/services/completion/dart/completion_contributor_util.dart
index d0cff3d..c92a7b2 100644
--- a/pkg/analysis_server/test/services/completion/dart/completion_contributor_util.dart
+++ b/pkg/analysis_server/test/services/completion/dart/completion_contributor_util.dart
@@ -67,7 +67,7 @@
with WithNonFunctionTypeAliasesMixin {
static const String _UNCHECKED = '__UNCHECKED__';
late String testFile;
- int? completionOffset;
+ int _completionOffset = -1;
late int replacementOffset;
late int replacementLength;
@@ -80,6 +80,14 @@
late List<CompletionSuggestion> suggestions;
+ /// Return the offset at which completion was requested.
+ int get completionOffset {
+ if (_completionOffset < 0) {
+ fail('Must call addTestSource exactly once');
+ }
+ return _completionOffset;
+ }
+
/// If `true` and `null` is specified as the suggestion's expected returnType
/// then the actual suggestion is expected to have a `dynamic` returnType.
/// Newer tests return `false` so that they can distinguish between
@@ -92,13 +100,14 @@
bool get suggestConstructorsWithoutNew => true;
void addTestSource(String content) {
- expect(completionOffset, isNull, reason: 'Call addTestUnit exactly once');
- completionOffset = content.indexOf('^');
- expect(completionOffset, greaterThanOrEqualTo(0), reason: 'missing ^');
- var nextOffset = content.indexOf('^', completionOffset! + 1);
+ expect(_completionOffset, lessThan(0),
+ reason: 'Must call addTestSource exactly once');
+ _completionOffset = content.indexOf('^');
+ expect(_completionOffset, greaterThanOrEqualTo(0), reason: 'missing ^');
+ var nextOffset = content.indexOf('^', _completionOffset + 1);
expect(nextOffset, equals(-1), reason: 'too many ^');
- content = content.substring(0, completionOffset) +
- content.substring(completionOffset! + 1);
+ content = content.substring(0, _completionOffset) +
+ content.substring(_completionOffset + 1);
addSource(testFile, content);
}
@@ -529,7 +538,7 @@
Future computeSuggestions({int times = 200}) async {
result = await session.getResolvedUnit(testFile);
var baseRequest = CompletionRequestImpl(
- result, completionOffset!, CompletionPerformance());
+ result, completionOffset, CompletionPerformance());
return await baseRequest.performance.runRequestOperation(
(performance) async {
diff --git a/pkg/analysis_server/test/services/completion/dart/completion_manager_test.dart b/pkg/analysis_server/test/services/completion/dart/completion_manager_test.dart
index 5a236f2..0f6f5e7 100644
--- a/pkg/analysis_server/test/services/completion/dart/completion_manager_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/completion_manager_test.dart
@@ -50,7 +50,7 @@
// Build the request
var baseRequest = CompletionRequestImpl(
await session.getResolvedUnit(testFile),
- completionOffset!,
+ completionOffset,
CompletionPerformance());
await baseRequest.performance.runRequestOperation((performance) async {
var requestCompleter = Completer<DartCompletionRequest>();
diff --git a/pkg/analysis_server/test/services/completion/dart/field_formal_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/field_formal_contributor_test.dart
index fcc96d2..d28095f 100644
--- a/pkg/analysis_server/test/services/completion/dart/field_formal_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/field_formal_contributor_test.dart
@@ -84,7 +84,7 @@
m(X x) {} I _n(X x) {}}
class X{}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestField('b', null);
assertSuggestField('_c', 'X');
diff --git a/pkg/analysis_server/test/services/completion/dart/imported_reference_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/imported_reference_contributor_test.dart
index f56d0b2..cf8d182 100644
--- a/pkg/analysis_server/test/services/completion/dart/imported_reference_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/imported_reference_contributor_test.dart
@@ -473,7 +473,7 @@
int^ b = 1;}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('A');
assertSuggestClass('int');
@@ -497,7 +497,7 @@
b = 1;}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertSuggestClass('int');
@@ -1044,7 +1044,7 @@
class X {a() {var f; {var x;} D^ var r;} void b() { }}
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('X');
@@ -1186,7 +1186,7 @@
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('partT8');
@@ -1326,7 +1326,7 @@
main() {A a; a^..b}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('b');
assertNotSuggested('_c');
@@ -1468,7 +1468,7 @@
A Sew;''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertNotSuggested('_B');
@@ -1745,7 +1745,7 @@
main() {new String.fr^omCharCodes([]);}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 13);
// Suggested by NamedConstructorContributor
assertNotSuggested('fromCharCodes');
@@ -2183,7 +2183,7 @@
addTestSource('main(args) {for (S^ foo in args) {}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('args');
assertNotSuggested('foo');
@@ -2224,7 +2224,7 @@
addTestSource('main() {for (int index = 0; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
}
@@ -2264,7 +2264,7 @@
addTestSource('main() {for (int index = 0; index < 10; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
}
@@ -2276,7 +2276,7 @@
main() {for (int index = 0; index < 10; ++i^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
assertNotSuggested('main');
@@ -2887,7 +2887,7 @@
addTestSource('class A {foo(){new C^}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
// Not imported, so not suggested
assertNotSuggested('Completer');
@@ -3076,7 +3076,7 @@
main(){var a; if (a is Obj^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('a');
assertNotSuggested('main');
@@ -3152,7 +3152,7 @@
main() {new^ X.c();}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('c');
assertNotSuggested('_d');
@@ -3252,7 +3252,7 @@
foo = {T^''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
// Simulate unresolved imported library,
// in which case suggestions will have null return types (unresolved)
@@ -3279,7 +3279,7 @@
foo = {7:T^};''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestTopLevelVar('T1', 'int');
assertNotSuggested('T2');
@@ -4107,7 +4107,7 @@
class X {foo(){A^.bar}}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestClass('A');
if (suggestConstructorsWithoutNew) {
@@ -4234,7 +4234,7 @@
addTestSource('class A {a() {"hello".to^String().length}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 8);
assertNotSuggested('length');
assertNotSuggested('A');
@@ -4428,7 +4428,7 @@
class X{}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
// Contributed by FieldFormalConstructorContributor
assertNotSuggested('b');
@@ -4698,7 +4698,7 @@
main() { C<C^> c; }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestClass('C1');
assertNotSuggested('C2');
diff --git a/pkg/analysis_server/test/services/completion/dart/library_prefix_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/library_prefix_contributor_test.dart
index 64d0df1..ae303ec 100644
--- a/pkg/analysis_server/test/services/completion/dart/library_prefix_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/library_prefix_contributor_test.dart
@@ -234,7 +234,7 @@
class _B {}
A Sew;''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLibraryPrefixes(['Soo']);
}
diff --git a/pkg/analysis_server/test/services/completion/dart/local_reference_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/local_reference_contributor_test.dart
index 16d784d..7cdb905 100644
--- a/pkg/analysis_server/test/services/completion/dart/local_reference_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/local_reference_contributor_test.dart
@@ -680,7 +680,7 @@
}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertSuggestClass('A');
assertNotSuggested('int');
@@ -705,7 +705,7 @@
}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestClass('A');
assertNotSuggested('int');
@@ -1242,7 +1242,7 @@
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestClass('X');
@@ -1485,7 +1485,7 @@
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('partT8');
@@ -1599,7 +1599,7 @@
main() {A a; a^..b}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('b');
assertNotSuggested('_c');
@@ -1756,7 +1756,7 @@
A Sew;''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestClass('A');
assertSuggestClass('_B');
@@ -2118,7 +2118,7 @@
main() {new String.fr^omCharCodes([]);}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 13);
// Suggested by NamedConstructorContributor
assertNotSuggested('fromCharCodes');
@@ -2863,7 +2863,7 @@
addTestSource('main() {List<int> values; for (int index in i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('values', 'List<int>');
assertNotSuggested('index');
@@ -2874,7 +2874,7 @@
addTestSource('main() {List<int> values; for (int index in (i^))}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('values', 'List<int>');
assertNotSuggested('index');
@@ -2943,7 +2943,7 @@
addTestSource('main(args) {for (S^ foo in args) {}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('args');
assertNotSuggested('foo');
@@ -2990,7 +2990,7 @@
addTestSource('var x = [for (int index = 0; i^)];');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
}
@@ -3009,7 +3009,7 @@
addTestSource('var x = [for (int index = 0; index < 10; i^)];');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
}
@@ -3020,7 +3020,7 @@
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
}
@@ -3059,7 +3059,7 @@
addTestSource('main() {for (int index = 0; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
}
@@ -3081,7 +3081,7 @@
addTestSource('main() {for (int index = 0; index < 10; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
}
@@ -3093,7 +3093,7 @@
main() {for (int index = 0; index < 10; ++i^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestLocalVariable('index', 'int');
assertSuggestFunction('main', null);
@@ -3487,7 +3487,7 @@
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestField('b', null);
assertSuggestField('_c', 'X');
@@ -3825,7 +3825,7 @@
addTestSource('class C {foo(){new F^}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('Future');
assertNotSuggested('Foo');
@@ -4050,7 +4050,7 @@
main(){var a; if (a is Obj^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('a');
assertNotSuggested('main');
@@ -4072,7 +4072,7 @@
main() {new^ X.c();}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('c');
assertNotSuggested('_d');
@@ -4256,7 +4256,7 @@
foo = {T^''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('T1');
assertSuggestTopLevelVar('T2', 'int');
@@ -4278,7 +4278,7 @@
foo = {7:T^};''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('T1');
assertSuggestTopLevelVar('T2', 'int');
@@ -4690,7 +4690,7 @@
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
var methodA = assertSuggestMethod('_a', 'A', 'Z').element;
if (methodA != null) {
@@ -5485,7 +5485,7 @@
class X {foo(){A^.bar}}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertSuggestClass('X');
@@ -5630,7 +5630,7 @@
addTestSource('class A {a() {"hello".to^String().length}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 8);
assertNotSuggested('length');
assertNotSuggested('A');
@@ -5939,7 +5939,7 @@
class X{}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
// Contributed by FieldFormalContributor
assertNotSuggested('b');
@@ -6145,7 +6145,7 @@
main() { C<C^> c; }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('C1');
assertSuggestClass('C2');
diff --git a/pkg/analysis_server/test/services/completion/dart/named_constructor_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/named_constructor_contributor_test.dart
index 9fcdd82..1ff2987 100644
--- a/pkg/analysis_server/test/services/completion/dart/named_constructor_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/named_constructor_contributor_test.dart
@@ -117,7 +117,7 @@
addTestSource('''
main() {new String.fr^omCharCodes([]);}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 13);
assertSuggestNamedConstructor('fromCharCodes', 'String');
assertNotSuggested('isEmpty');
diff --git a/pkg/analysis_server/test/services/completion/dart/type_member_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/type_member_contributor_test.dart
index 0cc4eba..8d36d27 100644
--- a/pkg/analysis_server/test/services/completion/dart/type_member_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/type_member_contributor_test.dart
@@ -418,7 +418,7 @@
int a;
int^ b = 1;}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('A');
assertNotSuggested('int');
@@ -441,7 +441,7 @@
i^
b = 1;}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertNotSuggested('int');
@@ -924,7 +924,7 @@
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('X');
@@ -1065,7 +1065,7 @@
void b() { }}
class Z { }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('partT8');
assertNotSuggested('partBoo');
@@ -1185,7 +1185,7 @@
class X{}
main() {A a; a^..b}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('b');
assertNotSuggested('_c');
@@ -1312,7 +1312,7 @@
class _B {}
A Sew;''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertNotSuggested('_B');
@@ -1568,7 +1568,7 @@
addTestSource('''
main() {new String.fr^omCharCodes([]);}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 13);
// Suggested by NamedConstructorContributor
assertNotSuggested('fromCharCodes');
@@ -1839,7 +1839,7 @@
// DeclaredIdentifier ForEachStatement Block
addTestSource('main(args) {for (S^ foo in args) {}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('args');
assertNotSuggested('foo');
@@ -1877,7 +1877,7 @@
// SimpleIdentifier ForStatement
addTestSource('main() {for (int index = 0; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
}
@@ -1897,7 +1897,7 @@
// SimpleIdentifier ForStatement
addTestSource('main() {for (int index = 0; index < 10; i^)}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
}
@@ -1908,7 +1908,7 @@
void bar() { }
main() {for (int index = 0; index < 10; ++i^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('index');
assertNotSuggested('main');
@@ -2246,7 +2246,7 @@
addSource('/testAB.dart', 'class Foo { }');
addTestSource('class C {foo(){new F^}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('Future');
assertNotSuggested('Foo');
@@ -2450,7 +2450,7 @@
class A {int x; int y() => 0;}
main(){var a; if (a is Obj^)}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('a');
assertNotSuggested('main');
@@ -2478,7 +2478,7 @@
var m;
main() {new^ X.c();}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('c');
assertNotSuggested('_d');
@@ -2625,7 +2625,7 @@
class C2 { }
foo = {T^''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('T2');
}
@@ -2645,7 +2645,7 @@
class C2 { }
foo = {7:T^};''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('T2');
}
@@ -3551,7 +3551,7 @@
import "a.dart";
class X {foo(){A^.bar}}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('A');
assertNotSuggested('X');
@@ -3669,7 +3669,7 @@
// SimpleIdentifier MethodInvocation PropertyAccess ExpressionStatement
addTestSource('class A {a() {"hello".to^String().length}}');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 8);
assertSuggestGetter('length', 'int');
assertNotSuggested('A');
@@ -4032,7 +4032,7 @@
m(X x) {} I _n(X x) {}}
class X{}''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
// Contributed by FieldFormalConstructorContributor
assertNotSuggested('b');
@@ -4180,7 +4180,7 @@
class C<E> {}
main() { C<C^> c; }''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertNotSuggested('C1');
assertNotSuggested('C2');
diff --git a/pkg/analysis_server/test/services/completion/dart/uri_contributor_test.dart b/pkg/analysis_server/test/services/completion/dart/uri_contributor_test.dart
index 513eb6d..e19ca34 100644
--- a/pkg/analysis_server/test/services/completion/dart/uri_contributor_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/uri_contributor_test.dart
@@ -118,7 +118,7 @@
Future<void> test_import_dart() async {
addTestSource('import "d^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('dart:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('dart:core', csKind: CompletionSuggestionKind.IMPORT);
@@ -130,7 +130,7 @@
Future<void> test_import_dart2() async {
addTestSource('import "dart:async"; import "d^"');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('dart:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('dart:core', csKind: CompletionSuggestionKind.IMPORT);
@@ -165,7 +165,7 @@
addTestSource('import "..^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 2);
assertNotSuggested('completion.dart');
assertSuggest('other.dart', csKind: CompletionSuggestionKind.IMPORT);
@@ -183,7 +183,7 @@
addTestSource('import "foo/^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -201,7 +201,7 @@
addTestSource('import "../^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -222,7 +222,7 @@
addTestSource('import "../^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -241,7 +241,7 @@
addTestSource('import "../b^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -285,7 +285,7 @@
addTestSource('import "p^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('package:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('package:foo/', csKind: CompletionSuggestionKind.IMPORT);
@@ -353,7 +353,7 @@
await computeSuggestions();
assertSuggest('package:foo/baz/too.dart',
csKind: CompletionSuggestionKind.IMPORT);
- expect(replacementOffset, completionOffset! - 16);
+ expect(replacementOffset, completionOffset - 16);
expect(replacementLength, 5 + 16);
}
@@ -366,7 +366,7 @@
addTestSource('import "p^" class');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('package:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('package:bar/', csKind: CompletionSuggestionKind.IMPORT);
@@ -388,7 +388,7 @@
addTestSource('import r"p^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('package:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('package:foo/', csKind: CompletionSuggestionKind.IMPORT);
@@ -447,7 +447,7 @@
Future<void> test_import_without_closing_quote_eof3() async {
addTestSource('import "d^');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('dart:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('package:', csKind: CompletionSuggestionKind.IMPORT);
@@ -456,7 +456,7 @@
Future<void> test_import_without_closing_quote_eof4() async {
addTestSource('import "d^"');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggest('dart:', csKind: CompletionSuggestionKind.IMPORT);
assertSuggest('package:', csKind: CompletionSuggestionKind.IMPORT);
@@ -500,7 +500,7 @@
addTestSource('library x; part "..^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 2);
assertNotSuggested('completion.dart');
assertSuggest('other.dart', csKind: CompletionSuggestionKind.IMPORT);
@@ -518,7 +518,7 @@
addTestSource('library x; part "foo/^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -536,7 +536,7 @@
addTestSource('library x; part "../^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -585,7 +585,7 @@
addTestSource('import "..^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 2);
assertNotSuggested('completion.dart');
assertSuggest('other.dart', csKind: CompletionSuggestionKind.IMPORT);
@@ -603,7 +603,7 @@
addTestSource('import "foo/^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -621,7 +621,7 @@
addTestSource('import "../^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -639,7 +639,7 @@
addTestSource('import "../b^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -675,7 +675,7 @@
addTestSource('library x; part "..^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 2);
+ expect(replacementOffset, completionOffset - 2);
expect(replacementLength, 2);
assertNotSuggested('completion.dart');
assertSuggest('other.dart', csKind: CompletionSuggestionKind.IMPORT);
@@ -693,7 +693,7 @@
addTestSource('library x; part "foo/^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 4);
+ expect(replacementOffset, completionOffset - 4);
expect(replacementLength, 4);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
@@ -711,7 +711,7 @@
addTestSource('library x; part "../^" import');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertNotSuggested('completion.dart');
assertNotSuggested('other.dart');
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 09ab271..3b75a53 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
@@ -213,7 +213,7 @@
f() { for(AbstractCrazyNonsenseClassName a^) {} }
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestName('abstractCrazyNonsenseClassName');
assertSuggestName('crazyNonsenseClassName');
@@ -234,7 +234,7 @@
f() { for(prefix.AbstractCrazyNonsenseClassName ^) {} }
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestName('abstractCrazyNonsenseClassName');
assertSuggestName('crazyNonsenseClassName');
@@ -254,7 +254,7 @@
f() { for(prefix.AbstractCrazyNonsenseClassName a^) {} }
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 1);
+ expect(replacementOffset, completionOffset - 1);
expect(replacementLength, 1);
assertSuggestName('abstractCrazyNonsenseClassName');
assertSuggestName('crazyNonsenseClassName');
@@ -363,7 +363,7 @@
AbstractCrazyNonsenseClassName abs^
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertSuggestName('abstractCrazyNonsenseClassName');
assertSuggestName('crazyNonsenseClassName');
@@ -383,7 +383,7 @@
AbstractCrazyNonsenseClassName abs^
''');
await computeSuggestions();
- expect(replacementOffset, completionOffset! - 3);
+ expect(replacementOffset, completionOffset - 3);
expect(replacementLength, 3);
assertSuggestName('abstractCrazyNonsenseClassName');
assertSuggestName('crazyNonsenseClassName');