| 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 4058 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4069 expect(m2Node, isNotNull); | 4069 expect(m2Node, isNotNull); |
| 4070 expect(m2Node.name.name, "m2"); | 4070 expect(m2Node.name.name, "m2"); |
| 4071 expect(m2Node.element, same(m2Element)); | 4071 expect(m2Node.element, same(m2Element)); |
| 4072 } | 4072 } |
| 4073 } | 4073 } |
| 4074 } | 4074 } |
| 4075 | 4075 |
| 4076 @reflectiveTest | 4076 @reflectiveTest |
| 4077 class MultiplyDefinedElementImplTest extends EngineTestCase { | 4077 class MultiplyDefinedElementImplTest extends EngineTestCase { |
| 4078 void test_fromElements_conflicting() { | 4078 void test_fromElements_conflicting() { |
| 4079 Element firstElement = ElementFactory.localVariableElement2("xx"); | 4079 TopLevelVariableElement firstElement = |
| 4080 Element secondElement = ElementFactory.localVariableElement2("yy"); | 4080 ElementFactory.topLevelVariableElement2('xx'); |
| 4081 TopLevelVariableElement secondElement = |
| 4082 ElementFactory.topLevelVariableElement2('yy'); |
| 4083 _addToLibrary([firstElement, secondElement]); |
| 4081 Element result = MultiplyDefinedElementImpl.fromElements( | 4084 Element result = MultiplyDefinedElementImpl.fromElements( |
| 4082 null, firstElement, secondElement); | 4085 null, firstElement, secondElement); |
| 4083 EngineTestCase.assertInstanceOf( | 4086 EngineTestCase.assertInstanceOf( |
| 4084 (obj) => obj is MultiplyDefinedElement, MultiplyDefinedElement, result); | 4087 (obj) => obj is MultiplyDefinedElement, MultiplyDefinedElement, result); |
| 4085 List<Element> elements = | 4088 List<Element> elements = |
| 4086 (result as MultiplyDefinedElement).conflictingElements; | 4089 (result as MultiplyDefinedElement).conflictingElements; |
| 4087 expect(elements, hasLength(2)); | 4090 expect(elements, hasLength(2)); |
| 4088 for (int i = 0; i < elements.length; i++) { | 4091 for (int i = 0; i < elements.length; i++) { |
| 4089 EngineTestCase.assertInstanceOf((obj) => obj is LocalVariableElement, | 4092 EngineTestCase.assertInstanceOf((obj) => obj is TopLevelVariableElement, |
| 4090 LocalVariableElement, elements[i]); | 4093 TopLevelVariableElement, elements[i]); |
| 4091 } | 4094 } |
| 4092 } | 4095 } |
| 4093 | 4096 |
| 4094 void test_fromElements_multiple() { | 4097 void test_fromElements_multiple() { |
| 4095 Element firstElement = ElementFactory.localVariableElement2("xx"); | 4098 TopLevelVariableElement firstElement = |
| 4096 Element secondElement = ElementFactory.localVariableElement2("yy"); | 4099 ElementFactory.topLevelVariableElement2('xx'); |
| 4097 Element thirdElement = ElementFactory.localVariableElement2("zz"); | 4100 TopLevelVariableElement secondElement = |
| 4101 ElementFactory.topLevelVariableElement2('yy'); |
| 4102 TopLevelVariableElement thirdElement = |
| 4103 ElementFactory.topLevelVariableElement2('zz'); |
| 4104 _addToLibrary([firstElement, secondElement, thirdElement]); |
| 4098 Element result = MultiplyDefinedElementImpl.fromElements( | 4105 Element result = MultiplyDefinedElementImpl.fromElements( |
| 4099 null, | 4106 null, |
| 4100 MultiplyDefinedElementImpl.fromElements( | 4107 MultiplyDefinedElementImpl.fromElements( |
| 4101 null, firstElement, secondElement), | 4108 null, firstElement, secondElement), |
| 4102 thirdElement); | 4109 thirdElement); |
| 4103 EngineTestCase.assertInstanceOf( | 4110 EngineTestCase.assertInstanceOf( |
| 4104 (obj) => obj is MultiplyDefinedElement, MultiplyDefinedElement, result); | 4111 (obj) => obj is MultiplyDefinedElement, MultiplyDefinedElement, result); |
| 4105 List<Element> elements = | 4112 List<Element> elements = |
| 4106 (result as MultiplyDefinedElement).conflictingElements; | 4113 (result as MultiplyDefinedElement).conflictingElements; |
| 4107 expect(elements, hasLength(3)); | 4114 expect(elements, hasLength(3)); |
| 4108 for (int i = 0; i < elements.length; i++) { | 4115 for (int i = 0; i < elements.length; i++) { |
| 4109 EngineTestCase.assertInstanceOf((obj) => obj is LocalVariableElement, | 4116 EngineTestCase.assertInstanceOf((obj) => obj is TopLevelVariableElement, |
| 4110 LocalVariableElement, elements[i]); | 4117 TopLevelVariableElement, elements[i]); |
| 4111 } | 4118 } |
| 4112 } | 4119 } |
| 4113 | 4120 |
| 4114 void test_fromElements_nonConflicting() { | 4121 void test_fromElements_nonConflicting() { |
| 4115 Element element = ElementFactory.localVariableElement2("xx"); | 4122 TopLevelVariableElement element = |
| 4123 ElementFactory.topLevelVariableElement2('xx'); |
| 4124 _addToLibrary([element]); |
| 4116 expect(MultiplyDefinedElementImpl.fromElements(null, element, element), | 4125 expect(MultiplyDefinedElementImpl.fromElements(null, element, element), |
| 4117 same(element)); | 4126 same(element)); |
| 4118 } | 4127 } |
| 4128 |
| 4129 void _addToLibrary(List<TopLevelVariableElement> variables) { |
| 4130 CompilationUnitElementImpl compilationUnit = |
| 4131 ElementFactory.compilationUnit('lib.dart'); |
| 4132 LibraryElementImpl library = ElementFactory.library(null, 'lib'); |
| 4133 library.definingCompilationUnit = compilationUnit; |
| 4134 compilationUnit.topLevelVariables = variables; |
| 4135 } |
| 4119 } | 4136 } |
| 4120 | 4137 |
| 4121 @reflectiveTest | 4138 @reflectiveTest |
| 4122 class ParameterElementImplTest extends EngineTestCase { | 4139 class ParameterElementImplTest extends EngineTestCase { |
| 4123 void test_computeNode_DefaultFormalParameter() { | 4140 void test_computeNode_DefaultFormalParameter() { |
| 4124 AnalysisContextHelper contextHelper = new AnalysisContextHelper(); | 4141 AnalysisContextHelper contextHelper = new AnalysisContextHelper(); |
| 4125 AnalysisContext context = contextHelper.context; | 4142 AnalysisContext context = contextHelper.context; |
| 4126 Source source = contextHelper.addSource( | 4143 Source source = contextHelper.addSource( |
| 4127 "/test.dart", | 4144 "/test.dart", |
| 4128 r''' | 4145 r''' |
| (...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4487 } | 4504 } |
| 4488 | 4505 |
| 4489 class _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction | 4506 class _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction |
| 4490 extends InterfaceTypeImpl { | 4507 extends InterfaceTypeImpl { |
| 4491 _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction(ClassElement arg0) | 4508 _FunctionTypeImplTest_isSubtypeOf_baseCase_classFunction(ClassElement arg0) |
| 4492 : super(arg0); | 4509 : super(arg0); |
| 4493 | 4510 |
| 4494 @override | 4511 @override |
| 4495 bool get isDartCoreFunction => true; | 4512 bool get isDartCoreFunction => true; |
| 4496 } | 4513 } |
| OLD | NEW |