@@ -103,8 +103,7 @@ main() {
103
103
104
104
setUp (() {
105
105
greetingDart.writeAsStringSync ('String greeting = "hello";' );
106
- helloDart.writeAsStringSync (
107
- 'import "greeting.dart";'
106
+ helloDart.writeAsStringSync ('import "greeting.dart";'
108
107
'main() => print(greeting);' );
109
108
});
110
109
@@ -148,6 +147,37 @@ main() {
148
147
expect (helloJS.existsSync (), isTrue);
149
148
});
150
149
});
150
+
151
+ group ('Error handling' , () {
152
+ final badFileDart = new File ('test/worker/bad.dart' ).absolute;
153
+ final badFileJs = new File ('test/worker/bad.js' ).absolute;
154
+
155
+ tearDown (() {
156
+ if (badFileDart.existsSync ()) badFileDart.deleteSync ();
157
+ if (badFileJs.existsSync ()) badFileJs.deleteSync ();
158
+ });
159
+
160
+ test ('incorrect usage' , () {
161
+ var result = Process .runSync ('dart' , ['bin/dartdevc.dart' , 'oops' ,]);
162
+ expect (result.exitCode, 64 );
163
+ expect (result.stdout, contains ('Could not find a command named "oops"' ));
164
+ expect (result.stdout, isNot (contains ('#0' )));
165
+ });
166
+
167
+ test ('compile errors' , () {
168
+ badFileDart.writeAsStringSync ('main() => "hello world"' );
169
+ var result = Process .runSync ('dart' , [
170
+ 'bin/dartdevc.dart' ,
171
+ 'compile' ,
172
+ '--no-source-map' ,
173
+ '-o' ,
174
+ badFileJs.path,
175
+ badFileDart.path,
176
+ ]);
177
+ expect (result.exitCode, 1 );
178
+ expect (result.stdout, contains ("[error] Expected to find ';'" ));
179
+ });
180
+ });
151
181
}
152
182
153
183
Future <WorkResponse > _readResponse (MessageGrouper messageGrouper) async {
0 commit comments