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

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

Issue 2771453003: Format all tests. (Closed)
Patch Set: Format files Created 3 years, 8 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
Index: tests/standalone/io/http_proxy_test.dart
diff --git a/tests/standalone/io/http_proxy_test.dart b/tests/standalone/io/http_proxy_test.dart
index 2d2fdcb1e4433ff9f7f6ebff8d9d0e27d943a261..bef1412cc23e964cd7b80675ec641ee3be60977d 100644
--- a/tests/standalone/io/http_proxy_test.dart
+++ b/tests/standalone/io/http_proxy_test.dart
@@ -18,7 +18,7 @@ String localFile(path) => Platform.script.resolve(path).toFilePath();
SecurityContext serverContext = new SecurityContext()
..useCertificateChain(localFile('certificates/server_chain.pem'))
..usePrivateKey(localFile('certificates/server_key.pem'),
- password: 'dartdart');
+ password: 'dartdart');
SecurityContext clientContext = new SecurityContext()
..setTrustedCertificates(localFile('certificates/trusted_certs.pem'));
@@ -33,10 +33,9 @@ class Server {
Server(this.proxyHops, this.directRequestPaths, this.secure);
Future<Server> start() {
- return (secure ?
- HttpServer.bindSecure("localhost", 0, serverContext) :
- HttpServer.bind("localhost", 0))
- .then((s) {
+ return (secure
+ ? HttpServer.bindSecure("localhost", 0, serverContext)
+ : HttpServer.bind("localhost", 0)).then((s) {
server = s;
server.listen(requestHandler);
return this;
@@ -48,14 +47,12 @@ class Server {
requestCount++;
// Check whether a proxy or direct connection is expected.
bool direct = directRequestPaths.fold(
- false,
- (prev, path) => prev ? prev : path == request.uri.path);
+ false, (prev, path) => prev ? prev : path == request.uri.path);
if (!secure && !direct && proxyHops > 0) {
Expect.isNotNull(request.headers[HttpHeaders.VIA]);
Expect.equals(1, request.headers[HttpHeaders.VIA].length);
Expect.equals(
- proxyHops,
- request.headers[HttpHeaders.VIA][0].split(",").length);
+ proxyHops, request.headers[HttpHeaders.VIA][0].split(",").length);
} else {
Expect.isNull(request.headers[HttpHeaders.VIA]);
}
@@ -69,6 +66,7 @@ class Server {
response.write(request.uri.path);
response.close();
}
+
request.listen((data) {
body.write(new String.fromCharCodes(data));
}, onDone: onRequestComplete);
@@ -82,8 +80,7 @@ class Server {
}
Future<Server> setupServer(int proxyHops,
- {List<String> directRequestPaths: const <String>[],
- secure: false}) {
+ {List<String> directRequestPaths: const <String>[], secure: false}) {
Server server = new Server(proxyHops, directRequestPaths, secure);
return server.start();
}
@@ -103,7 +100,7 @@ class ProxyServer {
String serverQop = "auth";
Set ncs = new Set();
- var nonce = "12345678"; // No need for random nonce in test.
+ var nonce = "12345678"; // No need for random nonce in test.
ProxyServer({this.ipV6: false}) : client = new HttpClient();
@@ -116,8 +113,8 @@ class ProxyServer {
basicAuthenticationRequired(request) {
request.fold(null, (x, y) {}).then((_) {
var response = request.response;
- response.headers.set(HttpHeaders.PROXY_AUTHENTICATE,
- "Basic, realm=$realm");
+ response.headers
+ .set(HttpHeaders.PROXY_AUTHENTICATE, "Basic, realm=$realm");
response.statusCode = HttpStatus.PROXY_AUTHENTICATION_REQUIRED;
response.close();
});
@@ -161,20 +158,18 @@ class ProxyServer {
Expect.equals(
1, request.headers[HttpHeaders.PROXY_AUTHORIZATION].length);
String authorization =
- request.headers[HttpHeaders.PROXY_AUTHORIZATION][0];
+ request.headers[HttpHeaders.PROXY_AUTHORIZATION][0];
if (authScheme == "Basic") {
List<String> tokens = authorization.split(" ");
Expect.equals("Basic", tokens[0]);
- String auth =
- BASE64.encode(UTF8.encode("$username:$password"));
+ String auth = BASE64.encode(UTF8.encode("$username:$password"));
if (auth != tokens[1]) {
basicAuthenticationRequired(request);
return;
}
} else {
HeaderValue header =
- HeaderValue.parse(
- authorization, parameterSeparator: ",");
+ HeaderValue.parse(authorization, parameterSeparator: ",");
Expect.equals("Digest", header.value);
var uri = header.parameters["uri"];
var qop = header.parameters["qop"];
@@ -208,14 +203,14 @@ class ProxyServer {
digest = md5.convert(
"$ha1:${nonce}:${nc}:${cnonce}:${qop}:$ha2".codeUnits);
}
- Expect.equals(hex.encode(digest.bytes),
- header.parameters["response"]);
+ Expect.equals(
+ hex.encode(digest.bytes), header.parameters["response"]);
// Add a bogus Proxy-Authentication-Info for testing.
var info = 'rspauth="77180d1ab3d6c9de084766977790f482", '
- 'cnonce="8f971178", '
- 'nc=000002c74, '
- 'qop=auth';
+ 'cnonce="8f971178", '
+ 'nc=000002c74, '
+ 'qop=auth';
request.response.headers.set("Proxy-Authentication-Info", info);
}
}
@@ -223,38 +218,36 @@ class ProxyServer {
// Open the connection from the proxy.
if (request.method == "CONNECT") {
var tmp = request.uri.toString().split(":");
- Socket.connect(tmp[0], int.parse(tmp[1]))
- .then((socket) {
- request.response.reasonPhrase = "Connection established";
- request.response.detachSocket()
- .then((detached) {
- socket.pipe(detached);
- detached.pipe(socket);
- });
- });
+ Socket.connect(tmp[0], int.parse(tmp[1])).then((socket) {
+ request.response.reasonPhrase = "Connection established";
+ request.response.detachSocket().then((detached) {
+ socket.pipe(detached);
+ detached.pipe(socket);
+ });
+ });
} else {
- client.openUrl(request.method, request.uri)
- .then((HttpClientRequest clientRequest) {
- // Forward all headers.
- request.headers.forEach((String name, List<String> values) {
- values.forEach((String value) {
- if (name != "content-length" && name != "via") {
- clientRequest.headers.add(name, value);
- }
- });
+ client
+ .openUrl(request.method, request.uri)
+ .then((HttpClientRequest clientRequest) {
+ // Forward all headers.
+ request.headers.forEach((String name, List<String> values) {
+ values.forEach((String value) {
+ if (name != "content-length" && name != "via") {
+ clientRequest.headers.add(name, value);
+ }
});
- // Special handling of Content-Length and Via.
- clientRequest.contentLength = request.contentLength;
- List<String> via = request.headers[HttpHeaders.VIA];
- String viaPrefix = via == null ? "" : "${via[0]}, ";
- clientRequest.headers.add(
- HttpHeaders.VIA, "${viaPrefix}1.1 localhost:$port");
- // Copy all content.
- return request.pipe(clientRequest);
- })
- .then((HttpClientResponse clientResponse) {
- clientResponse.pipe(request.response);
});
+ // Special handling of Content-Length and Via.
+ clientRequest.contentLength = request.contentLength;
+ List<String> via = request.headers[HttpHeaders.VIA];
+ String viaPrefix = via == null ? "" : "${via[0]}, ";
+ clientRequest.headers
+ .add(HttpHeaders.VIA, "${viaPrefix}1.1 localhost:$port");
+ // Copy all content.
+ return request.pipe(clientRequest);
+ }).then((HttpClientResponse clientResponse) {
+ clientResponse.pipe(request.response);
+ });
}
});
});
@@ -278,29 +271,39 @@ testInvalidProxy() {
HttpClient client = new HttpClient(context: clientContext);
client.findProxy = (Uri uri) => "";
- client.getUrl(Uri.parse("http://www.google.com/test"))
- .catchError((error) {}, test: (e) => e is HttpException);
+ client
+ .getUrl(Uri.parse("http://www.google.com/test"))
+ .catchError((error) {}, test: (e) => e is HttpException);
client.findProxy = (Uri uri) => "XXX";
- client.getUrl(Uri.parse("http://www.google.com/test"))
- .catchError((error) {}, test: (e) => e is HttpException);
+ client
+ .getUrl(Uri.parse("http://www.google.com/test"))
+ .catchError((error) {}, test: (e) => e is HttpException);
client.findProxy = (Uri uri) => "PROXY www.google.com";
- client.getUrl(Uri.parse("http://www.google.com/test"))
- .catchError((error) {}, test: (e) => e is HttpException);
+ client
+ .getUrl(Uri.parse("http://www.google.com/test"))
+ .catchError((error) {}, test: (e) => e is HttpException);
client.findProxy = (Uri uri) => "PROXY www.google.com:http";
- client.getUrl(Uri.parse("http://www.google.com/test"))
- .catchError((error) {}, test: (e) => e is HttpException);
+ client
+ .getUrl(Uri.parse("http://www.google.com/test"))
+ .catchError((error) {}, test: (e) => e is HttpException);
}
int testDirectDoneCount = 0;
void testDirectProxy() {
setupServer(0).then((server) {
HttpClient client = new HttpClient(context: clientContext);
- List<String> proxy =
- ["DIRECT", " DIRECT ", "DIRECT ;", " DIRECT ; ",
- ";DIRECT", " ; DIRECT ", ";;DIRECT;;"];
+ List<String> proxy = [
+ "DIRECT",
+ " DIRECT ",
+ "DIRECT ;",
+ " DIRECT ; ",
+ ";DIRECT",
+ " ; DIRECT ",
+ ";;DIRECT;;"
+ ];
client.findProxy = (Uri uri) {
int index = int.parse(uri.path.substring(1));
@@ -308,23 +311,23 @@ void testDirectProxy() {
};
for (int i = 0; i < proxy.length; i++) {
- client.getUrl(Uri.parse("http://localhost:${server.port}/$i"))
- .then((HttpClientRequest clientRequest) {
- String content = "$i$i$i";
- clientRequest.contentLength = content.length;
- clientRequest.write(content);
- return clientRequest.close();
- })
- .then((HttpClientResponse response) {
- response.listen((_) {}, onDone: () {
- testDirectDoneCount++;
- if (testDirectDoneCount == proxy.length) {
- Expect.equals(proxy.length, server.requestCount);
- server.shutdown();
- client.close();
- }
- });
+ client
+ .getUrl(Uri.parse("http://localhost:${server.port}/$i"))
+ .then((HttpClientRequest clientRequest) {
+ String content = "$i$i$i";
+ clientRequest.contentLength = content.length;
+ clientRequest.write(content);
+ return clientRequest.close();
+ }).then((HttpClientResponse response) {
+ response.listen((_) {}, onDone: () {
+ testDirectDoneCount++;
+ if (testDirectDoneCount == proxy.length) {
+ Expect.equals(proxy.length, server.requestCount);
+ server.shutdown();
+ client.close();
+ }
});
+ });
}
});
}
@@ -332,131 +335,136 @@ void testDirectProxy() {
int testProxyDoneCount = 0;
void testProxy() {
setupProxyServer().then((proxyServer) {
- setupServer(1, directRequestPaths: ["/4"]).then((server) {
- setupServer(1, directRequestPaths: ["/4"], secure: true).then((secureServer) {
- HttpClient client = new HttpClient(context: clientContext);
+ setupServer(1, directRequestPaths: ["/4"]).then((server) {
+ setupServer(1, directRequestPaths: ["/4"], secure: true)
+ .then((secureServer) {
+ HttpClient client = new HttpClient(context: clientContext);
+
+ List<String> proxy;
+ if (Platform.operatingSystem == "windows") {
+ proxy = [
+ "PROXY localhost:${proxyServer.port}",
+ "PROXY localhost:${proxyServer.port}; PROXY hede.hule.hest:8080",
+ "PROXY localhost:${proxyServer.port}",
+ ""
+ " PROXY localhost:${proxyServer.port}",
+ "DIRECT",
+ "PROXY localhost:${proxyServer.port}; DIRECT"
+ ];
+ } else {
+ proxy = [
+ "PROXY localhost:${proxyServer.port}",
+ "PROXY localhost:${proxyServer.port}; PROXY hede.hule.hest:8080",
+ "PROXY hede.hule.hest:8080; PROXY localhost:${proxyServer.port}",
+ "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181;"
+ " PROXY localhost:${proxyServer.port}",
+ "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181; DIRECT",
+ "PROXY localhost:${proxyServer.port}; DIRECT"
+ ];
+ }
+ client.findProxy = (Uri uri) {
+ // Pick the proxy configuration based on the request path.
+ int index = int.parse(uri.path.substring(1));
+ return proxy[index];
+ };
+
+ for (int i = 0; i < proxy.length; i++) {
+ test(bool secure) {
+ String url = secure
+ ? "https://localhost:${secureServer.port}/$i"
+ : "http://localhost:${server.port}/$i";
+
+ client
+ .postUrl(Uri.parse(url))
+ .then((HttpClientRequest clientRequest) {
+ String content = "$i$i$i";
+ clientRequest.write(content);
+ return clientRequest.close();
+ }).then((HttpClientResponse response) {
+ response.listen((_) {}, onDone: () {
+ testProxyDoneCount++;
+ if (testProxyDoneCount == proxy.length * 2) {
+ Expect.equals(proxy.length, server.requestCount);
+ Expect.equals(proxy.length, secureServer.requestCount);
+ proxyServer.shutdown();
+ server.shutdown();
+ secureServer.shutdown();
+ client.close();
+ }
+ });
+ });
+ }
- List<String> proxy;
- if (Platform.operatingSystem == "windows") {
- proxy =
- ["PROXY localhost:${proxyServer.port}",
- "PROXY localhost:${proxyServer.port}; PROXY hede.hule.hest:8080",
- "PROXY localhost:${proxyServer.port}",
- ""
- " PROXY localhost:${proxyServer.port}",
- "DIRECT",
- "PROXY localhost:${proxyServer.port}; DIRECT"];
- } else {
- proxy =
- ["PROXY localhost:${proxyServer.port}",
- "PROXY localhost:${proxyServer.port}; PROXY hede.hule.hest:8080",
- "PROXY hede.hule.hest:8080; PROXY localhost:${proxyServer.port}",
- "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181;"
- " PROXY localhost:${proxyServer.port}",
- "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181; DIRECT",
- "PROXY localhost:${proxyServer.port}; DIRECT"];
- }
- client.findProxy = (Uri uri) {
- // Pick the proxy configuration based on the request path.
- int index = int.parse(uri.path.substring(1));
- return proxy[index];
- };
+ test(false);
+ test(true);
+ }
+ });
+ });
+ });
+}
- for (int i = 0; i < proxy.length; i++) {
- test(bool secure) {
- String url = secure
- ? "https://localhost:${secureServer.port}/$i"
- : "http://localhost:${server.port}/$i";
+int testProxyChainDoneCount = 0;
+void testProxyChain() {
+ // Setup two proxy servers having the first using the second as its proxy.
+ setupProxyServer().then((proxyServer1) {
+ setupProxyServer().then((proxyServer2) {
+ proxyServer1.client.findProxy =
+ (_) => "PROXY localhost:${proxyServer2.port}";
+
+ setupServer(2, directRequestPaths: ["/4"]).then((server) {
+ HttpClient client = new HttpClient(context: clientContext);
+
+ List<String> proxy;
+ if (Platform.operatingSystem == "windows") {
+ proxy = [
+ "PROXY localhost:${proxyServer1.port}",
+ "PROXY localhost:${proxyServer1.port}; PROXY hede.hule.hest:8080",
+ "PROXY localhost:${proxyServer1.port}",
+ "PROXY localhost:${proxyServer1.port}",
+ "DIRECT",
+ "PROXY localhost:${proxyServer1.port}; DIRECT"
+ ];
+ } else {
+ proxy = [
+ "PROXY localhost:${proxyServer1.port}",
+ "PROXY localhost:${proxyServer1.port}; PROXY hede.hule.hest:8080",
+ "PROXY hede.hule.hest:8080; PROXY localhost:${proxyServer1.port}",
+ "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181;"
+ " PROXY localhost:${proxyServer1.port}",
+ "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181; DIRECT",
+ "PROXY localhost:${proxyServer1.port}; DIRECT"
+ ];
+ }
- client.postUrl(Uri.parse(url))
- .then((HttpClientRequest clientRequest) {
+ client.findProxy = (Uri uri) {
+ // Pick the proxy configuration based on the request path.
+ int index = int.parse(uri.path.substring(1));
+ return proxy[index];
+ };
+
+ for (int i = 0; i < proxy.length; i++) {
+ client
+ .getUrl(Uri.parse("http://localhost:${server.port}/$i"))
+ .then((HttpClientRequest clientRequest) {
String content = "$i$i$i";
+ clientRequest.contentLength = content.length;
clientRequest.write(content);
return clientRequest.close();
- })
- .then((HttpClientResponse response) {
+ }).then((HttpClientResponse response) {
response.listen((_) {}, onDone: () {
- testProxyDoneCount++;
- if (testProxyDoneCount == proxy.length * 2) {
+ testProxyChainDoneCount++;
+ if (testProxyChainDoneCount == proxy.length) {
Expect.equals(proxy.length, server.requestCount);
- Expect.equals(proxy.length, secureServer.requestCount);
- proxyServer.shutdown();
+ proxyServer1.shutdown();
+ proxyServer2.shutdown();
server.shutdown();
- secureServer.shutdown();
client.close();
}
});
});
- }
-
- test(false);
- test(true);
- }
- });
- });
- });
-}
-
-
-int testProxyChainDoneCount = 0;
-void testProxyChain() {
- // Setup two proxy servers having the first using the second as its proxy.
- setupProxyServer().then((proxyServer1) {
- setupProxyServer().then((proxyServer2) {
- proxyServer1.client.findProxy = (_) => "PROXY localhost:${proxyServer2.port}";
-
- setupServer(2, directRequestPaths: ["/4"]).then((server) {
- HttpClient client = new HttpClient(context: clientContext);
-
- List<String> proxy;
- if (Platform.operatingSystem == "windows") {
- proxy =
- ["PROXY localhost:${proxyServer1.port}",
- "PROXY localhost:${proxyServer1.port}; PROXY hede.hule.hest:8080",
- "PROXY localhost:${proxyServer1.port}",
- "PROXY localhost:${proxyServer1.port}",
- "DIRECT",
- "PROXY localhost:${proxyServer1.port}; DIRECT"];
- } else {
- proxy =
- ["PROXY localhost:${proxyServer1.port}",
- "PROXY localhost:${proxyServer1.port}; PROXY hede.hule.hest:8080",
- "PROXY hede.hule.hest:8080; PROXY localhost:${proxyServer1.port}",
- "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181;"
- " PROXY localhost:${proxyServer1.port}",
- "PROXY hede.hule.hest:8080; PROXY hede.hule.hest:8181; DIRECT",
- "PROXY localhost:${proxyServer1.port}; DIRECT"];
- }
-
- client.findProxy = (Uri uri) {
- // Pick the proxy configuration based on the request path.
- int index = int.parse(uri.path.substring(1));
- return proxy[index];
- };
-
- for (int i = 0; i < proxy.length; i++) {
- client.getUrl(Uri.parse("http://localhost:${server.port}/$i"))
- .then((HttpClientRequest clientRequest) {
- String content = "$i$i$i";
- clientRequest.contentLength = content.length;
- clientRequest.write(content);
- return clientRequest.close();
- })
- .then((HttpClientResponse response) {
- response.listen((_) {}, onDone: () {
- testProxyChainDoneCount++;
- if (testProxyChainDoneCount == proxy.length) {
- Expect.equals(proxy.length, server.requestCount);
- proxyServer1.shutdown();
- proxyServer2.shutdown();
- server.shutdown();
- client.close();
- }
- });
- });
- }
- });
- });
+ }
+ });
+ });
});
}

Powered by Google App Engine
This is Rietveld 408576698