| OLD | NEW |
| 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:isolate"; | 6 import "dart:isolate"; |
| 7 import "dart:io"; | 7 import "dart:io"; |
| 8 | 8 |
| 9 void setConnectionHeaders(HttpHeaders headers) { | 9 void setConnectionHeaders(HttpHeaders headers) { |
| 10 headers.add(HttpHeaders.CONNECTION, "my-connection-header1"); | 10 headers.add(HttpHeaders.CONNECTION, "my-connection-header1"); |
| 11 headers.add("My-Connection-Header1", "some-value1"); | 11 headers.add("My-Connection-Header1", "some-value1"); |
| 12 headers.add(HttpHeaders.CONNECTION, "my-connection-header2"); | 12 headers.add(HttpHeaders.CONNECTION, "my-connection-header2"); |
| 13 headers.add("My-Connection-Header2", "some-value2"); | 13 headers.add("My-Connection-Header2", "some-value2"); |
| 14 } | 14 } |
| 15 | 15 |
| 16 void checkExpectedConnectionHeaders(HttpHeaders headers, | 16 void checkExpectedConnectionHeaders(HttpHeaders headers, |
| 17 bool persistentConnection) { | 17 bool persistentConnection) { |
| 18 Expect.equals("some-value1", headers.value("My-Connection-Header1")); | 18 Expect.equals("some-value1", headers.value("My-Connection-Header1")); |
| 19 Expect.equals("some-value2", headers.value("My-Connection-Header2")); | 19 Expect.equals("some-value2", headers.value("My-Connection-Header2")); |
| 20 Expect.isTrue(headers[HttpHeaders.CONNECTION].some( | 20 Expect.isTrue(headers[HttpHeaders.CONNECTION].any( |
| 21 (value) => value.toLowerCase() == "my-connection-header1")); | 21 (value) => value.toLowerCase() == "my-connection-header1")); |
| 22 Expect.isTrue(headers[HttpHeaders.CONNECTION].some( | 22 Expect.isTrue(headers[HttpHeaders.CONNECTION].any( |
| 23 (value) => value.toLowerCase() == "my-connection-header2")); | 23 (value) => value.toLowerCase() == "my-connection-header2")); |
| 24 if (persistentConnection) { | 24 if (persistentConnection) { |
| 25 Expect.equals(2, headers[HttpHeaders.CONNECTION].length); | 25 Expect.equals(2, headers[HttpHeaders.CONNECTION].length); |
| 26 } else { | 26 } else { |
| 27 Expect.equals(3, headers[HttpHeaders.CONNECTION].length); | 27 Expect.equals(3, headers[HttpHeaders.CONNECTION].length); |
| 28 Expect.isTrue(headers[HttpHeaders.CONNECTION].some( | 28 Expect.isTrue(headers[HttpHeaders.CONNECTION].any( |
| 29 (value) => value.toLowerCase() == "close")); | 29 (value) => value.toLowerCase() == "close")); |
| 30 } | 30 } |
| 31 } | 31 } |
| 32 | 32 |
| 33 void test(int totalConnections, bool clientPersistentConnection) { | 33 void test(int totalConnections, bool clientPersistentConnection) { |
| 34 HttpServer server = new HttpServer(); | 34 HttpServer server = new HttpServer(); |
| 35 server.onError = (e) => Expect.fail("Unexpected error $e"); | 35 server.onError = (e) => Expect.fail("Unexpected error $e"); |
| 36 server.listen("127.0.0.1", 0, backlog: totalConnections); | 36 server.listen("127.0.0.1", 0, backlog: totalConnections); |
| 37 server.defaultRequestHandler = (HttpRequest request, HttpResponse response) { | 37 server.defaultRequestHandler = (HttpRequest request, HttpResponse response) { |
| 38 // Check expected request. | 38 // Check expected request. |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 }; | 73 }; |
| 74 }; | 74 }; |
| 75 } | 75 } |
| 76 } | 76 } |
| 77 | 77 |
| 78 | 78 |
| 79 void main() { | 79 void main() { |
| 80 test(2, false); | 80 test(2, false); |
| 81 test(2, true); | 81 test(2, true); |
| 82 } | 82 } |
| OLD | NEW |