OLD | NEW |
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 "package:expect/expect.dart"; | 10 import "package:expect/expect.dart"; |
11 import "dart:async"; | 11 import "dart:async"; |
12 import "dart:io"; | 12 import "dart:io"; |
13 import "dart:isolate"; | 13 import "dart:isolate"; |
14 import "dart:typed_data"; | 14 import "dart:typed_data"; |
15 import "dart:uri"; | 15 import "dart:uri"; |
16 | 16 |
17 const String CERT_NAME = 'localhost_cert'; | 17 const String CERT_NAME = 'localhost_cert'; |
| 18 const String SERVER_ADDRESS = '127.0.0.1'; |
18 const String HOST_NAME = 'localhost'; | 19 const String HOST_NAME = 'localhost'; |
19 | 20 |
20 /** | 21 /** |
21 * A SecurityConfiguration lets us run the tests over HTTP or HTTPS. | 22 * A SecurityConfiguration lets us run the tests over HTTP or HTTPS. |
22 */ | 23 */ |
23 class SecurityConfiguration { | 24 class SecurityConfiguration { |
24 final bool secure; | 25 final bool secure; |
25 | 26 |
26 SecurityConfiguration({bool this.secure}); | 27 SecurityConfiguration({bool this.secure}); |
27 | 28 |
28 Future<HttpServer> createServer({int backlog: 0}) => | 29 Future<HttpServer> createServer({int backlog: 0}) => |
29 secure ? HttpServer.bindSecure(HOST_NAME, | 30 secure ? HttpServer.bindSecure(SERVER_ADDRESS, |
30 0, | 31 0, |
31 backlog: backlog, | 32 backlog: backlog, |
32 certificateName: CERT_NAME) | 33 certificateName: CERT_NAME) |
33 : HttpServer.bind(HOST_NAME, | 34 : HttpServer.bind(SERVER_ADDRESS, |
34 0, | 35 0, |
35 backlog); | 36 backlog); |
36 | 37 |
37 Future<WebSocket> createClient(int port) => | 38 Future<WebSocket> createClient(int port) => |
38 WebSocket.connect('${secure ? "wss" : "ws"}://$HOST_NAME:$port/'); | 39 WebSocket.connect('${secure ? "wss" : "ws"}://$HOST_NAME:$port/'); |
39 | 40 |
40 void testRequestResponseClientCloses(int totalConnections, | 41 void testRequestResponseClientCloses(int totalConnections, |
41 int closeStatus, | 42 int closeStatus, |
42 String closeReason) { | 43 String closeReason) { |
43 createServer().then((server) { | 44 createServer().then((server) { |
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
410 SecureSocket.initialize(database: testPkcertDatabase.toNativePath(), | 411 SecureSocket.initialize(database: testPkcertDatabase.toNativePath(), |
411 password: "dartdart"); | 412 password: "dartdart"); |
412 } | 413 } |
413 | 414 |
414 | 415 |
415 main() { | 416 main() { |
416 new SecurityConfiguration(secure: false).runTests(); | 417 new SecurityConfiguration(secure: false).runTests(); |
417 initializeSSL(); | 418 initializeSSL(); |
418 new SecurityConfiguration(secure: true).runTests(); | 419 new SecurityConfiguration(secure: true).runTests(); |
419 } | 420 } |
OLD | NEW |