| Index: pkg/analyzer/test/generated/element_test.dart
|
| diff --git a/pkg/analyzer/test/generated/element_test.dart b/pkg/analyzer/test/generated/element_test.dart
|
| index b52ddee2fa9de160ab116c3f21e4d985b03aec80..9a39867f8e4cfec55f3f63a0aa824ded08ad9bf9 100644
|
| --- a/pkg/analyzer/test/generated/element_test.dart
|
| +++ b/pkg/analyzer/test/generated/element_test.dart
|
| @@ -10,7 +10,7 @@ library engine.element_test;
|
| import 'package:analyzer/src/generated/ast.dart';
|
| import 'package:analyzer/src/generated/element.dart';
|
| import 'package:analyzer/src/generated/engine.dart'
|
| - show AnalysisContext, AnalysisContextImpl;
|
| + show AnalysisContext, AnalysisContextImpl, AnalysisOptionsImpl;
|
| import 'package:analyzer/src/generated/java_core.dart';
|
| import 'package:analyzer/src/generated/source_io.dart';
|
| import 'package:analyzer/src/generated/testing/ast_factory.dart';
|
| @@ -3894,6 +3894,38 @@ abstract class A {
|
| expect(m2Node.element, same(m2Element));
|
| }
|
| }
|
| +
|
| + void test_computeNode_withoutFunctionBody() {
|
| + AnalysisOptionsImpl options = new AnalysisOptionsImpl();
|
| + options.analyzeFunctionBodies = false;
|
| + AnalysisContextHelper contextHelper = new AnalysisContextHelper(options);
|
| + AnalysisContext context = contextHelper.context;
|
| + Source source = contextHelper.addSource("/test.dart", r'''
|
| +abstract class A {
|
| + String m1() => null;
|
| + m2();
|
| +}
|
| +''');
|
| + // prepare CompilationUnitElement
|
| + LibraryElement libraryElement = context.computeLibraryElement(source);
|
| + CompilationUnitElement unitElement = libraryElement.definingCompilationUnit;
|
| + // m1
|
| + {
|
| + MethodElement m1Element = unitElement.getType("A").getMethod('m1');
|
| + MethodDeclaration m1Node = m1Element.computeNode();
|
| + expect(m1Node, isNotNull);
|
| + expect(m1Node.name.name, "m1");
|
| + expect(m1Node.element, same(m1Element));
|
| + }
|
| + // m2
|
| + {
|
| + MethodElement m2Element = unitElement.getType("A").getMethod('m2');
|
| + MethodDeclaration m2Node = m2Element.computeNode();
|
| + expect(m2Node, isNotNull);
|
| + expect(m2Node.name.name, "m2");
|
| + expect(m2Node.element, same(m2Element));
|
| + }
|
| + }
|
| }
|
|
|
| @reflectiveTest
|
|
|