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

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

Issue 11886046: Fix a test which needed an error handler after r17064 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 11 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 | « no previous file | tests/standalone/standalone.status » ('j') | 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 5
6 import "dart:async"; 6 import "dart:async";
7 import "dart:io"; 7 import "dart:io";
8 import "dart:uri"; 8 import "dart:uri";
9 9
10 void testHttp10Close(bool closeRequest) { 10 void testHttp10Close(bool closeRequest) {
(...skipping 25 matching lines...) Expand all
36 if (closeRequest) socket.outputStream.close(); 36 if (closeRequest) socket.outputStream.close();
37 socket.onData = () => socket.readList(buffer, 0, buffer.length); 37 socket.onData = () => socket.readList(buffer, 0, buffer.length);
38 socket.onClosed = () { 38 socket.onClosed = () {
39 if (!closeRequest) socket.close(true); 39 if (!closeRequest) socket.close(true);
40 server.close(); 40 server.close();
41 }; 41 };
42 }; 42 };
43 } 43 }
44 44
45 void testStreamResponse() { 45 void testStreamResponse() {
46 Timer timer;
46 var server = new HttpServer(); 47 var server = new HttpServer();
48 server.onError = (e) {
49 server.close();
50 timer.cancel();
51 };
47 server.listen("127.0.0.1", 0, backlog: 5); 52 server.listen("127.0.0.1", 0, backlog: 5);
48 server.defaultRequestHandler = (var request, var response) { 53 server.defaultRequestHandler = (var request, var response) {
49 new Timer.repeating(10, (x) { 54 timer = new Timer.repeating(10, (_) {
50 Date now = new Date.now(); 55 Date now = new Date.now();
51 try { 56 try {
52 response.outputStream.writeString( 57 response.outputStream.writeString(
53 'data:${now.millisecondsSinceEpoch}\n\n'); 58 'data:${now.millisecondsSinceEpoch}\n\n');
54 } catch (e) { 59 } catch (e) {
55 x.cancel(); 60 timer.cancel();
56 server.close(); 61 server.close();
57 } 62 }
58 }); 63 });
59 }; 64 };
60 65
61 var client = new HttpClient(); 66 var client = new HttpClient();
62 var connection = 67 var connection =
63 client.getUrl(new Uri.fromString("http://127.0.0.1:${server.port}")); 68 client.getUrl(new Uri.fromString("http://127.0.0.1:${server.port}"));
64 connection.onResponse = (resp) { 69 connection.onResponse = (resp) {
65 int bytes = 0; 70 int bytes = 0;
66 resp.inputStream.onData = () { 71 resp.inputStream.onData = () {
67 bytes += resp.inputStream.read().length; 72 bytes += resp.inputStream.read().length;
68 if (bytes > 100) { 73 if (bytes > 100) {
69 client.shutdown(force: true); 74 client.shutdown(force: true);
70 } 75 }
71 }; 76 };
72 }; 77 };
73 connection.onError = (e) => Expect.isTrue(e is HttpException); 78 connection.onError = (e) => Expect.isTrue(e is HttpException);
74 } 79 }
75 80
76 main() { 81 main() {
77 testHttp10Close(false); 82 testHttp10Close(false);
78 testHttp10Close(true); 83 testHttp10Close(true);
79 testHttp11Close(false); 84 testHttp11Close(false);
80 testHttp11Close(true); 85 testHttp11Close(true);
81 testStreamResponse(); 86 testStreamResponse();
82 } 87 }
OLDNEW
« no previous file with comments | « no previous file | tests/standalone/standalone.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698