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; |