| Index: dart/tests/standalone/io/http_server_early_client_close_test.dart
|
| ===================================================================
|
| --- dart/tests/standalone/io/http_server_early_client_close_test.dart (revision 23199)
|
| +++ dart/tests/standalone/io/http_server_early_client_close_test.dart (working copy)
|
| @@ -18,10 +18,10 @@
|
| Expect.fail("No data response was expected");
|
| });
|
| socket.add(data);
|
| - socket.done.then((_) {
|
| - socket.destroy();
|
| - });
|
| - return socket.close();
|
| + return socket.close()
|
| + .then((_) {
|
| + socket.destroy();
|
| + });
|
| });
|
| }
|
|
|
| @@ -38,6 +38,7 @@
|
| bool calledOnError = false;
|
| bool calledOnDone = false;
|
| ReceivePort port = new ReceivePort();
|
| + var requestCompleter = new Completer();
|
| server.listen(
|
| (request) {
|
| Expect.isTrue(expectRequest);
|
| @@ -46,13 +47,15 @@
|
| calledOnRequest = true;
|
| request.listen(
|
| (_) {},
|
| + onDone: () {
|
| + requestCompleter.complete();
|
| + },
|
| onError: (error) {
|
| Expect.isFalse(calledOnError);
|
| Expect.equals(exception, error.message);
|
| calledOnError = true;
|
| if (exception != null) port.close();
|
| });
|
| - server.close();
|
| },
|
| onDone: () {
|
| Expect.equals(expectRequest, calledOnRequest);
|
| @@ -67,7 +70,8 @@
|
| if (d == null) Expect.fail("Invalid data");
|
| sendData(d, server.port)
|
| .then((_) {
|
| - if (!expectRequest) server.close();
|
| + if (!expectRequest) requestCompleter.complete();
|
| + requestCompleter.future.then((_) => server.close());
|
| });
|
|
|
| return c.future;
|
|
|