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

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

Issue 12504006: Make IOSink implement StringSink (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Addressed second round of review comments 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
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 // 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 "dart:async"; 10 import "dart:async";
(...skipping 22 matching lines...) Expand all
33 }); 33 });
34 } 34 }
35 }); 35 });
36 } 36 }
37 37
38 38
39 void test2(int totalConnections, int outputStreamWrites) { 39 void test2(int totalConnections, int outputStreamWrites) {
40 // Server which responds without waiting for request body. 40 // Server which responds without waiting for request body.
41 HttpServer.bind().then((server) { 41 HttpServer.bind().then((server) {
42 server.listen((HttpRequest request) { 42 server.listen((HttpRequest request) {
43 request.response.addString("!dlrow ,olleH"); 43 request.response.write("!dlrow ,olleH");
44 request.response.close(); 44 request.response.close();
45 }); 45 });
46 46
47 int count = 0; 47 int count = 0;
48 HttpClient client = new HttpClient(); 48 HttpClient client = new HttpClient();
49 for (int i = 0; i < totalConnections; i++) { 49 for (int i = 0; i < totalConnections; i++) {
50 client.get("127.0.0.1", server.port, "/") 50 client.get("127.0.0.1", server.port, "/")
51 .then((HttpClientRequest request) { 51 .then((HttpClientRequest request) {
52 request.contentLength = -1; 52 request.contentLength = -1;
53 for (int i = 0; i < outputStreamWrites; i++) { 53 for (int i = 0; i < outputStreamWrites; i++) {
54 request.addString("Hello, world!"); 54 request.write("Hello, world!");
55 } 55 }
56 request.done.catchError((_) {}); 56 request.done.catchError((_) {});
57 return request.close(); 57 return request.close();
58 }) 58 })
59 .then((HttpClientResponse response) { 59 .then((HttpClientResponse response) {
60 response.listen( 60 response.listen(
61 (_) {}, 61 (_) {},
62 onDone: () { 62 onDone: () {
63 count++; 63 count++;
64 if (count == totalConnections) { 64 if (count == totalConnections) {
(...skipping 14 matching lines...) Expand all
79 }); 79 });
80 } 80 }
81 81
82 82
83 void test3(int totalConnections) { 83 void test3(int totalConnections) {
84 // Server which responds when request body has been received. 84 // Server which responds when request body has been received.
85 HttpServer.bind().then((server) { 85 HttpServer.bind().then((server) {
86 86
87 server.listen((HttpRequest request) { 87 server.listen((HttpRequest request) {
88 request.listen((_) {}, onDone: () { 88 request.listen((_) {}, onDone: () {
89 request.response.addString("!dlrow ,olleH"); 89 request.response.write("!dlrow ,olleH");
90 request.response.close(); 90 request.response.close();
91 }); 91 });
92 }); 92 });
93 93
94 int count = 0; 94 int count = 0;
95 HttpClient client = new HttpClient(); 95 HttpClient client = new HttpClient();
96 for (int i = 0; i < totalConnections; i++) { 96 for (int i = 0; i < totalConnections; i++) {
97 client.get("127.0.0.1", server.port, "/") 97 client.get("127.0.0.1", server.port, "/")
98 .then((HttpClientRequest request) { 98 .then((HttpClientRequest request) {
99 request.contentLength = -1; 99 request.contentLength = -1;
100 request.addString("Hello, world!"); 100 request.write("Hello, world!");
101 return request.close(); 101 return request.close();
102 }) 102 })
103 .then((HttpClientResponse response) { 103 .then((HttpClientResponse response) {
104 response.listen((_) {}, onDone: () { 104 response.listen((_) {}, onDone: () {
105 count++; 105 count++;
106 if (count == totalConnections) { 106 if (count == totalConnections) {
107 client.close(); 107 client.close();
108 server.close(); 108 server.close();
109 } 109 }
110 }); 110 });
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 }, 157 },
158 onError: (error) { }); 158 onError: (error) { });
159 159
160 // Create a number of client requests and keep then active. Then 160 // Create a number of client requests and keep then active. Then
161 // close the client and wait for the server to lose all active 161 // close the client and wait for the server to lose all active
162 // connections. 162 // connections.
163 var client= new HttpClient(); 163 var client= new HttpClient();
164 for (int i = 0; i < totalConnections; i++) { 164 for (int i = 0; i < totalConnections; i++) {
165 client.post("127.0.0.1", server.port, "/") 165 client.post("127.0.0.1", server.port, "/")
166 .then((request) { 166 .then((request) {
167 request.add([0]); 167 request.writeBytes([0]);
168 // TODO(sgjesse): Make this test work with 168 // TODO(sgjesse): Make this test work with
169 //request.response instead of request.close() return 169 //request.response instead of request.close() return
170 //return request.response; 170 //return request.response;
171 request.done.catchError((e) {}); 171 request.done.catchError((e) {});
172 return request.close(); 172 return request.close();
173 }) 173 })
174 .then((response) { }) 174 .then((response) { })
175 .catchError((e) { }, test: (e) => e is HttpParserException); 175 .catchError((e) { }, test: (e) => e is HttpParserException);
176 } 176 }
177 bool clientClosed = false; 177 bool clientClosed = false;
(...skipping 19 matching lines...) Expand all
197 test1(10); 197 test1(10);
198 test2(1, 10); 198 test2(1, 10);
199 test2(10, 10); 199 test2(10, 10);
200 test2(10, 1000); 200 test2(10, 1000);
201 test3(1); 201 test3(1);
202 test3(10); 202 test3(10);
203 test4(); 203 test4();
204 test5(1); 204 test5(1);
205 test5(10); 205 test5(10);
206 } 206 }
OLDNEW
« no previous file with comments | « tests/standalone/io/http_server_response_test.dart ('k') | tests/standalone/io/http_stream_close_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698