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

Unified 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, 5 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 side-by-side diff with in-line comments
Download patch
Index: test/worker/worker_test.dart
diff --git a/test/worker/worker_test.dart b/test/worker/worker_test.dart
index 6685acfda3490c08d6723cedb82178cfe5507d9c..10f1d2bbff4099cbc038ef8c179706c365832be5 100644
--- a/test/worker/worker_test.dart
+++ b/test/worker/worker_test.dart
@@ -153,6 +153,65 @@ main() {
});
});
+ group('package config', () {
+ final greetingDart = new File('test/worker/greeting.dart').absolute;
+ final helloDart = new File('test/worker/hello.dart').absolute;
+ final packageConfig = new File('test/worker/package_config').absolute;
+
+ final greetingJS = new File('test/worker/greeting.js').absolute;
+ final greetingSummary = new File('test/worker/greeting.sum').absolute;
+ final helloJS = new File('test/worker/hello_world.js').absolute;
+
+ setUp(() {
+ greetingDart.writeAsStringSync('String greeting = "hello";');
+ helloDart.writeAsStringSync('import "package:greet/greeting.dart";'
+ 'main() => print(greeting);');
+ packageConfig.writeAsStringSync(
+ 'greet:${new Directory('test/worker').absolute.uri}');
+ });
+
+ tearDown(() {
+ if (greetingDart.existsSync()) greetingDart.deleteSync();
+ if (helloDart.existsSync()) helloDart.deleteSync();
+ if (packageConfig.existsSync()) packageConfig.deleteSync();
+ if (greetingJS.existsSync()) greetingJS.deleteSync();
+ if (greetingSummary.existsSync()) greetingSummary.deleteSync();
+ if (helloJS.existsSync()) helloJS.deleteSync();
+ });
+
+ test('can resolve package imports', () {
+ var result = Process.runSync('dart', [
+ 'bin/dartdevc.dart',
+ '--no-source-map',
+ '-o',
+ greetingJS.path,
+ '--packages',
+ packageConfig.path,
+ 'package:greet/greeting.dart',
+ ]);
+ expect(result.stdout, isEmpty);
+ expect(result.stderr, isEmpty);
+ expect(result.exitCode, EXIT_CODE_OK);
+ expect(greetingJS.existsSync(), isTrue);
+ expect(greetingSummary.existsSync(), isTrue);
+
+ result = Process.runSync('dart', [
+ 'bin/dartdevc.dart',
+ '--no-source-map',
+ '--no-summarize',
+ '-s',
+ greetingSummary.path,
+ '-o',
+ helloJS.path,
+ helloDart.path,
+ ]);
+ expect(result.stdout, isEmpty);
+ expect(result.stderr, isEmpty);
+ expect(result.exitCode, EXIT_CODE_OK);
+ expect(helloJS.existsSync(), isTrue);
+ });
+ });
+
group('Error handling', () {
final badFileDart = new File('test/worker/bad.dart').absolute;
final badFileJs = new File('test/worker/bad.js').absolute;
« 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