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

Side by Side Diff: tests/standalone/src/io/HttpServerEarlyServerCloseTest.dart

Issue 9956062: Refactor the close and error handling of HTTP connections (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Addressed additional review comments Created 8 years, 8 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 #import("dart:io"); 1 #import("dart:io");
2 #import("dart:isolate"); 2 #import("dart:isolate");
3 3
4 class Server { 4 class Server {
5 Server() { 5 Server() {
6 HttpServer server = new HttpServer(); 6 HttpServer server = new HttpServer();
7 server.listen("127.0.0.1", 0); 7 server.listen("127.0.0.1", 0);
8 port = server.port; 8 port = server.port;
9 server.onRequest = (HttpRequest request, HttpResponse response) { 9 server.onRequest = (HttpRequest request, HttpResponse response) {
10 new Timer(100, (timer) => server.close()); 10 new Timer(0, (timer) => server.close());
11 }; 11 };
12 server.onError = (Object exception) { 12 server.onError = (e) {
13 Expect.fail("Close should not give an error."); 13 Expect.fail("No server errors expected: $e");
14 }; 14 };
15 } 15 }
16 int port; 16 int port;
17 } 17 }
18 18
19 class Client { 19 class Client {
20 Client(int port) { 20 Client(int port) {
21 ReceivePort r = new ReceivePort(); 21 ReceivePort r = new ReceivePort();
22 HttpClient client = new HttpClient(); 22 HttpClient client = new HttpClient();
23 HttpClientConnection c = client.get("127.0.0.1", port, "/"); 23 HttpClientConnection c = client.get("127.0.0.1", port, "/");
24 c.onRequest = (HttpClientRequest request) { 24 c.onRequest = (HttpClientRequest request) {
25 request.outputStream.close(); 25 request.outputStream.close();
26 }; 26 };
27 c.onResponse = (HttpClientResponse response) { 27 c.onResponse = (HttpClientResponse response) {
28 Expect.fail("Response should not be given, as not data was returned."); 28 Expect.fail("Response should not be given, as not data was returned.");
29 }; 29 };
30 c.onError = (Object exception) { 30 c.onError = (e) {
31 r.close(); 31 r.close();
32 }; 32 };
33 } 33 }
34 } 34 }
35 35
36 main() { 36 main() {
37 Server server = new Server(); 37 Server server = new Server();
38 new Client(server.port); 38 new Client(server.port);
39 } 39 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698