| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 // VMOptions= | 5 // VMOptions= |
| 6 // VMOptions=--short_socket_read | 6 // VMOptions=--short_socket_read |
| 7 // VMOptions=--short_socket_write | 7 // VMOptions=--short_socket_write |
| 8 // VMOptions=--short_socket_read --short_socket_write | 8 // VMOptions=--short_socket_read --short_socket_write |
| 9 | 9 |
| 10 import "package:expect/expect.dart"; | 10 import "package:expect/expect.dart"; |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 request.contentLength = 0; | 56 request.contentLength = 0; |
| 57 } | 57 } |
| 58 return request.close(); | 58 return request.close(); |
| 59 }) | 59 }) |
| 60 .then((response) { | 60 .then((response) { |
| 61 Expect.equals("0", response.headers.value('content-length')); | 61 Expect.equals("0", response.headers.value('content-length')); |
| 62 Expect.equals(0, response.contentLength); | 62 Expect.equals(0, response.contentLength); |
| 63 response.drain(); | 63 response.drain(); |
| 64 }) | 64 }) |
| 65 .catchError((e, trace) { | 65 .catchError((e, trace) { |
| 66 String msg = "Unexpected error $e"; | 66 // It's also okay to fail, as headers may not be written. |
| 67 if (trace != null) msg += "\nStackTrace: $trace"; | |
| 68 Expect.fail(msg); | |
| 69 }); | 67 }); |
| 70 } | 68 } |
| 71 }); | 69 }); |
| 72 } | 70 } |
| 73 | 71 |
| 74 void testBody(int totalConnections, bool useHeader) { | 72 void testBody(int totalConnections, bool useHeader) { |
| 75 HttpServer.bind("127.0.0.1", 0, backlog: totalConnections).then((server) { | 73 HttpServer.bind("127.0.0.1", 0, backlog: totalConnections).then((server) { |
| 76 int serverCount = 0; | 74 int serverCount = 0; |
| 77 server.listen( | 75 server.listen( |
| 78 (HttpRequest request) { | 76 (HttpRequest request) { |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 response.listen( | 133 response.listen( |
| 136 (d) {}, | 134 (d) {}, |
| 137 onDone: () { | 135 onDone: () { |
| 138 if (++clientCount == totalConnections) { | 136 if (++clientCount == totalConnections) { |
| 139 client.close(); | 137 client.close(); |
| 140 } | 138 } |
| 141 }, | 139 }, |
| 142 onError: (error, trace) { | 140 onError: (error, trace) { |
| 143 // Undefined what server response sends. | 141 // Undefined what server response sends. |
| 144 }); | 142 }); |
| 143 }) |
| 144 .catchError((error) { |
| 145 // It's also okay to fail, as headers may not be written. |
| 145 }); | 146 }); |
| 146 } | 147 } |
| 147 }); | 148 }); |
| 148 } | 149 } |
| 149 | 150 |
| 150 void testBodyChunked(int totalConnections, bool useHeader) { | 151 void testBodyChunked(int totalConnections, bool useHeader) { |
| 151 HttpServer.bind("127.0.0.1", 0, backlog: totalConnections).then((server) { | 152 HttpServer.bind("127.0.0.1", 0, backlog: totalConnections).then((server) { |
| 152 server.listen( | 153 server.listen( |
| 153 (HttpRequest request) { | 154 (HttpRequest request) { |
| 154 Expect.isNull(request.headers.value('content-length')); | 155 Expect.isNull(request.headers.value('content-length')); |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 testNoBody(5, false); | 253 testNoBody(5, false); |
| 253 testNoBody(25, false); | 254 testNoBody(25, false); |
| 254 testNoBody(5, true); | 255 testNoBody(5, true); |
| 255 testNoBody(25, true); | 256 testNoBody(25, true); |
| 256 testBody(5, false); | 257 testBody(5, false); |
| 257 testBody(5, true); | 258 testBody(5, true); |
| 258 testBodyChunked(5, false); | 259 testBodyChunked(5, false); |
| 259 testBodyChunked(5, true); | 260 testBodyChunked(5, true); |
| 260 testSetContentLength(); | 261 testSetContentLength(); |
| 261 } | 262 } |
| OLD | NEW |