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

Unified Diff: tests/standalone/io/http_connection_close_test.dart

Issue 12316036: Merge IO v2 branch to bleeding edge (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased to r18818 Created 7 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests/standalone/io/http_client_test.dart ('k') | tests/standalone/io/http_connection_header_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/standalone/io/http_connection_close_test.dart
diff --git a/tests/standalone/io/http_connection_close_test.dart b/tests/standalone/io/http_connection_close_test.dart
index 75f3b9825764ab861934f8f9c75b74cb5ccc9d86..e8f36091480986024dee67b11926d423feb2d1b8 100644
--- a/tests/standalone/io/http_connection_close_test.dart
+++ b/tests/standalone/io/http_connection_close_test.dart
@@ -1,4 +1,4 @@
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
//
@@ -8,74 +8,73 @@ import "dart:io";
import "dart:uri";
void testHttp10Close(bool closeRequest) {
- HttpServer server = new HttpServer();
- server.listen("127.0.0.1", 0, backlog: 5);
+ HttpServer.bind().then((server) {
+ server.listen((request) {
+ request.response.close();
+ });
- Socket socket = new Socket("127.0.0.1", server.port);
- socket.onConnect = () {
- List<int> buffer = new List<int>.fixedLength(1024);
- socket.outputStream.writeString("GET / HTTP/1.0\r\n\r\n");
- if (closeRequest) socket.outputStream.close();
- socket.onData = () => socket.readList(buffer, 0, buffer.length);
- socket.onClosed = () {
- if (!closeRequest) socket.close(true);
- server.close();
- };
- };
+ Socket.connect("127.0.0.1", server.port)
+ .then((socket) {
+ socket.addString("GET / HTTP/1.0\r\n\r\n");
+ socket.listen(
+ (data) {},
+ onDone: () {
+ if (!closeRequest) socket.destroy();
+ server.close();
+ });
+ if (closeRequest) socket.close();
+ });
+ });
}
void testHttp11Close(bool closeRequest) {
- HttpServer server = new HttpServer();
- server.listen("127.0.0.1", 0, backlog: 5);
+ HttpServer.bind().then((server) {
+ server.listen((request) {
+ request.response.close();
+ });
- Socket socket = new Socket("127.0.0.1", server.port);
- socket.onConnect = () {
- List<int> buffer = new List<int>.fixedLength(1024);
- socket.outputStream.writeString(
- "GET / HTTP/1.1\r\nConnection: close\r\n\r\n");
- if (closeRequest) socket.outputStream.close();
- socket.onData = () => socket.readList(buffer, 0, buffer.length);
- socket.onClosed = () {
- if (!closeRequest) socket.close(true);
- server.close();
- };
- };
+ Socket.connect("127.0.0.1", server.port)
+ .then((socket) {
+ List<int> buffer = new List<int>.fixedLength(1024);
+ socket.addString("GET / HTTP/1.1\r\nConnection: close\r\n\r\n");
+ socket.listen(
+ (data) {},
+ onDone: () {
+ if (!closeRequest) socket.destroy();
+ server.close();
+ });
+ if (closeRequest) socket.close();
+ });
+ });
}
void testStreamResponse() {
- Timer timer;
- var server = new HttpServer();
- server.onError = (e) {
- server.close();
- timer.cancel();
- };
- server.listen("127.0.0.1", 0, backlog: 5);
- server.defaultRequestHandler = (var request, var response) {
- timer = new Timer.repeating(new Duration(milliseconds: 10), (_) {
- DateTime now = new DateTime.now();
- try {
- response.outputStream.writeString(
- 'data:${now.millisecondsSinceEpoch}\n\n');
- } catch (e) {
- timer.cancel();
- server.close();
+ HttpServer.bind().then((server) {
+ server.listen((request) {
+ // TODO(ajohnsen): Use timer (see old version).
+ for (int i = 0; i < 10; i++) {
+ request.response.addString(
+ 'data:${new DateTime.now().millisecondsSinceEpoch}\n\n');
}
});
- };
- var client = new HttpClient();
- var connection =
- client.getUrl(Uri.parse("http://127.0.0.1:${server.port}"));
- connection.onResponse = (resp) {
- int bytes = 0;
- resp.inputStream.onData = () {
- bytes += resp.inputStream.read().length;
- if (bytes > 100) {
- client.shutdown(force: true);
- }
- };
- };
- connection.onError = (e) => Expect.isTrue(e is HttpException);
+ var client = new HttpClient();
+ client.getUrl(Uri.parse("http://127.0.0.1:${server.port}"))
+ .then((request) => request.close())
+ .then((response) {
+ int bytes = 0;
+ response.listen(
+ (data) {
+ bytes += data.length;
+ if (bytes > 100) {
+ client.close(force: true);
+ }
+ },
+ onError: (error) {
+ server.close();
+ });
+ });
+ });
}
main() {
« no previous file with comments | « tests/standalone/io/http_client_test.dart ('k') | tests/standalone/io/http_connection_header_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698