Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Side by Side Diff: tests/standalone/io/http_content_length_test.dart

Issue 12383048: Improve support for HTTP 1.0 clients (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tests/standalone/io/http_10_test.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 import "dart:isolate"; 5 import "dart:isolate";
6 import "dart:io"; 6 import "dart:io";
7 7
8 void testNoBody(int totalConnections, bool explicitContentLength) { 8 void testNoBody(int totalConnections, bool explicitContentLength) {
9 var errors = 0; 9 var errors = 0;
10 HttpServer.bind("127.0.0.1", 0, totalConnections).then((server) { 10 HttpServer.bind("127.0.0.1", 0, totalConnections).then((server) {
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 client.close(); 192 client.close();
193 server.close(); 193 server.close();
194 } 194 }
195 }); 195 });
196 }) 196 })
197 .catchError((e) => Expect.fail("Unexpected error $e")); 197 .catchError((e) => Expect.fail("Unexpected error $e"));
198 } 198 }
199 }); 199 });
200 } 200 }
201 201
202 void testHttp10() {
203 HttpServer.bind("127.0.0.1", 0, 5).then((server) {
204 server.listen(
205 (HttpRequest request) {
206 Expect.isNull(request.headers.value('content-length'));
207 Expect.equals(-1, request.contentLength);
208 var response = request.response;
209 response.contentLength = 0;
210 Expect.equals("1.0", request.protocolVersion);
211 response.done
212 .then((_) => Expect.fail("Unexpected response completion"))
213 .catchError((e) => Expect.isTrue(e.error is HttpException));
214 response.addString("x");
215 response.close();
216 Expect.throws(() => response.addString("x"),
217 (e) => e is StateError);
218 },
219 onError: (e) => Expect.fail("Unexpected error $e"));
220
221 Socket.connect("127.0.0.1", server.port).then((socket) {
222 socket.addString("GET / HTTP/1.0\r\n\r\n");
223 socket.close();
224 socket.listen(
225 (d) { },
226 onDone: () {
227 socket.destroy();
228 server.close();
229 });
230 });
231 });
232 }
233
234 void main() { 202 void main() {
235 testNoBody(5, false); 203 testNoBody(5, false);
236 testNoBody(5, true); 204 testNoBody(5, true);
237 testBody(5, false); 205 testBody(5, false);
238 testBody(5, true); 206 testBody(5, true);
239 testBodyChunked(5, false); 207 testBodyChunked(5, false);
240 testBodyChunked(5, true); 208 testBodyChunked(5, true);
241 testHttp10();
242 } 209 }
OLDNEW
« no previous file with comments | « tests/standalone/io/http_10_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698