OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library analyzer.test.src.dart.element.element_test; | 5 library analyzer.test.src.dart.element.element_test; |
6 | 6 |
7 import 'package:analyzer/dart/ast/ast.dart'; | 7 import 'package:analyzer/dart/ast/ast.dart'; |
8 import 'package:analyzer/dart/constant/value.dart'; | 8 import 'package:analyzer/dart/constant/value.dart'; |
9 import 'package:analyzer/dart/element/element.dart'; | 9 import 'package:analyzer/dart/element/element.dart'; |
10 import 'package:analyzer/dart/element/type.dart'; | 10 import 'package:analyzer/dart/element/type.dart'; |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
163 ClassElement classB = ElementFactory.classElement("B", classA.type); | 163 ClassElement classB = ElementFactory.classElement("B", classA.type); |
164 ClassElementImpl classC = ElementFactory.classElement2("C"); | 164 ClassElementImpl classC = ElementFactory.classElement2("C"); |
165 InterfaceType typeObject = classA.supertype; | 165 InterfaceType typeObject = classA.supertype; |
166 InterfaceType typeA = classA.type; | 166 InterfaceType typeA = classA.type; |
167 InterfaceType typeB = classB.type; | 167 InterfaceType typeB = classB.type; |
168 InterfaceType typeC = classC.type; | 168 InterfaceType typeC = classC.type; |
169 classC.mixins = <InterfaceType>[typeB]; | 169 classC.mixins = <InterfaceType>[typeB]; |
170 List<InterfaceType> supers = classC.allSupertypes; | 170 List<InterfaceType> supers = classC.allSupertypes; |
171 List<InterfaceType> types = new List<InterfaceType>(); | 171 List<InterfaceType> types = new List<InterfaceType>(); |
172 types.addAll(supers); | 172 types.addAll(supers); |
173 expect(types.contains(typeA), isFalse); | 173 expect(types.contains(typeA), isTrue); |
174 expect(types.contains(typeB), isTrue); | 174 expect(types.contains(typeB), isTrue); |
175 expect(types.contains(typeObject), isTrue); | 175 expect(types.contains(typeObject), isTrue); |
176 expect(types.contains(typeC), isFalse); | 176 expect(types.contains(typeC), isFalse); |
177 } | 177 } |
178 | 178 |
179 void test_getAllSupertypes_recursive() { | 179 void test_getAllSupertypes_recursive() { |
180 ClassElementImpl classA = ElementFactory.classElement2("A"); | 180 ClassElementImpl classA = ElementFactory.classElement2("A"); |
181 ClassElementImpl classB = ElementFactory.classElement("B", classA.type); | 181 ClassElementImpl classB = ElementFactory.classElement("B", classA.type); |
182 classA.supertype = classB.type; | 182 classA.supertype = classB.type; |
183 List<InterfaceType> supers = classB.allSupertypes; | 183 List<InterfaceType> supers = classB.allSupertypes; |
(...skipping 4171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4355 } | 4355 } |
4356 | 4356 |
4357 class _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction | 4357 class _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction |
4358 extends InterfaceTypeImpl { | 4358 extends InterfaceTypeImpl { |
4359 _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction(ClassElement arg0) | 4359 _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction(ClassElement arg0) |
4360 : super(arg0); | 4360 : super(arg0); |
4361 | 4361 |
4362 @override | 4362 @override |
4363 bool get isDartCoreFunction => true; | 4363 bool get isDartCoreFunction => true; |
4364 } | 4364 } |
OLD | NEW |