| Index: pkg/analyzer/test/src/task/dart_test.dart
|
| diff --git a/pkg/analyzer/test/src/task/dart_test.dart b/pkg/analyzer/test/src/task/dart_test.dart
|
| index c87a7e6db953722c4c4a390bda2af56d9609019c..4dd1675da55c067884f77cccfd494ec1484d6a26 100644
|
| --- a/pkg/analyzer/test/src/task/dart_test.dart
|
| +++ b/pkg/analyzer/test/src/task/dart_test.dart
|
| @@ -1326,6 +1326,45 @@ class C extends A {}
|
| expect(classC.supertype.displayName, 'A');
|
| }
|
| }
|
| +
|
| + test_perform_deep() {
|
| + Source sourceA = _newSource('/a.dart', '''
|
| +library a;
|
| +import 'b.dart';
|
| +class A extends B {}
|
| +''');
|
| + _newSource('/b.dart', '''
|
| +library b;
|
| +import 'c.dart';
|
| +part 'b2.dart';
|
| +class B extends B2 {}
|
| +''');
|
| + _newSource('/b2.dart', '''
|
| +part of b;
|
| +class B2 extends C {}
|
| +''');
|
| + _newSource('/c.dart', '''
|
| +library c;
|
| +class C {}
|
| +''');
|
| + _computeResult(sourceA, LIBRARY_ELEMENT5);
|
| + expect(task, new isInstanceOf<ResolveLibraryTypeNamesTask>());
|
| + // validate
|
| + LibraryElement library = outputs[LIBRARY_ELEMENT5];
|
| + {
|
| + ClassElement clazz = library.getType('A');
|
| + expect(clazz.displayName, 'A');
|
| + clazz = clazz.supertype.element;
|
| + expect(clazz.displayName, 'B');
|
| + clazz = clazz.supertype.element;
|
| + expect(clazz.displayName, 'B2');
|
| + clazz = clazz.supertype.element;
|
| + expect(clazz.displayName, 'C');
|
| + clazz = clazz.supertype.element;
|
| + expect(clazz.displayName, 'Object');
|
| + expect(clazz.supertype, isNull);
|
| + }
|
| + }
|
| }
|
|
|
| @reflectiveTest
|
|
|