| 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 import 'package:analyzer/dart/ast/ast.dart'; | 5 import 'package:analyzer/dart/ast/ast.dart'; |
| 6 import 'package:analyzer/dart/ast/standard_ast_factory.dart'; | 6 import 'package:analyzer/dart/ast/standard_ast_factory.dart'; |
| 7 import 'package:analyzer/dart/ast/token.dart'; | 7 import 'package:analyzer/dart/ast/token.dart'; |
| 8 import 'package:analyzer/dart/ast/visitor.dart'; | 8 import 'package:analyzer/dart/ast/visitor.dart'; |
| 9 import 'package:analyzer/error/error.dart'; | 9 import 'package:analyzer/error/error.dart'; |
| 10 import 'package:analyzer/error/listener.dart'; | 10 import 'package:analyzer/error/listener.dart'; |
| 11 import 'package:analyzer/src/dart/ast/token.dart'; | 11 import 'package:analyzer/src/dart/ast/token.dart'; |
| 12 import 'package:analyzer/src/dart/error/hint_codes.dart'; | 12 import 'package:analyzer/src/dart/error/hint_codes.dart'; |
| 13 import 'package:analyzer/src/dart/scanner/reader.dart'; | 13 import 'package:analyzer/src/dart/scanner/reader.dart'; |
| 14 import 'package:analyzer/src/dart/scanner/scanner.dart'; | 14 import 'package:analyzer/src/dart/scanner/scanner.dart'; |
| 15 import 'package:analyzer/src/fasta/ast_builder.dart'; |
| 15 import 'package:analyzer/src/generated/parser.dart'; | 16 import 'package:analyzer/src/generated/parser.dart'; |
| 16 import 'package:analyzer/src/generated/source.dart'; | 17 import 'package:analyzer/src/generated/source.dart'; |
| 17 import 'package:analyzer/src/generated/testing/token_factory.dart'; | 18 import 'package:analyzer/src/generated/testing/token_factory.dart'; |
| 18 import 'package:analyzer/src/generated/utilities_dart.dart'; | 19 import 'package:analyzer/src/generated/utilities_dart.dart'; |
| 19 import 'package:front_end/src/scanner/scanner.dart' as fe; | 20 import 'package:front_end/src/scanner/scanner.dart' as fe; |
| 20 import 'package:test/test.dart'; | 21 import 'package:test/test.dart'; |
| 21 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 22 import 'package:test_reflective_loader/test_reflective_loader.dart'; |
| 22 | 23 |
| 23 import 'test_support.dart'; | 24 import 'test_support.dart'; |
| 24 | 25 |
| (...skipping 13777 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13802 expect(annotation.constructorName.name, 'bar'); | 13803 expect(annotation.constructorName.name, 'bar'); |
| 13803 expect(annotation.arguments, isNotNull); | 13804 expect(annotation.arguments, isNotNull); |
| 13804 expect(annotation.arguments.arguments, hasLength(2)); | 13805 expect(annotation.arguments.arguments, hasLength(2)); |
| 13805 } | 13806 } |
| 13806 } | 13807 } |
| 13807 | 13808 |
| 13808 void test_parseClassDeclaration_native() { | 13809 void test_parseClassDeclaration_native() { |
| 13809 createParser('class A native "nativeValue" {}'); | 13810 createParser('class A native "nativeValue" {}'); |
| 13810 CompilationUnitMember member = parseFullCompilationUnitMember(); | 13811 CompilationUnitMember member = parseFullCompilationUnitMember(); |
| 13811 expect(member, isNotNull); | 13812 expect(member, isNotNull); |
| 13812 assertNoErrors(); | 13813 if (usingFastaParser && !AstBuilder.isNativeClauseAllowed) { |
| 13814 assertErrorsWithCodes([ |
| 13815 ParserErrorCode.NATIVE_CLAUSE_SHOULD_BE_ANNOTATION, |
| 13816 ]); |
| 13817 } else { |
| 13818 assertNoErrors(); |
| 13819 } |
| 13813 expect(member, new isInstanceOf<ClassDeclaration>()); | 13820 expect(member, new isInstanceOf<ClassDeclaration>()); |
| 13814 ClassDeclaration declaration = member; | 13821 ClassDeclaration declaration = member; |
| 13815 NativeClause nativeClause = declaration.nativeClause; | 13822 NativeClause nativeClause = declaration.nativeClause; |
| 13816 expect(nativeClause, isNotNull); | 13823 expect(nativeClause, isNotNull); |
| 13817 expect(nativeClause.nativeKeyword, isNotNull); | 13824 expect(nativeClause.nativeKeyword, isNotNull); |
| 13818 expect(nativeClause.name.stringValue, "nativeValue"); | 13825 expect(nativeClause.name.stringValue, "nativeValue"); |
| 13819 expect(nativeClause.beginToken, same(nativeClause.nativeKeyword)); | 13826 expect(nativeClause.beginToken, same(nativeClause.nativeKeyword)); |
| 13820 expect(nativeClause.endToken, same(nativeClause.name.endToken)); | 13827 expect(nativeClause.endToken, same(nativeClause.name.endToken)); |
| 13821 } | 13828 } |
| 13822 | 13829 |
| (...skipping 1610 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 15433 expectCommentText(typeVariable.documentationComment, '/// Doc'); | 15440 expectCommentText(typeVariable.documentationComment, '/// Doc'); |
| 15434 } | 15441 } |
| 15435 | 15442 |
| 15436 /** | 15443 /** |
| 15437 * Assert that the given [name] is in declaration context. | 15444 * Assert that the given [name] is in declaration context. |
| 15438 */ | 15445 */ |
| 15439 void _assertIsDeclarationName(SimpleIdentifier name) { | 15446 void _assertIsDeclarationName(SimpleIdentifier name) { |
| 15440 expect(name.inDeclarationContext(), isTrue); | 15447 expect(name.inDeclarationContext(), isTrue); |
| 15441 } | 15448 } |
| 15442 } | 15449 } |
| OLD | NEW |