OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 'dart:async'; | 5 import 'dart:async'; |
6 import 'dart:io'; | 6 import 'dart:io'; |
7 import 'dart:uri'; | 7 import 'dart:uri'; |
| 8 import 'package:expect/expect.dart'; |
8 import '../../../sdk/lib/_internal/compiler/implementation/filenames.dart'; | 9 import '../../../sdk/lib/_internal/compiler/implementation/filenames.dart'; |
9 import '../../../sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart'
; | 10 import '../../../sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart'
; |
10 import '../../../sdk/lib/_internal/compiler/implementation/mirrors/dart2js_mirro
r.dart'; | 11 import '../../../sdk/lib/_internal/compiler/implementation/mirrors/dart2js_mirro
r.dart'; |
11 import '../../../sdk/lib/_internal/compiler/implementation/source_file_provider.
dart'; | 12 import '../../../sdk/lib/_internal/compiler/implementation/source_file_provider.
dart'; |
12 import 'mock_compiler.dart'; | 13 import 'mock_compiler.dart'; |
13 | 14 |
14 const String SOURCE = 'source'; | 15 const String SOURCE = 'source'; |
| 16 const Uri SOURCE_URI = const Uri.fromComponents(scheme: SOURCE, path: SOURCE); |
15 | 17 |
16 MirrorSystem createMirrorSystem(String source) { | 18 MirrorSystem createMirrorSystem(String source) { |
17 Uri sourceUri = new Uri.fromComponents(scheme: SOURCE, path: SOURCE); | |
18 MockCompiler compiler = new MockCompiler( | 19 MockCompiler compiler = new MockCompiler( |
19 analyzeOnly: true, | 20 analyzeOnly: true, |
20 analyzeAll: true, | 21 analyzeAll: true, |
21 preserveComments: true); | 22 preserveComments: true); |
22 compiler.registerSource(sourceUri, source); | 23 compiler.registerSource(SOURCE_URI, source); |
23 compiler.librariesToAnalyzeWhenRun = <Uri>[sourceUri]; | 24 compiler.librariesToAnalyzeWhenRun = <Uri>[SOURCE_URI]; |
24 compiler.runCompiler(null); | 25 compiler.runCompiler(null); |
25 return new Dart2JsMirrorSystem(compiler); | 26 return new Dart2JsMirrorSystem(compiler); |
26 } | 27 } |
27 | 28 |
28 void validateDeclarationComment(String code, | 29 void validateDeclarationComment(String code, |
29 String text, | 30 String text, |
30 String trimmedText, | 31 String trimmedText, |
31 bool isDocComment, | 32 bool isDocComment, |
32 List<String> declarationNames) { | 33 List<String> declarationNames) { |
33 MirrorSystem mirrors = createMirrorSystem(code); | 34 MirrorSystem mirrors = createMirrorSystem(code); |
34 LibraryMirror library = mirrors.libraries[SOURCE]; | 35 LibraryMirror library = mirrors.libraries[SOURCE_URI]; |
35 Expect.isNotNull(library); | 36 Expect.isNotNull(library); |
36 for (String declarationName in declarationNames) { | 37 for (String declarationName in declarationNames) { |
37 DeclarationMirror declaration = library.members[declarationName]; | 38 DeclarationMirror declaration = library.members[declarationName]; |
38 Expect.isNotNull(declaration); | 39 Expect.isNotNull(declaration); |
39 List<InstanceMirror> metadata = declaration.metadata; | 40 List<InstanceMirror> metadata = declaration.metadata; |
40 Expect.isNotNull(metadata); | 41 Expect.isNotNull(metadata); |
41 Expect.equals(1, metadata.length); | 42 Expect.equals(1, metadata.length); |
42 Expect.isTrue(metadata[0] is CommentInstanceMirror); | 43 Expect.isTrue(metadata[0] is CommentInstanceMirror); |
43 CommentInstanceMirror commentMetadata = metadata[0]; | 44 CommentInstanceMirror commentMetadata = metadata[0]; |
44 Expect.equals(text, commentMetadata.text); | 45 Expect.equals(text, commentMetadata.text); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 testDeclarationComment('final int field = 0;', ['field']); | 77 testDeclarationComment('final int field = 0;', ['field']); |
77 testDeclarationComment('final field1 = 0, field2 = 0;', ['field1', 'field2']); | 78 testDeclarationComment('final field1 = 0, field2 = 0;', ['field1', 'field2']); |
78 testDeclarationComment('final int field1 = 0, field2 = 0;', | 79 testDeclarationComment('final int field1 = 0, field2 = 0;', |
79 ['field1', 'field2']); | 80 ['field1', 'field2']); |
80 testDeclarationComment('const field = 0;', ['field']); | 81 testDeclarationComment('const field = 0;', ['field']); |
81 testDeclarationComment('const int field = 0;', ['field']); | 82 testDeclarationComment('const int field = 0;', ['field']); |
82 testDeclarationComment('const field1 = 0, field2 = 0;', ['field1', 'field2']); | 83 testDeclarationComment('const field1 = 0, field2 = 0;', ['field1', 'field2']); |
83 testDeclarationComment('const int field1 = 0, field2 = 0;', | 84 testDeclarationComment('const int field1 = 0, field2 = 0;', |
84 ['field1', 'field2']); | 85 ['field1', 'field2']); |
85 } | 86 } |
OLD | NEW |