Convert the remaining diagnostics tests to test for location
Change-Id: I00fef7e7228bbe6d63c48267f42b5efc4900556d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/105414
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_map_key_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_map_key_test.dart
index 5d865e5..0f7a698 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_map_key_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_map_key_test.dart
@@ -19,34 +19,44 @@
@reflectiveTest
class NonConstantMapKeyTest extends DriverResolutionTest {
test_const_ifElement_thenTrue_elseFinal() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
final dynamic a = 0;
const cond = true;
var v = const {if (cond) 0: 1 else a : 0};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [CompileTimeErrorCode.NON_CONSTANT_MAP_KEY]
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_KEY, 75, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 55, 25),
+ ]);
}
test_const_ifElement_thenTrue_thenFinal() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
final dynamic a = 0;
const cond = true;
var v = const {if (cond) a : 0};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [CompileTimeErrorCode.NON_CONSTANT_MAP_KEY]
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_KEY, 65, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 55, 15),
+ ]);
}
test_const_topLevel() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
final dynamic a = 0;
var v = const {a : 0};
-''', [CompileTimeErrorCode.NON_CONSTANT_MAP_KEY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_KEY, 36, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_map_value_from_deferred_library_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_map_value_from_deferred_library_test.dart
index 5e1e315..d116bb9 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_map_value_from_deferred_library_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_map_value_from_deferred_library_test.dart
@@ -24,17 +24,20 @@
// reports wrong error code
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
const cond = true;
var v = const { if (cond) 'a': 'b' else 'c' : a.c};
-''', [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY,
+ 99, 3),
+ ]);
}
test_const_ifElement_thenTrue_thenDeferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' deferred as a;
const cond = true;
@@ -42,28 +45,39 @@
''',
analysisOptions.experimentStatus.constant_update_2018
? [
- CompileTimeErrorCode
- .NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY
+ error(
+ CompileTimeErrorCode
+ .NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY,
+ 85,
+ 3),
]
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 69, 19),
+ ]);
}
test_const_topLevel_deferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
var v = const {'a' : a.c};
-''', [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY,
+ 55, 3),
+ ]);
}
test_const_topLevel_deferred_nested() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
var v = const {'a' : a.c + 1};
-''', [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE_FROM_DEFERRED_LIBRARY,
+ 55, 7),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_map_value_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_map_value_test.dart
index eb75842..a448d9c 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_map_value_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_map_value_test.dart
@@ -19,37 +19,45 @@
@reflectiveTest
class NonConstantMapValueTest extends DriverResolutionTest {
test_const_ifTrue_elseFinal() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
final dynamic a = 0;
const cond = true;
var v = const {if (cond) 'a': 'b', 'c' : a};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE]
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE, 81, 1),
+ ]
: [
- CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE,
- CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 55, 18),
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE, 81, 1),
]);
}
test_const_ifTrue_thenFinal() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
final dynamic a = 0;
const cond = true;
var v = const {if (cond) 'a' : a};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE]
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE, 71, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 55, 17),
+ ]);
}
test_const_topLevel() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
final dynamic a = 0;
var v = const {'a' : a};
-''', [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE, 42, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_set_element_from_deferred_library_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_set_element_from_deferred_library_test.dart
index f4d6ff7..7dd39c4 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_set_element_from_deferred_library_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_set_element_from_deferred_library_test.dart
@@ -25,17 +25,20 @@
// reports wrong error code
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
const cond = true;
var v = const {if (cond) null else a.c};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY,
+ 88, 3),
+ ]);
}
test_const_ifElement_thenTrue_thenDeferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' deferred as a;
const cond = true;
@@ -43,28 +46,39 @@
''',
analysisOptions.experimentStatus.constant_update_2018
? [
- CompileTimeErrorCode
- .NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY
+ error(
+ CompileTimeErrorCode
+ .NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY,
+ 78,
+ 3),
]
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 68, 13),
+ ]);
}
test_const_topLevel_deferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
var v = const {a.c};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY,
+ 49, 3),
+ ]);
}
test_const_topLevel_deferred_nested() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const int c = 1;''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' deferred as a;
var v = const {a.c + 1};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT_FROM_DEFERRED_LIBRARY,
+ 49, 7),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_set_element_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_set_element_test.dart
index cb461c7..7793685 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_set_element_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_set_element_test.dart
@@ -19,88 +19,152 @@
@reflectiveTest
class NonConstantSetElementTest extends DriverResolutionTest {
test_const_ifElement_thenElseFalse_finalElse() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 < 0) 0 else a};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 59, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 19),
+ ]);
}
test_const_ifElement_thenElseFalse_finalThen() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 < 0) a else 0};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 52, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 19),
+ ]);
}
test_const_ifElement_thenElseTrue_finalElse() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 > 0) 0 else a};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 59, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 19),
+ ]);
}
test_const_ifElement_thenElseTrue_finalThen() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 > 0) a else 0};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 52, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 19),
+ ]);
}
test_const_ifElement_thenFalse_constThen() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 0;
var v = const <int>{if (1 < 0) a};
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 12),
+ ]);
}
test_const_ifElement_thenFalse_finalThen() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 < 0) a};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 52, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 12),
+ ]);
}
test_const_ifElement_thenTrue_constThen() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 0;
var v = const <int>{if (1 > 0) a};
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 12),
+ ]);
}
test_const_ifElement_thenTrue_finalThen() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode(
+ '''
final dynamic a = 0;
var v = const <int>{if (1 > 0) a};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 52, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 12),
+ ]);
}
test_const_parameter() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
f(a) {
return const {a};
-}''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+}''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 23, 1),
+ ]);
}
test_const_spread_final() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(
+ r'''
final Set x = null;
var v = const {...x};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''',
+ analysisOptions.experimentStatus.constant_update_2018
+ ? [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 38, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 35, 4),
+ ]);
}
test_const_topVar() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
final dynamic a = 0;
var v = const <int>{a};
-''', [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+''', [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 1),
+ ]);
}
test_nonConst_topVar() async {
diff --git a/pkg/analyzer/test/src/diagnostics/non_constant_spread_expression_from_deferred_library_test.dart b/pkg/analyzer/test/src/diagnostics/non_constant_spread_expression_from_deferred_library_test.dart
index ac6d136..b8ad8b4 100644
--- a/pkg/analyzer/test/src/diagnostics/non_constant_spread_expression_from_deferred_library_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/non_constant_spread_expression_from_deferred_library_test.dart
@@ -23,7 +23,7 @@
test_inList_deferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const List c = [];''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' deferred as a;
f() {
@@ -31,10 +31,15 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? [
- CompileTimeErrorCode
- .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY
+ error(
+ CompileTimeErrorCode
+ .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY,
+ 59,
+ 3),
]
- : [CompileTimeErrorCode.NON_CONSTANT_LIST_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_LIST_ELEMENT, 56, 6),
+ ]);
}
test_inList_deferred_notConst() async {
@@ -50,7 +55,7 @@
test_inList_notDeferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const List c = [];''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' as a;
f() {
@@ -58,13 +63,15 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_LIST_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_LIST_ELEMENT, 47, 6),
+ ]);
}
test_inMap_deferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const Map c = <int, int>{};''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' deferred as a;
f() {
@@ -72,10 +79,15 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? [
- CompileTimeErrorCode
- .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY
+ error(
+ CompileTimeErrorCode
+ .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY,
+ 59,
+ 3),
]
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 56, 6),
+ ]);
}
test_inMap_notConst() async {
@@ -91,7 +103,7 @@
test_inMap_notDeferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const Map c = <int, int>{};''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' as a;
f() {
@@ -99,13 +111,15 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_MAP_ELEMENT, 47, 6),
+ ]);
}
test_inSet_deferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const Set c = <int>{};''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' deferred as a;
f() {
@@ -113,10 +127,15 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? [
- CompileTimeErrorCode
- .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY
+ error(
+ CompileTimeErrorCode
+ .NON_CONSTANT_SPREAD_EXPRESSION_FROM_DEFERRED_LIBRARY,
+ 59,
+ 3),
]
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 56, 6),
+ ]);
}
test_inSet_notConst() async {
@@ -132,7 +151,7 @@
test_inSet_notDeferred() async {
newFile(convertPath('/test/lib/lib1.dart'), content: r'''
const Set c = <int>{};''');
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
r'''
import 'lib1.dart' as a;
f() {
@@ -140,7 +159,9 @@
}''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 47, 6),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/not_iterable_spread_test.dart b/pkg/analyzer/test/src/diagnostics/not_iterable_spread_test.dart
index 129bb73..4b774e1 100644
--- a/pkg/analyzer/test/src/diagnostics/not_iterable_spread_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/not_iterable_spread_test.dart
@@ -29,30 +29,39 @@
}
test_notIterable_direct() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = [...a];
-''', [CompileTimeErrorCode.NOT_ITERABLE_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_ITERABLE_SPREAD, 23, 1),
+ ]);
}
test_notIterable_forElement() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = [for (var i in []) ...a];
-''', [CompileTimeErrorCode.NOT_ITERABLE_SPREAD]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 29, 1),
+ error(CompileTimeErrorCode.NOT_ITERABLE_SPREAD, 41, 1),
+ ]);
}
test_notIterable_ifElement_else() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = [if (1 > 0) ...[] else ...a];
-''', [CompileTimeErrorCode.NOT_ITERABLE_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_ITERABLE_SPREAD, 45, 1),
+ ]);
}
test_notIterable_ifElement_then() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = [if (1 > 0) ...a];
-''', [CompileTimeErrorCode.NOT_ITERABLE_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_ITERABLE_SPREAD, 34, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/not_map_spread_test.dart b/pkg/analyzer/test/src/diagnostics/not_map_spread_test.dart
index d5142c1..2f7e415 100644
--- a/pkg/analyzer/test/src/diagnostics/not_map_spread_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/not_map_spread_test.dart
@@ -29,30 +29,39 @@
}
test_notMap_direct() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = <int, int>{...a};
-''', [CompileTimeErrorCode.NOT_MAP_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_MAP_SPREAD, 33, 1),
+ ]);
}
test_notMap_forElement() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = <int, int>{for (var i in []) ...a};
-''', [CompileTimeErrorCode.NOT_MAP_SPREAD]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 39, 1),
+ error(CompileTimeErrorCode.NOT_MAP_SPREAD, 51, 1),
+ ]);
}
test_notMap_ifElement_else() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = <int, int>{if (1 > 0) ...<int, int>{} else ...a};
-''', [CompileTimeErrorCode.NOT_MAP_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_MAP_SPREAD, 65, 1),
+ ]);
}
test_notMap_ifElement_then() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var a = 0;
var v = <int, int>{if (1 > 0) ...a};
-''', [CompileTimeErrorCode.NOT_MAP_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_MAP_SPREAD, 44, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/not_null_aware_null_spread_test.dart b/pkg/analyzer/test/src/diagnostics/not_null_aware_null_spread_test.dart
index 56bcd2c..115ffde 100644
--- a/pkg/analyzer/test/src/diagnostics/not_null_aware_null_spread_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/not_null_aware_null_spread_test.dart
@@ -16,16 +16,20 @@
@reflectiveTest
class NotNullAwareNullSpreadTest extends DriverResolutionTest {
test_listLiteral_notNullAware_nullLiteral() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = [...null];
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 12, 4),
+ ]);
}
test_listLiteral_notNullAware_nullTyped() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
Null a = null;
var v = [...a];
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 27, 1),
+ ]);
}
test_listLiteral_nullAware_nullLiteral() async {
@@ -42,16 +46,20 @@
}
test_mapLiteral_notNullAware_nullLiteral() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = <int, int>{...null};
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 22, 4),
+ ]);
}
test_mapLiteral_notNullAware_nullType() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
Null a = null;
var v = <int, int>{...a};
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 37, 1),
+ ]);
}
test_mapLiteral_nullAware_nullLiteral() async {
@@ -68,16 +76,20 @@
}
test_setLiteral_notNullAware_nullLiteral() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = <int>{...null};
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 17, 4),
+ ]);
}
test_setLiteral_notNullAware_nullTyped() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
Null a = null;
var v = <int>{...a};
-''', [CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD]);
+''', [
+ error(CompileTimeErrorCode.NOT_NULL_AWARE_NULL_SPREAD, 32, 1),
+ ]);
}
test_setLiteral_nullAware_nullLiteral() async {
diff --git a/pkg/analyzer/test/src/diagnostics/null_aware_before_operator_test.dart b/pkg/analyzer/test/src/diagnostics/null_aware_before_operator_test.dart
index 7f89a71..6b5be07 100644
--- a/pkg/analyzer/test/src/diagnostics/null_aware_before_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/null_aware_before_operator_test.dart
@@ -48,11 +48,13 @@
}
test_minus() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x?.a - '';
}
-''', [HintCode.NULL_AWARE_BEFORE_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_BEFORE_OPERATOR, 9, 4),
+ ]);
}
test_not_equal() async {
diff --git a/pkg/analyzer/test/src/diagnostics/null_aware_in_condition_test.dart b/pkg/analyzer/test/src/diagnostics/null_aware_in_condition_test.dart
index 89203f2..c057732 100644
--- a/pkg/analyzer/test/src/diagnostics/null_aware_in_condition_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/null_aware_in_condition_test.dart
@@ -16,58 +16,72 @@
@reflectiveTest
class NullAwareInConditionTest extends DriverResolutionTest {
test_assert() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
assert (x?.a);
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 17, 4),
+ ]);
}
test_conditionalExpression() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
return x?.a ? 0 : 1;
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 16, 4),
+ ]);
}
test_do() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
do {} while (x?.a);
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 22, 4),
+ ]);
}
test_for() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
for (var v = x; v?.a; v = v.next) {}
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 25, 4),
+ ]);
}
test_if() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
if (x?.a) {}
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 13, 4),
+ ]);
}
test_if_parenthesized() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
if ((x?.a)) {}
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 13, 6),
+ ]);
}
test_while() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
while (x?.a) {}
}
-''', [HintCode.NULL_AWARE_IN_CONDITION]);
+''', [
+ error(HintCode.NULL_AWARE_IN_CONDITION, 16, 4),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/null_aware_in_logical_operator_test.dart b/pkg/analyzer/test/src/diagnostics/null_aware_in_logical_operator_test.dart
index b60810e..d445199 100644
--- a/pkg/analyzer/test/src/diagnostics/null_aware_in_logical_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/null_aware_in_logical_operator_test.dart
@@ -16,51 +16,63 @@
@reflectiveTest
class NullAwareInLogicalOperatorTest extends DriverResolutionTest {
test_conditionalAnd_first() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x?.a && x.b;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 9, 4),
+ ]);
}
test_conditionalAnd_second() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x.a && x?.b;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 16, 4),
+ ]);
}
test_conditionalAnd_third() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x.a && x.b && x?.c;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 23, 4),
+ ]);
}
test_conditionalOr_first() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x?.a || x.b;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 9, 4),
+ ]);
}
test_conditionalOr_second() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x.a || x?.b;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 16, 4),
+ ]);
}
test_conditionalOr_third() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
x.a || x.b || x?.c;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 23, 4),
+ ]);
}
test_for_noCondition() async {
@@ -80,10 +92,12 @@
}
test_not() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(x) {
!x?.a;
}
-''', [HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR]);
+''', [
+ error(HintCode.NULL_AWARE_IN_LOGICAL_OPERATOR, 10, 4),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/nullable_type_in_extends_clause_test.dart b/pkg/analyzer/test/src/diagnostics/nullable_type_in_extends_clause_test.dart
index 2478d79..b2f454b 100644
--- a/pkg/analyzer/test/src/diagnostics/nullable_type_in_extends_clause_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/nullable_type_in_extends_clause_test.dart
@@ -29,10 +29,12 @@
}
test_class_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
class B extends A? {}
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE, 27, 2),
+ ]);
}
test_classAlias_withClass_nonNullable() async {
@@ -44,11 +46,13 @@
}
test_classAlias_withClass_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
class B {}
class C = A? with B;
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE, 32, 2),
+ ]);
}
test_classAlias_withMixin_nonNullable() async {
@@ -60,10 +64,12 @@
}
test_classAlias_withMixin_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
mixin B {}
class C = A? with B;
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_EXTENDS_CLAUSE, 32, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/nullable_type_in_implements_clause_test.dart b/pkg/analyzer/test/src/diagnostics/nullable_type_in_implements_clause_test.dart
index ec81d73..39ffb8e 100644
--- a/pkg/analyzer/test/src/diagnostics/nullable_type_in_implements_clause_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/nullable_type_in_implements_clause_test.dart
@@ -29,10 +29,12 @@
}
test_class_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
class B implements A? {}
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_IMPLEMENTS_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_IMPLEMENTS_CLAUSE, 30, 2),
+ ]);
}
test_mixin_nonNullable() async {
@@ -43,9 +45,11 @@
}
test_mixin_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
mixin B implements A? {}
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_IMPLEMENTS_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_IMPLEMENTS_CLAUSE, 30, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/nullable_type_in_on_clause_test.dart b/pkg/analyzer/test/src/diagnostics/nullable_type_in_on_clause_test.dart
index d9613ee..60e319a 100644
--- a/pkg/analyzer/test/src/diagnostics/nullable_type_in_on_clause_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/nullable_type_in_on_clause_test.dart
@@ -29,9 +29,11 @@
}
test_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
mixin B on A? {}
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_ON_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_ON_CLAUSE, 22, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/nullable_type_in_with_clause_test.dart b/pkg/analyzer/test/src/diagnostics/nullable_type_in_with_clause_test.dart
index d25ad1f..c05909c 100644
--- a/pkg/analyzer/test/src/diagnostics/nullable_type_in_with_clause_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/nullable_type_in_with_clause_test.dart
@@ -29,10 +29,12 @@
}
test_class_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
class B with A? {}
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE, 24, 2),
+ ]);
}
test_classAlias_withClass_nonNullable() async {
@@ -44,11 +46,13 @@
}
test_classAlias_withClass_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
class B {}
class C = A with B?;
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE, 39, 2),
+ ]);
}
test_classAlias_withMixin_nonNullable() async {
@@ -60,10 +64,12 @@
}
test_classAlias_withMixin_nullable() async {
- assertErrorCodesInCode('''
+ assertErrorsInCode('''
class A {}
mixin B {}
class C = A with B?;
-''', [CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE]);
+''', [
+ error(CompileTimeErrorCode.NULLABLE_TYPE_IN_WITH_CLAUSE, 39, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/override_equals_but_not_hashcode_test.dart b/pkg/analyzer/test/src/diagnostics/override_equals_but_not_hashcode_test.dart
index 7ecb535..7def0c4 100644
--- a/pkg/analyzer/test/src/diagnostics/override_equals_but_not_hashcode_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_equals_but_not_hashcode_test.dart
@@ -25,9 +25,11 @@
@failingTest
test_overrideEquals_andNotHashCode() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
bool operator ==(x) {}
-}''', [HintCode.OVERRIDE_EQUALS_BUT_NOT_HASH_CODE]);
+}''', [
+ error(HintCode.OVERRIDE_EQUALS_BUT_NOT_HASH_CODE, 6, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_field_test.dart b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_field_test.dart
index 514ad99..2a978fe 100644
--- a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_field_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_field_test.dart
@@ -16,7 +16,7 @@
@reflectiveTest
class OverrideOnNonOverridingFieldTest extends DriverResolutionTest {
test_inInterface() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int get a => 0;
void set b(_) {}
@@ -29,11 +29,13 @@
int b;
@override
int c;
-}''', [CompileTimeErrorCode.INVALID_OVERRIDE]);
+}''', [
+ error(CompileTimeErrorCode.INVALID_OVERRIDE, 126, 5),
+ ]);
}
test_inSuperclass() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int get a => 0;
void set b(_) {}
@@ -46,16 +48,20 @@
int b;
@override
int c;
-}''', [CompileTimeErrorCode.INVALID_OVERRIDE]);
+}''', [
+ error(CompileTimeErrorCode.INVALID_OVERRIDE, 123, 5),
+ ]);
}
test_invalid() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
}
class B extends A {
@override
final int m = 1;
-}''', [HintCode.OVERRIDE_ON_NON_OVERRIDING_FIELD]);
+}''', [
+ error(HintCode.OVERRIDE_ON_NON_OVERRIDING_FIELD, 56, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_getter_test.dart b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_getter_test.dart
index 58dfef6..3a3345c 100644
--- a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_getter_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_getter_test.dart
@@ -38,12 +38,14 @@
}
test_invalid() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
}
class B extends A {
@override
int get m => 1;
-}''', [HintCode.OVERRIDE_ON_NON_OVERRIDING_GETTER]);
+}''', [
+ error(HintCode.OVERRIDE_ON_NON_OVERRIDING_GETTER, 54, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
index 608295d..19a2cbd 100644
--- a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
@@ -65,12 +65,14 @@
}
test_invalid() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
}
class B extends A {
@override
int m() => 1;
-}''', [HintCode.OVERRIDE_ON_NON_OVERRIDING_METHOD]);
+}''', [
+ error(HintCode.OVERRIDE_ON_NON_OVERRIDING_METHOD, 50, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_setter_test.dart b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_setter_test.dart
index 0625741..748aa24 100644
--- a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_setter_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_setter_test.dart
@@ -38,12 +38,14 @@
}
test_invalid() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
}
class B extends A {
@override
set m(int x) {}
-}''', [HintCode.OVERRIDE_ON_NON_OVERRIDING_SETTER]);
+}''', [
+ error(HintCode.OVERRIDE_ON_NON_OVERRIDING_SETTER, 50, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_constraint_verifier_support.dart b/pkg/analyzer/test/src/diagnostics/sdk_constraint_verifier_support.dart
index feb02f5..8bd294a 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_constraint_verifier_support.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_constraint_verifier_support.dart
@@ -2,10 +2,10 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
-import 'package:analyzer/error/error.dart';
import 'package:pub_semver/pub_semver.dart';
import '../dart/resolution/driver_resolution.dart';
+import '../../generated/test_support.dart';
/// A base class designed to be used by tests of the hints produced by the
/// SdkConstraintVerifier.
@@ -13,10 +13,10 @@
/// Verify that the [errorCodes] are produced if the [source] is analyzed in
/// a context that specifies the minimum SDK version to be [version].
verifyVersion(String version, String source,
- {List<ErrorCode> errorCodes}) async {
+ {List<ExpectedError> expectedErrors}) async {
driver.configure(
analysisOptions: analysisOptions
..sdkVersionConstraint = VersionConstraint.parse(version));
- await assertErrorCodesInCode(source, errorCodes ?? []);
+ await assertErrorsInCode(source, expectedErrors ?? []);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_as_expression_in_const_context_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_as_expression_in_const_context_test.dart
index 2dc0373..106093c 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_as_expression_in_const_context_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_as_expression_in_const_context_test.dart
@@ -33,6 +33,8 @@
verifyVersion('2.2.0', '''
const dynamic a = 2;
const c = (a as int) + 2;
-''', errorCodes: [HintCode.SDK_VERSION_AS_EXPRESSION_IN_CONST_CONTEXT]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_AS_EXPRESSION_IN_CONST_CONTEXT, 32, 8),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_async_exported_from_core_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_async_exported_from_core_test.dart
index 7e04d6d..2a296e2 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_async_exported_from_core_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_async_exported_from_core_test.dart
@@ -72,7 +72,9 @@
import 'dart:core' show Future, int;
Future<int> zero() async => 0;
-''', errorCodes: [HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE, 38, 6),
+ ]);
}
test_lessThan_explicitImportOfExportingLibrary() async {
@@ -89,7 +91,9 @@
test_lessThan_implicitImportOfCore() async {
await verifyVersion('2.0.0', '''
Future<int> zero() async => 0;
-''', errorCodes: [HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE, 0, 6),
+ ]);
}
test_lessThan_implicitImportOfCore_inPart() async {
@@ -100,7 +104,9 @@
part of lib;
Future<int> zero() async => 0;
-''', errorCodes: [HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_ASYNC_EXPORTED_FROM_CORE, 14, 6),
+ ]);
}
test_lessThan_onlyReferencedInExport_hide() async {
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_bool_operator_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_bool_operator_test.dart
index 29f4773..4183627 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_bool_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_bool_operator_test.dart
@@ -30,7 +30,9 @@
test_and_const_lessThan() {
verifyVersion('2.2.0', '''
const c = true & false;
-''', errorCodes: [HintCode.SDK_VERSION_BOOL_OPERATOR]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_BOOL_OPERATOR, 15, 1),
+ ]);
}
test_and_nonConst_equals() {
@@ -54,7 +56,9 @@
test_or_const_lessThan() {
verifyVersion('2.2.0', '''
const c = true | false;
-''', errorCodes: [HintCode.SDK_VERSION_BOOL_OPERATOR]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_BOOL_OPERATOR, 15, 1),
+ ]);
}
test_or_nonConst_equals() {
@@ -78,7 +82,9 @@
test_xor_const_lessThan() {
verifyVersion('2.2.0', '''
const c = true ^ false;
-''', errorCodes: [HintCode.SDK_VERSION_BOOL_OPERATOR]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_BOOL_OPERATOR, 15, 1),
+ ]);
}
test_xor_nonConst_equals() {
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_eq_eq_operator_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_eq_eq_operator_test.dart
index f8093af..e1814bb 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_eq_eq_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_eq_eq_operator_test.dart
@@ -38,7 +38,9 @@
}
const A a = A();
const c = a == null;
-''', errorCodes: [HintCode.SDK_VERSION_EQ_EQ_OPERATOR_IN_CONST_CONTEXT]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_EQ_EQ_OPERATOR_IN_CONST_CONTEXT, 54, 2),
+ ]);
}
test_right_equals() {
@@ -58,6 +60,8 @@
}
const A a = A();
const c = null == a;
-''', errorCodes: [HintCode.SDK_VERSION_EQ_EQ_OPERATOR_IN_CONST_CONTEXT]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_EQ_EQ_OPERATOR_IN_CONST_CONTEXT, 57, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_gt_gt_gt_operator_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_gt_gt_gt_operator_test.dart
index 38d71f0..ed8c441 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_gt_gt_gt_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_gt_gt_gt_operator_test.dart
@@ -26,7 +26,9 @@
// UNDEFINED_OPERATOR when triple_shift is enabled by default.
verifyVersion('2.3.2', '''
const a = 42 >>> 3;
-''', errorCodes: [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', expectedErrors: [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 13, 3),
+ ]);
}
test_const_lessThan() {
@@ -34,9 +36,9 @@
// UNDEFINED_OPERATOR when triple_shift is enabled by default.
verifyVersion('2.2.0', '''
const a = 42 >>> 3;
-''', errorCodes: [
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
- HintCode.SDK_VERSION_GT_GT_GT_OPERATOR
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_GT_GT_GT_OPERATOR, 13, 3),
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 13, 3),
]);
}
@@ -53,7 +55,9 @@
class A {
A operator >>>(A a) => this;
}
-''', errorCodes: [HintCode.SDK_VERSION_GT_GT_GT_OPERATOR]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_GT_GT_GT_OPERATOR, 23, 3),
+ ]);
}
test_nonConst_equals() {
@@ -61,7 +65,9 @@
// UNDEFINED_OPERATOR when constant update is enabled by default.
verifyVersion('2.3.2', '''
var a = 42 >>> 3;
-''', errorCodes: [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', expectedErrors: [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 11, 3),
+ ]);
}
test_nonConst_lessThan() {
@@ -69,9 +75,9 @@
// UNDEFINED_OPERATOR when constant update is enabled by default.
verifyVersion('2.2.0', '''
var a = 42 >>> 3;
-''', errorCodes: [
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
- HintCode.SDK_VERSION_GT_GT_GT_OPERATOR
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_GT_GT_GT_OPERATOR, 11, 3),
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 11, 3),
]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_is_expression_in_const_context_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_is_expression_in_const_context_test.dart
index 9b19e3c..fb7197a 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_is_expression_in_const_context_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_is_expression_in_const_context_test.dart
@@ -33,6 +33,8 @@
verifyVersion('2.2.0', '''
const dynamic a = 2;
const c = a is int;
-''', errorCodes: [HintCode.SDK_VERSION_IS_EXPRESSION_IN_CONST_CONTEXT]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_IS_EXPRESSION_IN_CONST_CONTEXT, 31, 8),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_never_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_never_test.dart
index 749e00f..f9703db 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_never_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_never_test.dart
@@ -43,6 +43,8 @@
test_lessThan() async {
await verifyVersion('2.3.0', '''
Never sink;
-''', errorCodes: [HintCode.SDK_VERSION_NEVER]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_NEVER, 0, 5),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_set_literal_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_set_literal_test.dart
index 4a7b294..8164001 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_set_literal_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_set_literal_test.dart
@@ -30,6 +30,8 @@
test_lessThan() async {
await verifyVersion('2.1.0', '''
Set<int> zero() => <int>{0};
-''', errorCodes: [HintCode.SDK_VERSION_SET_LITERAL]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_SET_LITERAL, 19, 8),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/sdk_version_ui_as_code_test.dart b/pkg/analyzer/test/src/diagnostics/sdk_version_ui_as_code_test.dart
index 53017da..b75a1a6 100644
--- a/pkg/analyzer/test/src/diagnostics/sdk_version_ui_as_code_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/sdk_version_ui_as_code_test.dart
@@ -30,6 +30,8 @@
test_lessThan() async {
await verifyVersion('2.2.1', '''
List<int> zero() => [if (0 < 1) 0];
-''', errorCodes: [HintCode.SDK_VERSION_UI_AS_CODE]);
+''', expectedErrors: [
+ error(HintCode.SDK_VERSION_UI_AS_CODE, 21, 12),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/set_element_type_not_assignable_test.dart b/pkg/analyzer/test/src/diagnostics/set_element_type_not_assignable_test.dart
index 641a352..caac598 100644
--- a/pkg/analyzer/test/src/diagnostics/set_element_type_not_assignable_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/set_element_type_not_assignable_test.dart
@@ -19,7 +19,7 @@
@reflectiveTest
class SetElementTypeNotAssignableTest extends DriverResolutionTest {
test_const_ifElement_thenElseFalse_intInt() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 0;
const dynamic b = 0;
@@ -27,81 +27,101 @@
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 62, 19),
+ ]);
}
test_const_ifElement_thenElseFalse_intString() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 0;
const dynamic b = 'b';
var v = const <int>{if (1 < 0) a else b};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ ? [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 82, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 64, 19),
+ ]);
}
test_const_ifElement_thenFalse_intString() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
var v = const <int>{if (1 < 0) 'a'};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]
+ ? [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 31, 3),
+ ]
: [
- StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE,
- CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 20, 14),
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 31, 3),
]);
}
test_const_ifElement_thenFalse_intString_dynamic() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 'a';
var v = const <int>{if (1 < 0) a};
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 43, 12),
+ ]);
}
test_const_ifElement_thenTrue_intInt() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 0;
var v = const <int>{if (true) a};
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 41, 11),
+ ]);
}
test_const_ifElement_thenTrue_intString() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
const dynamic a = 'a';
var v = const <int>{if (true) a};
''',
analysisOptions.experimentStatus.constant_update_2018
- ? [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ ? [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 53, 1),
+ ]
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 43, 11),
+ ]);
}
test_const_spread_intInt() async {
- await assertErrorCodesInCode(
+ await assertErrorsInCode(
'''
var v = const <int>{...[0, 1]};
''',
analysisOptions.experimentStatus.constant_update_2018
? []
- : [CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT]);
+ : [
+ error(CompileTimeErrorCode.NON_CONSTANT_SET_ELEMENT, 20, 9),
+ ]);
}
test_explicitTypeArgs_const() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = const <String>{42};
-''', [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]);
+''', [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 23, 2),
+ ]);
}
test_explicitTypeArgs_const_actualTypeMatch() async {
@@ -112,16 +132,20 @@
}
test_explicitTypeArgs_const_actualTypeMismatch() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
const dynamic x = 42;
var v = const <String>{x};
-''', [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]);
+''', [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 45, 1),
+ ]);
}
test_explicitTypeArgs_notConst() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = <String>{42};
-''', [StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE]);
+''', [
+ error(StaticWarningCode.SET_ELEMENT_TYPE_NOT_ASSIGNABLE, 17, 2),
+ ]);
}
test_nonConst_ifElement_thenElseFalse_intDynamic() async {
@@ -141,9 +165,11 @@
}
test_nonConst_ifElement_thenFalse_intString() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
var v = <int>[if (1 < 0) 'a'];
-''', [StaticWarningCode.LIST_ELEMENT_TYPE_NOT_ASSIGNABLE]);
+''', [
+ error(StaticWarningCode.LIST_ELEMENT_TYPE_NOT_ASSIGNABLE, 25, 3),
+ ]);
}
test_nonConst_ifElement_thenTrue_intDynamic() async {
diff --git a/pkg/analyzer/test/src/diagnostics/top_level_instance_getter_test.dart b/pkg/analyzer/test/src/diagnostics/top_level_instance_getter_test.dart
index 2a28469..ceb09b7 100644
--- a/pkg/analyzer/test/src/diagnostics/top_level_instance_getter_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/top_level_instance_getter_test.dart
@@ -89,64 +89,76 @@
}
test_implicitlyTyped() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
get g => 0;
}
var b = new A().g;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 42, 1),
+ ]);
}
test_implicitlyTyped_call() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
get g => () => 0;
}
var a = new A();
var b = a.g();
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 57, 5),
+ ]);
}
test_implicitlyTyped_field() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var g = 0;
}
var b = new A().g;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 41, 1),
+ ]);
}
test_implicitlyTyped_field_call() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var g = () => 0;
}
var a = new A();
var b = a.g();
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 56, 5),
+ ]);
}
test_implicitlyTyped_field_prefixedIdentifier() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var g = 0;
}
var a = new A();
var b = a.g;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 52, 1),
+ ]);
}
test_implicitlyTyped_fn() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because f is
// generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = 0;
}
int f<T>(x) => 0;
var a = new A();
var b = f(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 72, 1),
+ ]);
}
test_implicitlyTyped_fn_explicit_type_params() async {
@@ -191,13 +203,15 @@
test_implicitlyTyped_invoke() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because the
// closure is generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = 0;
}
var a = new A();
var b = (<T>(y) => 0)(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 66, 1),
+ ]);
}
test_implicitlyTyped_invoke_explicit_type_params() async {
@@ -227,14 +241,16 @@
test_implicitlyTyped_method() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because f is
// generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = 0;
int f<T>(int x) => 0;
}
var a = new A();
var b = a.f(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 80, 1),
+ ]);
}
test_implicitlyTyped_method_explicit_type_params() async {
@@ -266,7 +282,7 @@
test_implicitlyTyped_new() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because B is
// generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = 0;
}
@@ -275,7 +291,9 @@
}
var a = new A();
var b = new B(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 81, 1),
+ ]);
}
test_implicitlyTyped_new_explicit_type_params() async {
@@ -329,7 +347,7 @@
test_implicitlyTyped_new_named() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because B is
// generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = 0;
}
@@ -338,7 +356,9 @@
}
var a = new A();
var b = new B.named(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 93, 1),
+ ]);
}
test_implicitlyTyped_new_not_generic() async {
@@ -397,30 +417,34 @@
''');
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because B is
// generic, so the type of a.x might affect the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
import 'lib1.dart' as foo;
class A {
var x = 0;
}
var a = new A();
var b = new foo.B(a.x);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 89, 1),
+ ]);
}
test_implicitlyTyped_prefixedIdentifier() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
get g => 0;
}
var a = new A();
var b = a.g;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 53, 1),
+ ]);
}
test_implicitlyTyped_propertyAccessLhs() async {
// The reference to a.x triggers TOP_LEVEL_INSTANCE_GETTER because the type
// of a.x affects the lookup of y, which in turn affects the type of b.
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
var x = new B();
int operator[](int value) => 0;
@@ -430,7 +454,9 @@
}
var a = new A();
var b = (a.x).y;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_GETTER]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_GETTER, 114, 1),
+ ]);
}
test_prefixedIdentifier() async {
diff --git a/pkg/analyzer/test/src/diagnostics/top_level_instance_method_test.dart b/pkg/analyzer/test/src/diagnostics/top_level_instance_method_test.dart
index 221a7f0..00a78e1 100644
--- a/pkg/analyzer/test/src/diagnostics/top_level_instance_method_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/top_level_instance_method_test.dart
@@ -16,12 +16,14 @@
@reflectiveTest
class TopLevelInstanceMethodTest extends DriverResolutionTest {
test_noParameter() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
f() => 0;
}
var x = new A().f();
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_METHOD]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_METHOD, 32, 11),
+ ]);
}
test_parameter() async {
@@ -34,12 +36,14 @@
}
test_parameter_generic() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
int f<T>(v) => 0;
}
var x = new A().f(0);
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_METHOD]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_METHOD, 40, 12),
+ ]);
}
test_parameter_generic_explicit() async {
@@ -61,21 +65,25 @@
}
test_tearOff() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
f() => 0;
}
var x = new A().f;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_METHOD]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_METHOD, 40, 1),
+ ]);
}
test_tearOff_parameter() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
class A {
int f(v) => 0;
}
var x = new A().f;
-''', [StrongModeCode.TOP_LEVEL_INSTANCE_METHOD]);
+''', [
+ error(StrongModeCode.TOP_LEVEL_INSTANCE_METHOD, 45, 1),
+ ]);
}
test_tearoff_static() async {
diff --git a/pkg/analyzer/test/src/diagnostics/type_check_is_not_null_test.dart b/pkg/analyzer/test/src/diagnostics/type_check_is_not_null_test.dart
index 9a473f0..e5e14a3 100644
--- a/pkg/analyzer/test/src/diagnostics/type_check_is_not_null_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/type_check_is_not_null_test.dart
@@ -16,10 +16,12 @@
@reflectiveTest
class TypeCheckIsNotNullTest extends DriverResolutionTest {
test_not_Null() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
bool m(i) {
return i is! Null;
}
-''', [HintCode.TYPE_CHECK_IS_NOT_NULL]);
+''', [
+ error(HintCode.TYPE_CHECK_IS_NOT_NULL, 21, 10),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/type_check_is_null_test.dart b/pkg/analyzer/test/src/diagnostics/type_check_is_null_test.dart
index 42d8555..19d804b 100644
--- a/pkg/analyzer/test/src/diagnostics/type_check_is_null_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/type_check_is_null_test.dart
@@ -16,10 +16,12 @@
@reflectiveTest
class TypeCheckIsNullTest extends DriverResolutionTest {
test_is_Null() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
bool m(i) {
return i is Null;
}
-''', [HintCode.TYPE_CHECK_IS_NULL]);
+''', [
+ error(HintCode.TYPE_CHECK_IS_NULL, 21, 9),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unchecked_use_of_nullable_value_test.dart b/pkg/analyzer/test/src/diagnostics/unchecked_use_of_nullable_value_test.dart
index 08ffb33..6dc6cfc 100644
--- a/pkg/analyzer/test/src/diagnostics/unchecked_use_of_nullable_value_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unchecked_use_of_nullable_value_test.dart
@@ -31,12 +31,14 @@
}
test_and_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
if(x && true) {}
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 22, 1),
+ ]);
}
test_as_nullable() async {
@@ -58,12 +60,14 @@
}
test_assert_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
assert(x);
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 26, 1),
+ ]);
}
test_await_nonNullable() async {
@@ -94,12 +98,14 @@
}
test_cascade_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x..isEven;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_eq_nullable() async {
@@ -121,12 +127,15 @@
}
test_forLoop_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
List? x;
for (var y in x) {}
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 28, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 33, 1),
+ ]);
}
test_if_nonNullable() async {
@@ -139,12 +148,14 @@
}
test_if_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
if (x) {}
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 23, 1),
+ ]);
}
test_index_nonNullable() async {
@@ -157,12 +168,14 @@
}
test_index_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
List? x;
x[0];
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 19, 1),
+ ]);
}
test_invoke_dynamicFunctionType_nonNullable() async {
@@ -175,12 +188,14 @@
}
test_invoke_dynamicFunctionType_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
Function? x;
x();
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 23, 1),
+ ]);
}
test_invoke_nonNullable() async {
@@ -193,12 +208,14 @@
}
test_invoke_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
Function()? x;
x();
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 25, 1),
+ ]);
}
test_invoke_parenthesized_nonNullable() async {
@@ -247,12 +264,14 @@
}
test_member_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x.isEven;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_member_parenthesized_hashCode_nullable() async {
@@ -265,12 +284,14 @@
}
test_member_parenthesized_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
(x).isEven;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 3),
+ ]);
}
test_member_parenthesized_runtimeType_nullable() async {
@@ -283,21 +304,25 @@
}
test_member_potentiallyNullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m<T extends int?>() {
T x;
x.isEven;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 31, 1),
+ ]);
}
test_member_potentiallyNullable_called() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m<T extends Function>() {
List<T?> x;
x.first();
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 44, 5),
+ ]);
}
test_member_questionDot_nullable() async {
@@ -337,12 +362,14 @@
}
test_method_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x.round();
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_method_questionDot_nullable() async {
@@ -373,12 +400,15 @@
}
test_minusEq_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x -= 1;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_not_nonNullable() async {
@@ -391,12 +421,14 @@
}
test_not_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
if(!x) {}
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 23, 1),
+ ]);
}
test_notEq_nullable() async {
@@ -418,12 +450,14 @@
}
test_operatorMinus_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x - 3;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_operatorPlus_nonNullable() async {
@@ -436,12 +470,14 @@
}
test_operatorPlus_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x + 3;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_operatorPostfixDec_nonNullable() async {
@@ -454,12 +490,15 @@
}
test_operatorPostfixDec_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x--;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_operatorPostfixInc_nonNullable() async {
@@ -472,12 +511,15 @@
}
test_operatorPostfixInc_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x++;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_operatorPrefixDec_nonNullable() async {
@@ -490,12 +532,15 @@
}
test_operatorPrefixDec_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
--x;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 20, 1),
+ ]);
}
test_operatorPrefixInc_nonNullable() async {
@@ -508,12 +553,15 @@
}
test_operatorPrefixInc_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
++x;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 20, 1),
+ ]);
}
test_operatorUnaryMinus_nonNullable() async {
@@ -526,12 +574,15 @@
}
test_operatorUnaryMinus_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
-x;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 19, 1),
+ ]);
}
test_or_nonNullable() async {
@@ -544,12 +595,14 @@
}
test_or_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
if(x || false) {}
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 22, 1),
+ ]);
}
test_plusEq_nonNullable() async {
@@ -562,21 +615,26 @@
}
test_plusEq_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
int? x;
x += 1;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 13, 1),
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 18, 1),
+ ]);
}
test_ternary_condition_nullable() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m() {
bool? x;
x ? 0 : 1;
}
-''', [StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE]);
+''', [
+ error(StaticWarningCode.UNCHECKED_USE_OF_NULLABLE_VALUE, 19, 1),
+ ]);
}
test_ternary_lhs_nullable() async {
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_getter_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_getter_test.dart
index 3713aef..6feaae5 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_getter_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_getter_test.dart
@@ -16,11 +16,13 @@
@reflectiveTest
class UndefinedGetterTest extends DriverResolutionTest {
test_ifElement_inList_notPromoted() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f(int x) {
return [if (x is String) x.length];
}
-''', [StaticTypeWarningCode.UNDEFINED_GETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_GETTER, 40, 6),
+ ]);
}
test_ifElement_inList_promoted() async {
@@ -32,11 +34,13 @@
}
test_ifElement_inMap_notPromoted() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f(int x) {
return {if (x is String) x : x.length};
}
-''', [StaticTypeWarningCode.UNDEFINED_GETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_GETTER, 44, 6),
+ ]);
}
test_ifElement_inMap_promoted() async {
@@ -48,11 +52,13 @@
}
test_ifElement_inSet_notPromoted() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f(int x) {
return {if (x is String) x.length};
}
-''', [StaticTypeWarningCode.UNDEFINED_GETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_GETTER, 40, 6),
+ ]);
}
test_ifElement_inSet_promoted() async {
@@ -64,13 +70,15 @@
}
test_ifStatement_notPromoted() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f(int x) {
if (x is String) {
x.length;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_GETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_GETTER, 38, 6),
+ ]);
}
test_ifStatement_promoted() async {
@@ -84,12 +92,14 @@
}
test_promotedTypeParameter_regress35305() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
void f<X extends num, Y extends X>(Y y) {
if (y is int) {
y.isEven;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_GETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_GETTER, 66, 6),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_hidden_name_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_hidden_name_test.dart
index 888721c..94e0131 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_hidden_name_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_hidden_name_test.dart
@@ -17,15 +17,20 @@
class UndefinedHiddenNameTest extends DriverResolutionTest {
test_export() async {
newFile('/test/lib/lib1.dart');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
export 'lib1.dart' hide a;
-''', [HintCode.UNDEFINED_HIDDEN_NAME]);
+''', [
+ error(HintCode.UNDEFINED_HIDDEN_NAME, 24, 1),
+ ]);
}
test_import() async {
newFile('/test/lib/lib1.dart');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' hide a;
-''', [HintCode.UNUSED_IMPORT, HintCode.UNDEFINED_HIDDEN_NAME]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 7, 11),
+ error(HintCode.UNDEFINED_HIDDEN_NAME, 24, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
index 3a8e91f..895322a 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
@@ -24,11 +24,14 @@
}
test_forElement_inList_outsideElement() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f() {
return [for (int x in []) null, x];
}
-''', [StaticWarningCode.UNDEFINED_IDENTIFIER]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 25, 1),
+ error(StaticWarningCode.UNDEFINED_IDENTIFIER, 40, 1),
+ ]);
}
test_forStatement_inBody() async {
@@ -42,11 +45,14 @@
}
test_forStatement_outsideBody() async {
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
f() {
for (int x in []) {}
x;
}
-''', [StaticWarningCode.UNDEFINED_IDENTIFIER]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 17, 1),
+ error(StaticWarningCode.UNDEFINED_IDENTIFIER, 31, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_operator_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_operator_test.dart
index a10a3ee..8ce6206 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_operator_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_operator_test.dart
@@ -16,18 +16,20 @@
@reflectiveTest
class UndefinedOperatorTest extends DriverResolutionTest {
test_binaryExpression() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
f(var a) {
if (a is A) {
a + 1;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 44, 1),
+ ]);
}
test_binaryExpression_inSubtype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
class B extends A {
operator +(B b) {}
@@ -37,11 +39,13 @@
a + 1;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 87, 1),
+ ]);
}
test_indexBoth() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
f(var a) {
if (a is A) {
@@ -49,13 +53,13 @@
}
}
''', [
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 43, 3),
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 43, 3),
]);
}
test_indexBoth_inSubtype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
class B extends A {
operator [](int index) {}
@@ -66,24 +70,26 @@
}
}
''', [
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
- StaticTypeWarningCode.UNDEFINED_OPERATOR,
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 93, 3),
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 93, 3),
]);
}
test_indexGetter() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
f(var a) {
if (a is A) {
a[0];
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 43, 3),
+ ]);
}
test_indexGetter_inSubtype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
class B extends A {
operator [](int index) {}
@@ -93,22 +99,26 @@
a[0];
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 93, 3),
+ ]);
}
test_indexSetter() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
f(var a) {
if (a is A) {
a[0] = 1;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 43, 3),
+ ]);
}
test_indexSetter_inSubtype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
class B extends A {
operator []=(i, v) {}
@@ -118,7 +128,9 @@
a[0] = 1;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_OPERATOR]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_OPERATOR, 89, 3),
+ ]);
}
test_postfixExpression() async {
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_prefixed_name_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_prefixed_name_test.dart
index 6de8429..3485b60 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_prefixed_name_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_prefixed_name_test.dart
@@ -17,19 +17,23 @@
class UndefinedPrefixedNameTest extends DriverResolutionTest {
test_getterContext() async {
newFile('/test/lib/lib.dart');
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
import 'lib.dart' as p;
f() => p.c;
-''', [StaticTypeWarningCode.UNDEFINED_PREFIXED_NAME]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_PREFIXED_NAME, 33, 1),
+ ]);
}
test_setterContext() async {
newFile('/test/lib/lib.dart');
- await assertErrorCodesInCode('''
+ await assertErrorsInCode('''
import 'lib.dart' as p;
f() {
p.c = 0;
}
-''', [StaticTypeWarningCode.UNDEFINED_PREFIXED_NAME]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_PREFIXED_NAME, 34, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_setter_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_setter_test.dart
index 7306c0e..827b77e 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_setter_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_setter_test.dart
@@ -16,7 +16,7 @@
@reflectiveTest
class UndefinedSetterTest extends DriverResolutionTest {
test_inSubtype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
class B extends A {
set b(x) {}
@@ -26,17 +26,21 @@
a.b = 0;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_SETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_SETTER, 80, 1),
+ ]);
}
test_inType() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {}
f(var a) {
if(a is A) {
a.m = 0;
}
}
-''', [StaticTypeWarningCode.UNDEFINED_SETTER]);
+''', [
+ error(StaticTypeWarningCode.UNDEFINED_SETTER, 43, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_shown_name_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_shown_name_test.dart
index 3243bb2..121fbda 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_shown_name_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_shown_name_test.dart
@@ -17,15 +17,20 @@
class UndefinedShownNameTest extends DriverResolutionTest {
test_export() async {
newFile('/test/lib/lib1.dart');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
export 'lib1.dart' show a;
-''', [HintCode.UNDEFINED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNDEFINED_SHOWN_NAME, 24, 1),
+ ]);
}
test_import() async {
newFile('/test/lib/lib1.dart');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' show a;
-''', [HintCode.UNUSED_IMPORT, HintCode.UNDEFINED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 7, 11),
+ error(HintCode.UNDEFINED_SHOWN_NAME, 24, 1),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unnecessary_cast_test.dart b/pkg/analyzer/test/src/diagnostics/unnecessary_cast_test.dart
index 0d89796..a7a5c1a 100644
--- a/pkg/analyzer/test/src/diagnostics/unnecessary_cast_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unnecessary_cast_test.dart
@@ -59,13 +59,15 @@
test_generics() async {
// dartbug.com/18953
- assertErrorCodesInCode(r'''
+ assertErrorsInCode(r'''
import 'dart:async';
Future<int> f() => new Future.value(0);
void g(bool c) {
(c ? f(): new Future.value(0) as Future<int>).then((int value) {});
}
-''', [HintCode.UNNECESSARY_CAST]);
+''', [
+ error(HintCode.UNNECESSARY_CAST, 90, 34),
+ ]);
}
test_parameter_A() async {
@@ -92,18 +94,24 @@
}
test_type_supertype() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(int i) {
var b = i as Object;
}
-''', [HintCode.UNNECESSARY_CAST]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 17, 1),
+ error(HintCode.UNNECESSARY_CAST, 21, 11),
+ ]);
}
test_type_type() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(num i) {
var b = i as num;
}
-''', [HintCode.UNNECESSARY_CAST]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 17, 1),
+ error(HintCode.UNNECESSARY_CAST, 21, 8),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unnecessary_no_such_method_test.dart b/pkg/analyzer/test/src/diagnostics/unnecessary_no_such_method_test.dart
index 0801ae0..d443e12 100644
--- a/pkg/analyzer/test/src/diagnostics/unnecessary_no_such_method_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unnecessary_no_such_method_test.dart
@@ -16,7 +16,7 @@
@reflectiveTest
class UnnecessaryNoSuchMethodTest extends DriverResolutionTest {
test_blockBody() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
noSuchMethod(x) => super.noSuchMethod(x);
}
@@ -26,7 +26,9 @@
return super.noSuchMethod(y);
}
}
-''', [HintCode.UNNECESSARY_NO_SUCH_METHOD]);
+''', [
+ error(HintCode.UNNECESSARY_NO_SUCH_METHOD, 87, 55),
+ ]);
}
test_blockBody_notReturnStatement() async {
@@ -59,7 +61,7 @@
}
test_expressionBody() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
noSuchMethod(x) => super.noSuchMethod(x);
}
@@ -67,7 +69,9 @@
mmm();
noSuchMethod(y) => super.noSuchMethod(y);
}
-''', [HintCode.UNNECESSARY_NO_SUCH_METHOD]);
+''', [
+ error(HintCode.UNNECESSARY_NO_SUCH_METHOD, 87, 41),
+ ]);
}
test_expressionBody_notNoSuchMethod() async {
diff --git a/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_false_test.dart b/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_false_test.dart
index e3316ad..727f808 100644
--- a/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_false_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_false_test.dart
@@ -16,24 +16,32 @@
@reflectiveTest
class UnnecessaryTypeCheckFalseTest extends DriverResolutionTest {
test_null_not_Null() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
bool b = null is! Null;
-''', [HintCode.UNNECESSARY_TYPE_CHECK_FALSE]);
+''', [
+ error(HintCode.UNNECESSARY_TYPE_CHECK_FALSE, 9, 13),
+ ]);
}
test_type_not_dynamic() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(i) {
bool b = i is! dynamic;
}
-''', [HintCode.UNNECESSARY_TYPE_CHECK_FALSE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 14, 1),
+ error(HintCode.UNNECESSARY_TYPE_CHECK_FALSE, 18, 13),
+ ]);
}
test_type_not_object() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(i) {
bool b = i is! Object;
}
-''', [HintCode.UNNECESSARY_TYPE_CHECK_FALSE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 14, 1),
+ error(HintCode.UNNECESSARY_TYPE_CHECK_FALSE, 18, 12),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_true_test.dart b/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_true_test.dart
index 269d39a..daae87f 100644
--- a/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_true_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unnecessary_type_check_true_test.dart
@@ -16,24 +16,32 @@
@reflectiveTest
class UnnecessaryTypeCheckTrueTest extends DriverResolutionTest {
test_null_is_Null() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
bool b = null is Null;
-''', [HintCode.UNNECESSARY_TYPE_CHECK_TRUE]);
+''', [
+ error(HintCode.UNNECESSARY_TYPE_CHECK_TRUE, 9, 12),
+ ]);
}
test_type_is_dynamic() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(i) {
bool b = i is dynamic;
}
-''', [HintCode.UNNECESSARY_TYPE_CHECK_TRUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 14, 1),
+ error(HintCode.UNNECESSARY_TYPE_CHECK_TRUE, 18, 12),
+ ]);
}
test_type_is_object() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
m(i) {
bool b = i is Object;
}
-''', [HintCode.UNNECESSARY_TYPE_CHECK_TRUE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 14, 1),
+ error(HintCode.UNNECESSARY_TYPE_CHECK_TRUE, 18, 11),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unused_catch_clause_test.dart b/pkg/analyzer/test/src/diagnostics/unused_catch_clause_test.dart
index de74c41..9eefe4c 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_catch_clause_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_catch_clause_test.dart
@@ -19,13 +19,15 @@
bool get enableUnusedLocalVariable => true;
test_on_unusedException() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
try {
} on String catch (exception) {
}
}
-''', [HintCode.UNUSED_CATCH_CLAUSE]);
+''', [
+ error(HintCode.UNUSED_CATCH_CLAUSE, 38, 9),
+ ]);
}
test_on_usedException() async {
diff --git a/pkg/analyzer/test/src/diagnostics/unused_catch_stack_test.dart b/pkg/analyzer/test/src/diagnostics/unused_catch_stack_test.dart
index 84303fa..9ee0541 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_catch_stack_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_catch_stack_test.dart
@@ -19,13 +19,15 @@
bool get enableUnusedLocalVariable => true;
test_on_unusedStack() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
try {
} on String catch (exception, stackTrace) {
}
}
-''', [HintCode.UNUSED_CATCH_STACK]);
+''', [
+ error(HintCode.UNUSED_CATCH_STACK, 49, 10),
+ ]);
}
test_on_usedStack() async {
@@ -40,13 +42,15 @@
}
test_unusedStack() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
try {
} catch (exception, stackTrace) {
}
}
-''', [HintCode.UNUSED_CATCH_STACK]);
+''', [
+ error(HintCode.UNUSED_CATCH_STACK, 39, 10),
+ ]);
}
test_usedStack() async {
diff --git a/pkg/analyzer/test/src/diagnostics/unused_element_test.dart b/pkg/analyzer/test/src/diagnostics/unused_element_test.dart
index 8f16748..ef38d33 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_element_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_element_test.dart
@@ -85,7 +85,7 @@
}
test_class_notUsed_inClassMember() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class _A {
static staticMethod() {
new _A();
@@ -94,45 +94,55 @@
new _A();
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 6, 2),
+ ]);
}
test_class_notUsed_inConstructorName() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class _A {
_A() {}
_A.named() {}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 6, 2),
+ ]);
}
test_class_notUsed_isExpression() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class _A {}
main(p) {
if (p is _A) {
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 6, 2),
+ ]);
}
test_class_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class _A {}
main() {
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 6, 2),
+ ]);
}
test_class_notUsed_variableDeclaration() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class _A {}
main() {
_A v;
print(v);
}
print(x) {}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 6, 2),
+ ]);
}
test_enum_isUsed_fieldReference() async {
@@ -145,11 +155,13 @@
}
test_enum_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
enum _MyEnum {A, B, C}
main() {
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 5, 7),
+ ]);
}
test_functionLocal_isUsed_closure() async {
@@ -181,21 +193,25 @@
}
test_functionLocal_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
f() {}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 11, 1),
+ ]);
}
test_functionLocal_notUsed_referenceFromItself() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
_f(int p) {
_f(p - 1);
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 11, 2),
+ ]);
}
test_functionTop_isUsed_invocation() async {
@@ -218,21 +234,25 @@
}
test_functionTop_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
_f() {}
main() {
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 0, 2),
+ ]);
}
test_functionTop_notUsed_referenceFromItself() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
_f(int p) {
_f(p - 1);
}
main() {
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 0, 2),
+ ]);
}
test_functionTypeAlias_isUsed_isExpression() async {
@@ -274,11 +294,13 @@
}
test_functionTypeAlias_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
typedef _F(a, b);
main() {
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 8, 2),
+ ]);
}
test_getter_isUsed_invocation_implicitThis() async {
@@ -315,21 +337,25 @@
}
test_getter_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
get _g => null;
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 16, 2),
+ ]);
}
test_getter_notUsed_referenceFromItself() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
get _g {
return _g;
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 16, 2),
+ ]);
}
test_method_isUsed_hasReference_implicitThis() async {
@@ -477,21 +503,25 @@
}
test_method_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
static _m() {}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 19, 2),
+ ]);
}
test_method_notUsed_referenceFromItself() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
static _m(int p) {
_m(p - 1);
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 19, 2),
+ ]);
}
test_setter_isUsed_invocation_implicitThis() async {
@@ -528,15 +558,17 @@
}
test_setter_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
set _s(x) {}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 16, 2),
+ ]);
}
test_setter_notUsed_referenceFromItself() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
set _s(int x) {
if (x > 5) {
@@ -544,7 +576,9 @@
}
}
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 16, 2),
+ ]);
}
test_topLevelVariable_isUsed() async {
@@ -567,11 +601,13 @@
}
test_topLevelVariable_notUsed() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
int _a = 1;
main() {
_a = 2;
}
-''', [HintCode.UNUSED_ELEMENT]);
+''', [
+ error(HintCode.UNUSED_ELEMENT, 4, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unused_field_test.dart b/pkg/analyzer/test/src/diagnostics/unused_field_test.dart
index a0dacdb..fa17061 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_field_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_field_test.dart
@@ -105,40 +105,48 @@
}
test_unusedField_notUsed_compoundAssign() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f;
main() {
_f += 2;
}
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_constructorFieldInitializers() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f;
A() : _f = 0;
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_fieldFormalParameter() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f;
A(this._f);
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_noReference() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f;
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_nullAssign() async {
@@ -154,29 +162,33 @@
}
test_unusedField_notUsed_postfixExpr() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f = 0;
main() {
_f++;
}
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_prefixExpr() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f = 0;
main() {
++_f;
}
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
test_unusedField_notUsed_simpleAssignment() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
int _f;
m() {
@@ -186,6 +198,8 @@
main(A a) {
a._f = 2;
}
-''', [HintCode.UNUSED_FIELD]);
+''', [
+ error(HintCode.UNUSED_FIELD, 16, 2),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unused_import_test.dart b/pkg/analyzer/test/src/diagnostics/unused_import_test.dart
index 84ac848..2159a68 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_import_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_import_test.dart
@@ -31,11 +31,13 @@
newFile('/test/lib/lib1.dart', content: r'''
class A {}
''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart';
import 'lib1.dart' as one;
one.A a;
-''', [HintCode.UNUSED_IMPORT]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 7, 11),
+ ]);
}
test_as_equalPrefixes_referenced() async {
@@ -63,11 +65,13 @@
newFile('/test/lib/lib2.dart', content: r'''
class B {}
''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' as one;
import 'lib2.dart' as one;
one.A a;
-''', [HintCode.UNUSED_IMPORT]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 32, 11),
+ ]);
}
test_core_library() async {
@@ -131,11 +135,13 @@
newFile('/test/lib/lib1.dart', content: r'''
class A {}
''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart';
import 'lib1.dart' hide A;
A a;
-''', [HintCode.UNUSED_IMPORT]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 27, 11),
+ ]);
}
test_inComment_libraryDirective() async {
@@ -200,17 +206,21 @@
class A {}
class B {}
''');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart' show A;
import 'lib1.dart' show B;
A a;
-''', [HintCode.UNUSED_IMPORT]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 34, 11),
+ ]);
}
test_unusedImport() async {
newFile('/test/lib/lib1.dart');
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
import 'lib1.dart';
-''', [HintCode.UNUSED_IMPORT]);
+''', [
+ error(HintCode.UNUSED_IMPORT, 7, 11),
+ ]);
}
}
diff --git a/pkg/analyzer/test/src/diagnostics/unused_label_test.dart b/pkg/analyzer/test/src/diagnostics/unused_label_test.dart
index 3322685..4d1c338 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_label_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_label_test.dart
@@ -16,7 +16,7 @@
@reflectiveTest
class UnusedLabelTest extends DriverResolutionTest {
test_unused_inSwitch() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
f(x) {
switch (x) {
label: case 0:
@@ -25,17 +25,21 @@
break;
}
}
-''', [HintCode.UNUSED_LABEL]);
+''', [
+ error(HintCode.UNUSED_LABEL, 26, 6),
+ ]);
}
test_unused_onWhile() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
f(condition()) {
label: while (condition()) {
break;
}
}
-''', [HintCode.UNUSED_LABEL]);
+''', [
+ error(HintCode.UNUSED_LABEL, 19, 6),
+ ]);
}
test_used_inSwitch() async {
diff --git a/pkg/analyzer/test/src/diagnostics/unused_local_variable_test.dart b/pkg/analyzer/test/src/diagnostics/unused_local_variable_test.dart
index d4281bc..5bf524c 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_local_variable_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_local_variable_test.dart
@@ -31,23 +31,27 @@
}
test_inFunction() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
var v = 1;
v = 2;
}
-''', [HintCode.UNUSED_LOCAL_VARIABLE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 15, 1),
+ ]);
}
test_inMethod() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
class A {
foo() {
var v = 1;
v = 2;
}
}
-''', [HintCode.UNUSED_LOCAL_VARIABLE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 28, 1),
+ ]);
}
test_isInvoked() async {
@@ -72,30 +76,36 @@
}
test_isRead_notUsed_compoundAssign() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
var v = 1;
v += 2;
}
-''', [HintCode.UNUSED_LOCAL_VARIABLE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 15, 1),
+ ]);
}
test_isRead_notUsed_postfixExpr() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
var v = 1;
v++;
}
-''', [HintCode.UNUSED_LOCAL_VARIABLE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 15, 1),
+ ]);
}
test_isRead_notUsed_prefixExpr() async {
- await assertErrorCodesInCode(r'''
+ await assertErrorsInCode(r'''
main() {
var v = 1;
++v;
}
-''', [HintCode.UNUSED_LOCAL_VARIABLE]);
+''', [
+ error(HintCode.UNUSED_LOCAL_VARIABLE, 15, 1),
+ ]);
}
test_isRead_usedArgument() async {
diff --git a/pkg/analyzer/test/src/diagnostics/unused_shown_name_test.dart b/pkg/analyzer/test/src/diagnostics/unused_shown_name_test.dart
index fd823b1..99b749b 100644
--- a/pkg/analyzer/test/src/diagnostics/unused_shown_name_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/unused_shown_name_test.dart
@@ -20,10 +20,12 @@
class A {}
class B {}
''');
- assertErrorCodesInCode(r'''
+ assertErrorsInCode(r'''
import 'lib1.dart' show A, B;
A a;
-''', [HintCode.UNUSED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNUSED_SHOWN_NAME, 27, 1),
+ ]);
}
test_unusedShownName_as() async {
@@ -31,10 +33,12 @@
class A {}
class B {}
''');
- assertErrorCodesInCode(r'''
+ assertErrorsInCode(r'''
import 'lib1.dart' as p show A, B;
p.A a;
-''', [HintCode.UNUSED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNUSED_SHOWN_NAME, 32, 1),
+ ]);
}
test_unusedShownName_duplicates() async {
@@ -44,12 +48,15 @@
class C {}
class D {}
''');
- assertErrorCodesInCode(r'''
+ assertErrorsInCode(r'''
import 'lib1.dart' show A, B;
import 'lib1.dart' show C, D;
A a;
C c;
-''', [HintCode.UNUSED_SHOWN_NAME, HintCode.UNUSED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNUSED_SHOWN_NAME, 27, 1),
+ error(HintCode.UNUSED_SHOWN_NAME, 57, 1),
+ ]);
}
test_unusedShownName_topLevelVariable() async {
@@ -59,12 +66,14 @@
const int var3 = 3;
const int var4 = 4;
''');
- assertErrorCodesInCode(r'''
+ assertErrorsInCode(r'''
import 'lib1.dart' show var1, var2;
import 'lib1.dart' show var3, var4;
int a = var1;
int b = var2;
int c = var3;
-''', [HintCode.UNUSED_SHOWN_NAME]);
+''', [
+ error(HintCode.UNUSED_SHOWN_NAME, 66, 4),
+ ]);
}
}