| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 @TestOn("vm") | 5 @TestOn("vm") |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 import 'dart:io'; | 8 import 'dart:io'; |
| 9 | 9 |
| 10 import 'package:test/test.dart'; | 10 import 'package:test/test.dart'; |
| 11 import 'package:test/src/runner/browser/firefox.dart'; | 11 import 'package:test/src/runner/browser/firefox.dart'; |
| 12 import 'package:test/src/util/io.dart'; | 12 import 'package:test/src/util/io.dart'; |
| 13 import 'package:shelf/shelf.dart' as shelf; | 13 import 'package:shelf/shelf.dart' as shelf; |
| 14 import 'package:shelf/shelf_io.dart' as shelf_io; | 14 import 'package:shelf/shelf_io.dart' as shelf_io; |
| 15 import 'package:shelf_web_socket/shelf_web_socket.dart'; | 15 import 'package:shelf_web_socket/shelf_web_socket.dart'; |
| 16 | 16 |
| 17 import '../../utils.dart'; |
| 18 |
| 17 void main() { | 19 void main() { |
| 18 group("running JavaScript", () { | 20 group("running JavaScript", () { |
| 19 // The JavaScript to serve in the server. We use actual JavaScript here to | 21 // The JavaScript to serve in the server. We use actual JavaScript here to |
| 20 // avoid the pain of compiling to JS in a test | 22 // avoid the pain of compiling to JS in a test |
| 21 var javaScript; | 23 var javaScript; |
| 22 | 24 |
| 23 var servePage = (request) { | 25 var servePage = (request) { |
| 24 var path = request.url.path; | 26 var path = request.url.path; |
| 25 | 27 |
| 26 // We support both shelf 0.5.x and 0.6.x. The former has a leading "/" | 28 // We support both shelf 0.5.x and 0.6.x. The former has a leading "/" |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 128 return shelf_io.serve(expectAsync((_) {}, count: 0), 'localhost', 0) | 130 return shelf_io.serve(expectAsync((_) {}, count: 0), 'localhost', 0) |
| 129 .then((server) { | 131 .then((server) { |
| 130 var firefox = new Firefox(baseUrlForAddress(server.address, server.port)); | 132 var firefox = new Firefox(baseUrlForAddress(server.address, server.port)); |
| 131 return firefox.close().whenComplete(server.close); | 133 return firefox.close().whenComplete(server.close); |
| 132 }); | 134 }); |
| 133 }); | 135 }); |
| 134 | 136 |
| 135 test("reports an error in onExit", () { | 137 test("reports an error in onExit", () { |
| 136 var firefox = new Firefox("http://dart-lang.org", | 138 var firefox = new Firefox("http://dart-lang.org", |
| 137 executable: "_does_not_exist"); | 139 executable: "_does_not_exist"); |
| 138 expect(firefox.onExit, throwsA(new isInstanceOf<ProcessException>())); | 140 expect(firefox.onExit, throwsA(isApplicationException(startsWith( |
| 141 "Failed to start Firefox: No such file or directory")))); |
| 139 }); | 142 }); |
| 140 } | 143 } |
| OLD | NEW |