| 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.generated.all_the_rest_test; | 5 library analyzer.test.generated.all_the_rest_test; | 
| 6 | 6 | 
| 7 import 'package:analyzer/dart/ast/ast.dart'; | 7 import 'package:analyzer/dart/ast/ast.dart'; | 
| 8 import 'package:analyzer/dart/ast/token.dart'; | 8 import 'package:analyzer/dart/ast/token.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'; | 
| 11 import 'package:analyzer/error/error.dart'; | 11 import 'package:analyzer/error/error.dart'; | 
| 12 import 'package:analyzer/error/listener.dart'; | 12 import 'package:analyzer/error/listener.dart'; | 
| 13 import 'package:analyzer/file_system/file_system.dart'; | 13 import 'package:analyzer/file_system/file_system.dart'; | 
| 14 import 'package:analyzer/file_system/memory_file_system.dart'; | 14 import 'package:analyzer/file_system/memory_file_system.dart'; | 
| 15 import 'package:analyzer/file_system/physical_file_system.dart'; | 15 import 'package:analyzer/file_system/physical_file_system.dart'; | 
| 16 import 'package:analyzer/src/dart/ast/utilities.dart' hide ConstantEvaluator; | 16 import 'package:analyzer/src/dart/ast/utilities.dart' hide ConstantEvaluator; | 
| 17 import 'package:analyzer/src/dart/element/builder.dart'; | 17 import 'package:analyzer/src/dart/element/builder.dart'; | 
| 18 import 'package:analyzer/src/dart/element/element.dart'; | 18 import 'package:analyzer/src/dart/element/element.dart'; | 
| 19 import 'package:analyzer/src/dart/sdk/sdk.dart' hide SdkLibrariesReader; | 19 import 'package:analyzer/src/dart/sdk/sdk.dart' hide SdkLibrariesReader; | 
| 20 import 'package:analyzer/src/error/codes.dart'; | 20 import 'package:analyzer/src/error/codes.dart'; | 
| 21 import 'package:analyzer/src/generated/engine.dart'; | 21 import 'package:analyzer/src/generated/engine.dart'; | 
| 22 import 'package:analyzer/src/generated/java_engine_io.dart'; | 22 import 'package:analyzer/src/generated/java_engine_io.dart'; | 
| 23 import 'package:analyzer/src/generated/java_io.dart'; | 23 import 'package:analyzer/src/generated/java_io.dart'; | 
| 24 import 'package:analyzer/src/generated/resolver.dart'; | 24 import 'package:analyzer/src/generated/resolver.dart'; | 
| 25 import 'package:analyzer/src/generated/sdk.dart'; | 25 import 'package:analyzer/src/generated/sdk.dart'; | 
| 26 import 'package:analyzer/src/generated/sdk_io.dart'; | 26 import 'package:analyzer/src/generated/sdk_io.dart'; | 
| 27 import 'package:analyzer/src/generated/source.dart'; | 27 import 'package:analyzer/src/generated/source.dart'; | 
| 28 import 'package:analyzer/src/generated/source_io.dart'; | 28 import 'package:analyzer/src/generated/source_io.dart'; | 
| 29 import 'package:analyzer/src/generated/testing/ast_factory.dart'; | 29 import 'package:analyzer/src/generated/testing/ast_test_factory.dart'; | 
| 30 import 'package:analyzer/src/generated/testing/element_factory.dart'; | 30 import 'package:analyzer/src/generated/testing/element_factory.dart'; | 
| 31 import 'package:analyzer/src/generated/testing/test_type_provider.dart'; | 31 import 'package:analyzer/src/generated/testing/test_type_provider.dart'; | 
| 32 import 'package:analyzer/src/generated/testing/token_factory.dart'; | 32 import 'package:analyzer/src/generated/testing/token_factory.dart'; | 
| 33 import 'package:analyzer/src/generated/utilities_dart.dart'; | 33 import 'package:analyzer/src/generated/utilities_dart.dart'; | 
| 34 import 'package:analyzer/src/source/source_resource.dart'; | 34 import 'package:analyzer/src/source/source_resource.dart'; | 
| 35 import 'package:path/path.dart' as path; | 35 import 'package:path/path.dart' as path; | 
| 36 import 'package:source_span/source_span.dart'; | 36 import 'package:source_span/source_span.dart'; | 
| 37 import 'package:test/test.dart'; | 37 import 'package:test/test.dart'; | 
| 38 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 38 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 
| 39 | 39 | 
| (...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 552 void main() { | 552 void main() { | 
| 553  new A(); | 553  new A(); | 
| 554 }'''); | 554 }'''); | 
| 555     Element element = ElementLocator.locate(node); | 555     Element element = ElementLocator.locate(node); | 
| 556     EngineTestCase.assertInstanceOf( | 556     EngineTestCase.assertInstanceOf( | 
| 557         (obj) => obj is ConstructorElement, ConstructorElement, element); | 557         (obj) => obj is ConstructorElement, ConstructorElement, element); | 
| 558   } | 558   } | 
| 559 | 559 | 
| 560   void test_locate_InstanceCreationExpression_type_prefixedIdentifier() { | 560   void test_locate_InstanceCreationExpression_type_prefixedIdentifier() { | 
| 561     // prepare: new pref.A() | 561     // prepare: new pref.A() | 
| 562     SimpleIdentifier identifier = AstFactory.identifier3("A"); | 562     SimpleIdentifier identifier = AstTestFactory.identifier3("A"); | 
| 563     PrefixedIdentifier prefixedIdentifier = | 563     PrefixedIdentifier prefixedIdentifier = | 
| 564         AstFactory.identifier4("pref", identifier); | 564         AstTestFactory.identifier4("pref", identifier); | 
| 565     InstanceCreationExpression creation = | 565     InstanceCreationExpression creation = | 
| 566         AstFactory.instanceCreationExpression2( | 566         AstTestFactory.instanceCreationExpression2( | 
| 567             Keyword.NEW, AstFactory.typeName3(prefixedIdentifier)); | 567             Keyword.NEW, AstTestFactory.typeName3(prefixedIdentifier)); | 
| 568     // set ClassElement | 568     // set ClassElement | 
| 569     ClassElement classElement = ElementFactory.classElement2("A"); | 569     ClassElement classElement = ElementFactory.classElement2("A"); | 
| 570     identifier.staticElement = classElement; | 570     identifier.staticElement = classElement; | 
| 571     // set ConstructorElement | 571     // set ConstructorElement | 
| 572     ConstructorElement constructorElement = | 572     ConstructorElement constructorElement = | 
| 573         ElementFactory.constructorElement2(classElement, null); | 573         ElementFactory.constructorElement2(classElement, null); | 
| 574     creation.constructorName.staticElement = constructorElement; | 574     creation.constructorName.staticElement = constructorElement; | 
| 575     // verify that "A" is resolved to ConstructorElement | 575     // verify that "A" is resolved to ConstructorElement | 
| 576     Element element = ElementLocator.locate(identifier); | 576     Element element = ElementLocator.locate(identifier); | 
| 577     expect(element, same(classElement)); | 577     expect(element, same(classElement)); | 
| 578   } | 578   } | 
| 579 | 579 | 
| 580   void test_locate_InstanceCreationExpression_type_simpleIdentifier() { | 580   void test_locate_InstanceCreationExpression_type_simpleIdentifier() { | 
| 581     // prepare: new A() | 581     // prepare: new A() | 
| 582     SimpleIdentifier identifier = AstFactory.identifier3("A"); | 582     SimpleIdentifier identifier = AstTestFactory.identifier3("A"); | 
| 583     InstanceCreationExpression creation = | 583     InstanceCreationExpression creation = | 
| 584         AstFactory.instanceCreationExpression2( | 584         AstTestFactory.instanceCreationExpression2( | 
| 585             Keyword.NEW, AstFactory.typeName3(identifier)); | 585             Keyword.NEW, AstTestFactory.typeName3(identifier)); | 
| 586     // set ClassElement | 586     // set ClassElement | 
| 587     ClassElement classElement = ElementFactory.classElement2("A"); | 587     ClassElement classElement = ElementFactory.classElement2("A"); | 
| 588     identifier.staticElement = classElement; | 588     identifier.staticElement = classElement; | 
| 589     // set ConstructorElement | 589     // set ConstructorElement | 
| 590     ConstructorElement constructorElement = | 590     ConstructorElement constructorElement = | 
| 591         ElementFactory.constructorElement2(classElement, null); | 591         ElementFactory.constructorElement2(classElement, null); | 
| 592     creation.constructorName.staticElement = constructorElement; | 592     creation.constructorName.staticElement = constructorElement; | 
| 593     // verify that "A" is resolved to ConstructorElement | 593     // verify that "A" is resolved to ConstructorElement | 
| 594     Element element = ElementLocator.locate(identifier); | 594     Element element = ElementLocator.locate(identifier); | 
| 595     expect(element, same(classElement)); | 595     expect(element, same(classElement)); | 
| (...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 790     return analysisContext.resolveCompilationUnit(source, library); | 790     return analysisContext.resolveCompilationUnit(source, library); | 
| 791   } | 791   } | 
| 792 } | 792 } | 
| 793 | 793 | 
| 794 @reflectiveTest | 794 @reflectiveTest | 
| 795 class EnumMemberBuilderTest extends EngineTestCase { | 795 class EnumMemberBuilderTest extends EngineTestCase { | 
| 796   void test_visitEnumDeclaration_multiple() { | 796   void test_visitEnumDeclaration_multiple() { | 
| 797     String firstName = "ONE"; | 797     String firstName = "ONE"; | 
| 798     String secondName = "TWO"; | 798     String secondName = "TWO"; | 
| 799     String thirdName = "THREE"; | 799     String thirdName = "THREE"; | 
| 800     EnumDeclaration enumDeclaration = | 800     EnumDeclaration enumDeclaration = AstTestFactory | 
| 801         AstFactory.enumDeclaration2("E", [firstName, secondName, thirdName]); | 801         .enumDeclaration2("E", [firstName, secondName, thirdName]); | 
| 802 | 802 | 
| 803     ClassElement enumElement = _buildElement(enumDeclaration); | 803     ClassElement enumElement = _buildElement(enumDeclaration); | 
| 804     List<FieldElement> fields = enumElement.fields; | 804     List<FieldElement> fields = enumElement.fields; | 
| 805     expect(fields, hasLength(5)); | 805     expect(fields, hasLength(5)); | 
| 806 | 806 | 
| 807     FieldElement constant = fields[2]; | 807     FieldElement constant = fields[2]; | 
| 808     expect(constant, isNotNull); | 808     expect(constant, isNotNull); | 
| 809     expect(constant.name, firstName); | 809     expect(constant.name, firstName); | 
| 810     expect(constant.isStatic, isTrue); | 810     expect(constant.isStatic, isTrue); | 
| 811     expect((constant as FieldElementImpl).evaluationResult, isNotNull); | 811     expect((constant as FieldElementImpl).evaluationResult, isNotNull); | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
| 822     expect(constant, isNotNull); | 822     expect(constant, isNotNull); | 
| 823     expect(constant.name, thirdName); | 823     expect(constant.name, thirdName); | 
| 824     expect(constant.isStatic, isTrue); | 824     expect(constant.isStatic, isTrue); | 
| 825     expect((constant as FieldElementImpl).evaluationResult, isNotNull); | 825     expect((constant as FieldElementImpl).evaluationResult, isNotNull); | 
| 826     _assertGetter(constant); | 826     _assertGetter(constant); | 
| 827   } | 827   } | 
| 828 | 828 | 
| 829   void test_visitEnumDeclaration_single() { | 829   void test_visitEnumDeclaration_single() { | 
| 830     String firstName = "ONE"; | 830     String firstName = "ONE"; | 
| 831     EnumDeclaration enumDeclaration = | 831     EnumDeclaration enumDeclaration = | 
| 832         AstFactory.enumDeclaration2("E", [firstName]); | 832         AstTestFactory.enumDeclaration2("E", [firstName]); | 
| 833     enumDeclaration.constants[0].documentationComment = AstFactory | 833     enumDeclaration.constants[0].documentationComment = AstTestFactory | 
| 834         .documentationComment( | 834         .documentationComment( | 
| 835             [TokenFactory.tokenFromString('/// aaa')..offset = 50], []); | 835             [TokenFactory.tokenFromString('/// aaa')..offset = 50], []); | 
| 836 | 836 | 
| 837     ClassElement enumElement = _buildElement(enumDeclaration); | 837     ClassElement enumElement = _buildElement(enumDeclaration); | 
| 838     List<FieldElement> fields = enumElement.fields; | 838     List<FieldElement> fields = enumElement.fields; | 
| 839     expect(fields, hasLength(3)); | 839     expect(fields, hasLength(3)); | 
| 840 | 840 | 
| 841     FieldElement field = fields[0]; | 841     FieldElement field = fields[0]; | 
| 842     expect(field, isNotNull); | 842     expect(field, isNotNull); | 
| 843     expect(field.name, "index"); | 843     expect(field.name, "index"); | 
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 960   } | 960   } | 
| 961 | 961 | 
| 962   void test_reportTypeErrorForNode_differentNames() { | 962   void test_reportTypeErrorForNode_differentNames() { | 
| 963     DartType firstType = createType("/test1.dart", "A"); | 963     DartType firstType = createType("/test1.dart", "A"); | 
| 964     DartType secondType = createType("/test2.dart", "B"); | 964     DartType secondType = createType("/test2.dart", "B"); | 
| 965     GatheringErrorListener listener = new GatheringErrorListener(); | 965     GatheringErrorListener listener = new GatheringErrorListener(); | 
| 966     ErrorReporter reporter = | 966     ErrorReporter reporter = | 
| 967         new ErrorReporter(listener, firstType.element.source); | 967         new ErrorReporter(listener, firstType.element.source); | 
| 968     reporter.reportTypeErrorForNode( | 968     reporter.reportTypeErrorForNode( | 
| 969         StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE, | 969         StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE, | 
| 970         AstFactory.identifier3("x"), | 970         AstTestFactory.identifier3("x"), | 
| 971         [firstType, secondType]); | 971         [firstType, secondType]); | 
| 972     AnalysisError error = listener.errors[0]; | 972     AnalysisError error = listener.errors[0]; | 
| 973     expect(error.message.indexOf("(") < 0, isTrue); | 973     expect(error.message.indexOf("(") < 0, isTrue); | 
| 974   } | 974   } | 
| 975 | 975 | 
| 976   void test_reportTypeErrorForNode_sameName() { | 976   void test_reportTypeErrorForNode_sameName() { | 
| 977     String typeName = "A"; | 977     String typeName = "A"; | 
| 978     DartType firstType = createType("/test1.dart", typeName); | 978     DartType firstType = createType("/test1.dart", typeName); | 
| 979     DartType secondType = createType("/test2.dart", typeName); | 979     DartType secondType = createType("/test2.dart", typeName); | 
| 980     GatheringErrorListener listener = new GatheringErrorListener(); | 980     GatheringErrorListener listener = new GatheringErrorListener(); | 
| 981     ErrorReporter reporter = | 981     ErrorReporter reporter = | 
| 982         new ErrorReporter(listener, firstType.element.source); | 982         new ErrorReporter(listener, firstType.element.source); | 
| 983     reporter.reportTypeErrorForNode( | 983     reporter.reportTypeErrorForNode( | 
| 984         StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE, | 984         StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE, | 
| 985         AstFactory.identifier3("x"), | 985         AstTestFactory.identifier3("x"), | 
| 986         [firstType, secondType]); | 986         [firstType, secondType]); | 
| 987     AnalysisError error = listener.errors[0]; | 987     AnalysisError error = listener.errors[0]; | 
| 988     expect(error.message.indexOf("(") >= 0, isTrue); | 988     expect(error.message.indexOf("(") >= 0, isTrue); | 
| 989   } | 989   } | 
| 990 } | 990 } | 
| 991 | 991 | 
| 992 @reflectiveTest | 992 @reflectiveTest | 
| 993 class ErrorSeverityTest extends EngineTestCase { | 993 class ErrorSeverityTest extends EngineTestCase { | 
| 994   void test_max_error_error() { | 994   void test_max_error_error() { | 
| 995     expect(ErrorSeverity.ERROR.max(ErrorSeverity.ERROR), | 995     expect(ErrorSeverity.ERROR.max(ErrorSeverity.ERROR), | 
| (...skipping 1273 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2269     expect(UriKind.fromEncoding(0x70), same(UriKind.PACKAGE_URI)); | 2269     expect(UriKind.fromEncoding(0x70), same(UriKind.PACKAGE_URI)); | 
| 2270     expect(UriKind.fromEncoding(0x58), same(null)); | 2270     expect(UriKind.fromEncoding(0x58), same(null)); | 
| 2271   } | 2271   } | 
| 2272 | 2272 | 
| 2273   void test_getEncoding() { | 2273   void test_getEncoding() { | 
| 2274     expect(UriKind.DART_URI.encoding, 0x64); | 2274     expect(UriKind.DART_URI.encoding, 0x64); | 
| 2275     expect(UriKind.FILE_URI.encoding, 0x66); | 2275     expect(UriKind.FILE_URI.encoding, 0x66); | 
| 2276     expect(UriKind.PACKAGE_URI.encoding, 0x70); | 2276     expect(UriKind.PACKAGE_URI.encoding, 0x70); | 
| 2277   } | 2277   } | 
| 2278 } | 2278 } | 
| OLD | NEW | 
|---|