[Migrate] error_reporter_test.dart
Change-Id: Iee6e8ec17881bcc514b8cef9039f88e2f5afcde3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/403908
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analyzer/analyzer_use_new_elements.txt b/pkg/analyzer/analyzer_use_new_elements.txt
index 20741cc..96fea28 100644
--- a/pkg/analyzer/analyzer_use_new_elements.txt
+++ b/pkg/analyzer/analyzer_use_new_elements.txt
@@ -138,7 +138,6 @@
lib/src/test_utilities/find_node.dart
lib/src/test_utilities/mock_sdk_elements.dart
lib/src/utilities/extensions/element.dart
-test/error/error_reporter_test.dart
test/generated/elements_types_mixin.dart
test/generated/non_error_resolver_test.dart
test/generated/resolver_test_case.dart
diff --git a/pkg/analyzer/lib/src/test_utilities/find_element2.dart b/pkg/analyzer/lib/src/test_utilities/find_element2.dart
index ab76e57..2e484a5 100644
--- a/pkg/analyzer/lib/src/test_utilities/find_element2.dart
+++ b/pkg/analyzer/lib/src/test_utilities/find_element2.dart
@@ -507,6 +507,15 @@
);
}
+ ExtensionElement2 unnamedExtension() {
+ for (var extension_ in libraryElement.extensions) {
+ if (extension_.name3 == null) {
+ return extension_;
+ }
+ }
+ throw StateError('Not found: an unnamed extension');
+ }
+
T _findInClassesLike<T extends Element2>({
required String? className,
required T? Function(InterfaceElement2 element) fromClass,
diff --git a/pkg/analyzer/test/error/error_reporter_test.dart b/pkg/analyzer/test/error/error_reporter_test.dart
index 2216348..e31475e 100644
--- a/pkg/analyzer/test/error/error_reporter_test.dart
+++ b/pkg/analyzer/test/error/error_reporter_test.dart
@@ -24,34 +24,37 @@
test_atElement_named() async {
await resolveTestCode('class A {}');
- var element = findElement.class_('A');
- var reporter = ErrorReporter(listener, element.source);
- reporter.atElement(
+ var element = findElement2.class_('A');
+ var firstFragment = element.firstFragment;
+ var reporter =
+ ErrorReporter(listener, firstFragment.libraryFragment.source);
+ reporter.atElement2(
element,
CompileTimeErrorCode.CAST_TO_NON_TYPE,
arguments: ['A'],
);
var error = listener.errors[0];
- expect(error.offset, element.nameOffset);
+ expect(error.offset, firstFragment.nameOffset2);
}
test_atElement_unnamed() async {
await resolveTestCode(r'''
-import 'dart:async';
-import 'dart:math';
+extension on int {}
''');
- var element = findElement.import('dart:math');
+ var element = findElement2.unnamedExtension();
- var reporter = ErrorReporter(listener, element.source);
- reporter.atElement(
+ var firstFragment = element.firstFragment;
+ var reporter =
+ ErrorReporter(listener, firstFragment.libraryFragment.source);
+ reporter.atElement2(
element,
CompileTimeErrorCode.CAST_TO_NON_TYPE,
arguments: ['A'],
);
var error = listener.errors[0];
- expect(error.offset, element.nameOffset);
+ expect(error.offset, -1);
}
test_atNode_types_differentNames() async {
@@ -65,8 +68,8 @@
x;
}
''');
- var aImport = findElement.importFind('package:test/a.dart');
- var bImport = findElement.importFind('package:test/b.dart');
+ var aImport = findElement2.importFind('package:test/a.dart');
+ var bImport = findElement2.importFind('package:test/b.dart');
var firstType = aImport.class_('A').instantiate(
typeArguments: [],
@@ -77,7 +80,8 @@
nullabilitySuffix: NullabilitySuffix.none,
);
- var reporter = ErrorReporter(listener, firstType.element.source);
+ var reporter = ErrorReporter(
+ listener, firstType.element3.firstFragment.libraryFragment.source);
reporter.atNode(
findNode.simple('x'),
@@ -100,8 +104,8 @@
x;
}
''');
- var aImport = findElement.importFind('package:test/a.dart');
- var bImport = findElement.importFind('package:test/b.dart');
+ var aImport = findElement2.importFind('package:test/a.dart');
+ var bImport = findElement2.importFind('package:test/b.dart');
var firstType = aImport.class_('A').instantiate(
typeArguments: [],
@@ -112,7 +116,8 @@
nullabilitySuffix: NullabilitySuffix.none,
);
- var reporter = ErrorReporter(listener, firstType.element.source);
+ var reporter = ErrorReporter(
+ listener, firstType.element3.firstFragment.libraryFragment.source);
reporter.atNode(
findNode.simple('x'),
CompileTimeErrorCode.ARGUMENT_TYPE_NOT_ASSIGNABLE,
@@ -140,7 +145,7 @@
var fa = findNode.topLevelVariableDeclaration('fa');
var fb = findNode.topLevelVariableDeclaration('fb');
- var source = result.unit.declaredElement!.source;
+ var source = result.unit.declaredFragment!.libraryFragment!.source;
var reporter = ErrorReporter(listener, source);
reporter.atNode(
findNode.simple('x'),
@@ -171,7 +176,7 @@
var ba = findNode.topLevelVariableDeclaration('ba');
var bb = findNode.topLevelVariableDeclaration('bb');
- var source = result.unit.declaredElement!.source;
+ var source = result.unit.declaredFragment!.libraryFragment!.source;
var reporter = ErrorReporter(listener, source);
reporter.atNode(
findNode.simple('x'),