Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Side by Side Diff: tests/compiler/dart2js/compiler_helper.dart

Issue 1336843003: Avoid dart:io dependency in try (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | tests/compiler/dart2js/mock_compiler.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 library compiler_helper; 5 library compiler_helper;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import "package:expect/expect.dart"; 8 import "package:expect/expect.dart";
9 9
10 import 'package:compiler/compiler.dart' as api;
11
12 import 'package:compiler/src/elements/elements.dart' 10 import 'package:compiler/src/elements/elements.dart'
13 as lego; 11 as lego;
14 export 'package:compiler/src/elements/elements.dart'; 12 export 'package:compiler/src/elements/elements.dart';
15 13
16 import 'package:compiler/src/js_backend/js_backend.dart' 14 import 'package:compiler/src/js_backend/js_backend.dart'
17 as js; 15 as js;
18 16
19 import 'package:compiler/src/commandline_options.dart'; 17 import 'package:compiler/src/commandline_options.dart';
20 import 'package:compiler/src/common/codegen.dart'; 18 import 'package:compiler/src/common/codegen.dart';
21 import 'package:compiler/src/common/resolution.dart'; 19 import 'package:compiler/src/common/resolution.dart';
(...skipping 11 matching lines...) Expand all
33 export 'package:compiler/src/util/util.dart'; 31 export 'package:compiler/src/util/util.dart';
34 32
35 import 'package:compiler/src/compiler.dart' 33 import 'package:compiler/src/compiler.dart'
36 show Compiler; 34 show Compiler;
37 35
38 export 'package:compiler/src/tree/tree.dart'; 36 export 'package:compiler/src/tree/tree.dart';
39 37
40 import 'mock_compiler.dart'; 38 import 'mock_compiler.dart';
41 export 'mock_compiler.dart'; 39 export 'mock_compiler.dart';
42 40
43 import 'memory_compiler.dart'; 41 import 'memory_compiler.dart' hide compilerFor;
44 42
45 import 'output_collector.dart'; 43 import 'output_collector.dart';
46 export 'output_collector.dart'; 44 export 'output_collector.dart';
47 45
48 /// Compile [code] and returns the code for [entry]. 46 /// Compile [code] and returns the code for [entry].
49 /// 47 ///
50 /// If [check] is provided, it is executed on the code for [entry] before 48 /// If [check] is provided, it is executed on the code for [entry] before
51 /// returning. If [useMock] is `true` the [MockCompiler] is used for 49 /// returning. If [useMock] is `true` the [MockCompiler] is used for
52 /// compilation, otherwise the memory compiler is used. 50 /// compilation, otherwise the memory compiler is used.
53 Future<String> compile(String code, 51 Future<String> compile(String code,
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 lego.Element element = compiler.mainApp.find(entry); 123 lego.Element element = compiler.mainApp.find(entry);
126 js.JavaScriptBackend backend = compiler.backend; 124 js.JavaScriptBackend backend = compiler.backend;
127 String generated = backend.getGeneratedCode(element); 125 String generated = backend.getGeneratedCode(element);
128 if (check != null) { 126 if (check != null) {
129 check(generated); 127 check(generated);
130 } 128 }
131 return generated; 129 return generated;
132 } 130 }
133 } 131 }
134 132
135 // TODO(herhut): Disallow warnings and errors during compilation by default.
Johnni Winther 2015/09/11 14:02:55 Moved to mock_compiler.dart
136 MockCompiler compilerFor(String code, Uri uri,
137 {bool analyzeAll: false,
138 bool analyzeOnly: false,
139 Map<String, String> coreSource,
140 bool disableInlining: true,
141 bool minify: false,
142 bool trustTypeAnnotations: false,
143 bool enableTypeAssertions: false,
144 int expectedErrors,
145 int expectedWarnings,
146 api.CompilerOutputProvider outputProvider}) {
147 MockCompiler compiler = new MockCompiler.internal(
148 analyzeAll: analyzeAll,
149 analyzeOnly: analyzeOnly,
150 coreSource: coreSource,
151 disableInlining: disableInlining,
152 enableMinification: minify,
153 trustTypeAnnotations: trustTypeAnnotations,
154 enableTypeAssertions: enableTypeAssertions,
155 expectedErrors: expectedErrors,
156 expectedWarnings: expectedWarnings,
157 outputProvider: outputProvider);
158 compiler.registerSource(uri, code);
159 compiler.diagnosticHandler = createHandler(compiler, code);
160 return compiler;
161 }
162
163 Future<String> compileAll(String code, 133 Future<String> compileAll(String code,
164 {Map<String, String> coreSource, 134 {Map<String, String> coreSource,
165 bool disableInlining: true, 135 bool disableInlining: true,
166 bool trustTypeAnnotations: false, 136 bool trustTypeAnnotations: false,
167 bool minify: false, 137 bool minify: false,
168 int expectedErrors, 138 int expectedErrors,
169 int expectedWarnings}) { 139 int expectedWarnings}) {
170 Uri uri = new Uri(scheme: 'source'); 140 Uri uri = new Uri(scheme: 'source');
171 OutputCollector outputCollector = new OutputCollector(); 141 OutputCollector outputCollector = new OutputCollector();
172 MockCompiler compiler = compilerFor( 142 MockCompiler compiler = compilerFor(
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
310 regexp = regexp.replaceAll(xRe, '(?:$anyIdentifier)'); 280 regexp = regexp.replaceAll(xRe, '(?:$anyIdentifier)');
311 final spaceRe = new RegExp('\\s+'); 281 final spaceRe = new RegExp('\\s+');
312 regexp = regexp.replaceAll(spaceRe, '(?:\\s*)'); 282 regexp = regexp.replaceAll(spaceRe, '(?:\\s*)');
313 if (shouldMatch) { 283 if (shouldMatch) {
314 Expect.isTrue(new RegExp(regexp).hasMatch(generated)); 284 Expect.isTrue(new RegExp(regexp).hasMatch(generated));
315 } else { 285 } else {
316 Expect.isFalse(new RegExp(regexp).hasMatch(generated)); 286 Expect.isFalse(new RegExp(regexp).hasMatch(generated));
317 } 287 }
318 }); 288 });
319 } 289 }
OLDNEW
« no previous file with comments | « no previous file | tests/compiler/dart2js/mock_compiler.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698