| 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 #import("dart:isolate"); | 5 #import("dart:isolate"); |
| 6 #import("dart:crypto"); | 6 #import("dart:crypto"); |
| 7 #import("dart:io"); | 7 #import("dart:io"); |
| 8 #import("dart:uri"); | 8 #import("dart:uri"); |
| 9 #import("dart:utf"); | 9 #import("dart:utf"); |
| 10 | 10 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 | 73 |
| 74 void testUrlUserInfo() { | 74 void testUrlUserInfo() { |
| 75 Server server = setupServer(); | 75 Server server = setupServer(); |
| 76 HttpClient client = new HttpClient(); | 76 HttpClient client = new HttpClient(); |
| 77 | 77 |
| 78 HttpClientConnection conn = | 78 HttpClientConnection conn = |
| 79 client.getUrl( | 79 client.getUrl( |
| 80 new Uri.fromString( | 80 new Uri.fromString( |
| 81 "http://username:password@127.0.0.1:${server.port}/")); | 81 "http://username:password@127.0.0.1:${server.port}/")); |
| 82 conn.onResponse = (HttpClientResponse response) { | 82 conn.onResponse = (HttpClientResponse response) { |
| 83 server.shutdown(); | 83 response.inputStream.onData = response.inputStream.read; |
| 84 client.shutdown(); | 84 response.inputStream.onClosed = () { |
| 85 server.shutdown(); |
| 86 client.shutdown(); |
| 87 }; |
| 85 }; | 88 }; |
| 86 } | 89 } |
| 87 | 90 |
| 88 void testBasicNoCredentials() { | 91 void testBasicNoCredentials() { |
| 89 Server server = setupServer(); | 92 Server server = setupServer(); |
| 90 HttpClient client = new HttpClient(); | 93 HttpClient client = new HttpClient(); |
| 91 | 94 |
| 92 Future makeRequest(Uri url) { | 95 Future makeRequest(Uri url) { |
| 93 Completer completer = new Completer(); | 96 Completer completer = new Completer(); |
| 94 HttpClientConnection conn = client.getUrl(url); | 97 HttpClientConnection conn = client.getUrl(url); |
| 95 conn.onResponse = (HttpClientResponse response) { | 98 conn.onResponse = (HttpClientResponse response) { |
| 96 Expect.equals(HttpStatus.UNAUTHORIZED, response.statusCode); | 99 Expect.equals(HttpStatus.UNAUTHORIZED, response.statusCode); |
| 97 completer.complete(null); | 100 response.inputStream.onData = response.inputStream.read; |
| 101 response.inputStream.onClosed = () => completer.complete(null); |
| 98 }; | 102 }; |
| 99 return completer.future; | 103 return completer.future; |
| 100 } | 104 } |
| 101 | 105 |
| 102 var futures = []; | 106 var futures = []; |
| 103 for (int i = 0; i < 5; i++) { | 107 for (int i = 0; i < 5; i++) { |
| 104 futures.add( | 108 futures.add( |
| 105 makeRequest( | 109 makeRequest( |
| 106 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"))); | 110 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"))); |
| 107 futures.add( | 111 futures.add( |
| 108 makeRequest( | 112 makeRequest( |
| 109 new Uri.fromString("http://127.0.0.1:${server.port}/test$i/xxx"))); | 113 new Uri.fromString("http://127.0.0.1:${server.port}/test$i/xxx"))); |
| 110 } | 114 } |
| 111 Futures.wait(futures).then((_) { | 115 Futures.wait(futures).then((_) { |
| 112 server.shutdown(); | 116 server.shutdown(); |
| 113 client.shutdown(); | 117 client.shutdown(); |
| 114 }); | 118 }); |
| 115 } | 119 } |
| 116 | 120 |
| 117 void testBasicCredentials() { | 121 void testBasicCredentials() { |
| 118 Server server = setupServer(); | 122 Server server = setupServer(); |
| 119 HttpClient client = new HttpClient(); | 123 HttpClient client = new HttpClient(); |
| 120 | 124 |
| 121 Future makeRequest(Uri url) { | 125 Future makeRequest(Uri url) { |
| 122 Completer completer = new Completer(); | 126 Completer completer = new Completer(); |
| 123 HttpClientConnection conn = client.getUrl(url); | 127 HttpClientConnection conn = client.getUrl(url); |
| 124 conn.onResponse = (HttpClientResponse response) { | 128 conn.onResponse = (HttpClientResponse response) { |
| 125 Expect.equals(HttpStatus.OK, response.statusCode); | 129 Expect.equals(HttpStatus.OK, response.statusCode); |
| 126 completer.complete(null); | 130 response.inputStream.onData = response.inputStream.read; |
| 131 response.inputStream.onClosed = () => completer.complete(null); |
| 127 }; | 132 }; |
| 128 return completer.future; | 133 return completer.future; |
| 129 } | 134 } |
| 130 | 135 |
| 131 for (int i = 0; i < 5; i++) { | 136 for (int i = 0; i < 5; i++) { |
| 132 client.addCredentials( | 137 client.addCredentials( |
| 133 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"), | 138 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"), |
| 134 "realm", | 139 "realm", |
| 135 new HttpClientBasicCredentials("test$i", "test$i")); | 140 new HttpClientBasicCredentials("test$i", "test$i")); |
| 136 } | 141 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 168 completer.complete(true); | 173 completer.complete(true); |
| 169 }); | 174 }); |
| 170 return completer.future; | 175 return completer.future; |
| 171 }; | 176 }; |
| 172 | 177 |
| 173 Future makeRequest(Uri url) { | 178 Future makeRequest(Uri url) { |
| 174 Completer completer = new Completer(); | 179 Completer completer = new Completer(); |
| 175 HttpClientConnection conn = client.getUrl(url); | 180 HttpClientConnection conn = client.getUrl(url); |
| 176 conn.onResponse = (HttpClientResponse response) { | 181 conn.onResponse = (HttpClientResponse response) { |
| 177 Expect.equals(HttpStatus.OK, response.statusCode); | 182 Expect.equals(HttpStatus.OK, response.statusCode); |
| 178 completer.complete(null); | 183 response.inputStream.onData = response.inputStream.read; |
| 184 response.inputStream.onClosed = () => completer.complete(null); |
| 179 }; | 185 }; |
| 180 return completer.future; | 186 return completer.future; |
| 181 } | 187 } |
| 182 | 188 |
| 183 List<Future> makeRequests() { | 189 List<Future> makeRequests() { |
| 184 var futures = []; | 190 var futures = []; |
| 185 for (int i = 0; i < 5; i++) { | 191 for (int i = 0; i < 5; i++) { |
| 186 futures.add( | 192 futures.add( |
| 187 makeRequest( | 193 makeRequest( |
| 188 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"))); | 194 new Uri.fromString("http://127.0.0.1:${server.port}/test$i"))); |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 255 main() { | 261 main() { |
| 256 testUrlUserInfo(); | 262 testUrlUserInfo(); |
| 257 testBasicNoCredentials(); | 263 testBasicNoCredentials(); |
| 258 testBasicCredentials(); | 264 testBasicCredentials(); |
| 259 testBasicAuthenticateCallback(); | 265 testBasicAuthenticateCallback(); |
| 260 // These teste are not normally run. They can be used for locally | 266 // These teste are not normally run. They can be used for locally |
| 261 // testing with another web server (e.g. Apache). | 267 // testing with another web server (e.g. Apache). |
| 262 //testLocalServerBasic(); | 268 //testLocalServerBasic(); |
| 263 //testLocalServerDigest(); | 269 //testLocalServerDigest(); |
| 264 } | 270 } |
| OLD | NEW |