Migrate ErrorResolverTest.
R=brianwilkerson@google.com
Change-Id: I2593ca49a3c8b1a0281bcdc993628e11aa1bc7bf
Reviewed-on: https://dart-review.googlesource.com/c/92842
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analyzer/test/generated/resolver_test.dart b/pkg/analyzer/test/generated/resolver_test.dart
index 42e2703..5d5b657 100644
--- a/pkg/analyzer/test/generated/resolver_test.dart
+++ b/pkg/analyzer/test/generated/resolver_test.dart
@@ -23,13 +23,13 @@
import 'package:analyzer/src/generated/source_io.dart';
import 'package:analyzer/src/generated/testing/ast_test_factory.dart';
import 'package:analyzer/src/generated/testing/element_factory.dart';
-import 'package:analyzer/src/generated/testing/element_search.dart';
import 'package:analyzer/src/generated/testing/test_type_provider.dart';
import 'package:analyzer/src/source/source_resource.dart';
import 'package:analyzer/src/test_utilities/resource_provider_mixin.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';
+import '../src/dart/resolution/driver_resolution.dart';
import 'analysis_context_factory.dart';
import 'parser_test.dart';
import 'resolver_test_case.dart';
@@ -163,12 +163,10 @@
}
}
-/// TODO(paulberry): migrate this test away from the task model.
-/// See dartbug.com/35734.
@reflectiveTest
-class ErrorResolverTest extends ResolverTestCase {
+class ErrorResolverTest extends DriverResolutionTest {
test_breakLabelOnSwitchMember() async {
- Source source = addSource(r'''
+ assertErrorsInCode(r'''
class A {
void m(int i) {
switch (i) {
@@ -178,14 +176,11 @@
break l;
}
}
-}''');
- await computeAnalysisResult(source);
- assertErrors(source, [ResolverErrorCode.BREAK_LABEL_ON_SWITCH_MEMBER]);
- verify([source]);
+}''', [ResolverErrorCode.BREAK_LABEL_ON_SWITCH_MEMBER]);
}
test_continueLabelOnSwitch() async {
- Source source = addSource(r'''
+ assertErrorsInCode(r'''
class A {
void m(int i) {
l: switch (i) {
@@ -193,43 +188,24 @@
continue l;
}
}
-}''');
- await computeAnalysisResult(source);
- assertErrors(source, [ResolverErrorCode.CONTINUE_LABEL_ON_SWITCH]);
- verify([source]);
+}''', [ResolverErrorCode.CONTINUE_LABEL_ON_SWITCH]);
}
test_enclosingElement_invalidLocalFunction() async {
- String code = r'''
+ addTestFile(r'''
class C {
C() {
int get x => 0;
}
-}''';
- Source source = addSource(code);
-
- TestAnalysisResult analysisResult = await computeAnalysisResult(source);
- assertErrors(source, [
+}''');
+ await resolveTestFile();
+ assertTestErrors([
ParserErrorCode.MISSING_FUNCTION_PARAMETERS,
ParserErrorCode.EXPECTED_TOKEN
]);
- CompilationUnitElement unit = analysisResult.unit.declaredElement;
- LibraryElement library = unit.library;
- expect(library, isNotNull);
- expect(unit.enclosingElement, same(library));
-
- var types = unit.types;
- expect(types, hasLength(1));
- var type = types[0];
- expect(type, isNotNull);
-
- var constructors = type.constructors;
- expect(constructors, hasLength(1));
- ConstructorElement constructor = constructors[0];
- expect(constructor, isNotNull);
-
- FunctionElement x = findElementsByName(analysisResult.unit, 'x').single;
+ var constructor = findElement.unnamedConstructor('C');
+ var x = findElement.localFunction('x');
expect(x.enclosingElement, constructor);
}
}