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

Side by Side Diff: test/worker/worker_test.dart

Issue 2188033002: fix #607, add support for package config file Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: remove obsolete todo Created 4 years, 4 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
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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:convert'; 6 import 'dart:convert';
7 import 'dart:io'; 7 import 'dart:io';
8 8
9 import 'package:bazel_worker/bazel_worker.dart'; 9 import 'package:bazel_worker/bazel_worker.dart';
10 // TODO(jakemac): Remove once this is a part of the testing library. 10 // TODO(jakemac): Remove once this is a part of the testing library.
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 helloJS.path, 146 helloJS.path,
147 helloDart.path, 147 helloDart.path,
148 ]); 148 ]);
149 expect(result.exitCode, EXIT_CODE_OK); 149 expect(result.exitCode, EXIT_CODE_OK);
150 expect(result.stdout, isEmpty); 150 expect(result.stdout, isEmpty);
151 expect(result.stderr, isEmpty); 151 expect(result.stderr, isEmpty);
152 expect(helloJS.existsSync(), isTrue); 152 expect(helloJS.existsSync(), isTrue);
153 }); 153 });
154 }); 154 });
155 155
156 group('package config', () {
157 final greetingDart = new File('test/worker/greeting.dart').absolute;
158 final helloDart = new File('test/worker/hello.dart').absolute;
159 final packageConfig = new File('test/worker/package_config').absolute;
160
161 final greetingJS = new File('test/worker/greeting.js').absolute;
162 final greetingSummary = new File('test/worker/greeting.sum').absolute;
163 final helloJS = new File('test/worker/hello_world.js').absolute;
164
165 setUp(() {
166 greetingDart.writeAsStringSync('String greeting = "hello";');
167 helloDart.writeAsStringSync('import "package:greet/greeting.dart";'
168 'main() => print(greeting);');
169 packageConfig.writeAsStringSync(
170 'greet:${new Directory('test/worker').absolute.uri}');
171 });
172
173 tearDown(() {
174 if (greetingDart.existsSync()) greetingDart.deleteSync();
175 if (helloDart.existsSync()) helloDart.deleteSync();
176 if (packageConfig.existsSync()) packageConfig.deleteSync();
177 if (greetingJS.existsSync()) greetingJS.deleteSync();
178 if (greetingSummary.existsSync()) greetingSummary.deleteSync();
179 if (helloJS.existsSync()) helloJS.deleteSync();
180 });
181
182 test('can resolve package imports', () {
183 var result = Process.runSync('dart', [
184 'bin/dartdevc.dart',
185 '--no-source-map',
186 '-o',
187 greetingJS.path,
188 '--packages',
189 packageConfig.path,
190 'package:greet/greeting.dart',
191 ]);
192 expect(result.stdout, isEmpty);
193 expect(result.stderr, isEmpty);
194 expect(result.exitCode, EXIT_CODE_OK);
195 expect(greetingJS.existsSync(), isTrue);
196 expect(greetingSummary.existsSync(), isTrue);
197
198 result = Process.runSync('dart', [
199 'bin/dartdevc.dart',
200 '--no-source-map',
201 '--no-summarize',
202 '-s',
203 greetingSummary.path,
204 '-o',
205 helloJS.path,
206 helloDart.path,
207 ]);
208 expect(result.stdout, isEmpty);
209 expect(result.stderr, isEmpty);
210 expect(result.exitCode, EXIT_CODE_OK);
211 expect(helloJS.existsSync(), isTrue);
212 });
213 });
214
156 group('Error handling', () { 215 group('Error handling', () {
157 final badFileDart = new File('test/worker/bad.dart').absolute; 216 final badFileDart = new File('test/worker/bad.dart').absolute;
158 final badFileJs = new File('test/worker/bad.js').absolute; 217 final badFileJs = new File('test/worker/bad.js').absolute;
159 218
160 tearDown(() { 219 tearDown(() {
161 if (badFileDart.existsSync()) badFileDart.deleteSync(); 220 if (badFileDart.existsSync()) badFileDart.deleteSync();
162 if (badFileJs.existsSync()) badFileJs.deleteSync(); 221 if (badFileJs.existsSync()) badFileJs.deleteSync();
163 }); 222 });
164 223
165 test('incorrect usage', () { 224 test('incorrect usage', () {
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 Future<WorkResponse> _readResponse(MessageGrouper messageGrouper) async { 324 Future<WorkResponse> _readResponse(MessageGrouper messageGrouper) async {
266 var buffer = (await messageGrouper.next) as List<int>; 325 var buffer = (await messageGrouper.next) as List<int>;
267 try { 326 try {
268 return new WorkResponse.fromBuffer(buffer); 327 return new WorkResponse.fromBuffer(buffer);
269 } catch (_) { 328 } catch (_) {
270 var bufferAsString = 329 var bufferAsString =
271 buffer == null ? '' : 'String: ${UTF8.decode(buffer)}\n'; 330 buffer == null ? '' : 'String: ${UTF8.decode(buffer)}\n';
272 throw 'Failed to parse response:\nbytes: $buffer\n$bufferAsString'; 331 throw 'Failed to parse response:\nbytes: $buffer\n$bufferAsString';
273 } 332 }
274 } 333 }
OLDNEW
« lib/src/analyzer/context.dart ('K') | « pubspec.yaml ('k') | tool/global_compile.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698