| Index: chrome/browser/extensions/api/sockets_tcp/sockets_tcp_apitest.cc
|
| diff --git a/chrome/browser/extensions/api/sockets_tcp/sockets_tcp_apitest.cc b/chrome/browser/extensions/api/sockets_tcp/sockets_tcp_apitest.cc
|
| index 276c1e6171119ff354008c678566dd8b55ccfbdb..54a3641e54b8d8f6b887ec95deb7ddc0a5b26c18 100644
|
| --- a/chrome/browser/extensions/api/sockets_tcp/sockets_tcp_apitest.cc
|
| +++ b/chrome/browser/extensions/api/sockets_tcp/sockets_tcp_apitest.cc
|
| @@ -88,7 +88,10 @@ IN_PROC_BROWSER_TEST_F(SocketsTcpApiTest, SocketTcpExtension) {
|
| net::SpawnedTestServer::TYPE_TCP_ECHO,
|
| net::SpawnedTestServer::kLocalhost,
|
| base::FilePath(FILE_PATH_LITERAL("net/data"))));
|
| - EXPECT_TRUE(test_server->Start());
|
| +
|
| + // Start them in parallel.
|
| + EXPECT_TRUE(test_server->StartInBackground());
|
| + EXPECT_TRUE(test_server->BlockUntilStarted());
|
|
|
| net::HostPortPair host_port_pair = test_server->host_port_pair();
|
| int port = host_port_pair.port();
|
| @@ -109,3 +112,46 @@ IN_PROC_BROWSER_TEST_F(SocketsTcpApiTest, SocketTcpExtension) {
|
|
|
| EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
|
| }
|
| +
|
| +IN_PROC_BROWSER_TEST_F(SocketsTcpApiTest, SocketTcpExtensionTLS) {
|
| + scoped_ptr<net::SpawnedTestServer> test_tcp_server(new net::SpawnedTestServer(
|
| + net::SpawnedTestServer::TYPE_TCP_ECHO,
|
| + net::SpawnedTestServer::kLocalhost,
|
| + base::FilePath(FILE_PATH_LITERAL("net/data"))));
|
| + scoped_ptr<net::SpawnedTestServer> test_https_server(
|
| + new net::SpawnedTestServer(
|
| + net::SpawnedTestServer::TYPE_HTTPS,
|
| + net::BaseTestServer::SSLOptions(),
|
| + base::FilePath(FILE_PATH_LITERAL("net/data"))));
|
| + // Start them in parallel.
|
| + EXPECT_TRUE(test_tcp_server->StartInBackground());
|
| + EXPECT_TRUE(test_https_server->StartInBackground());
|
| + EXPECT_TRUE(test_tcp_server->BlockUntilStarted());
|
| + EXPECT_TRUE(test_https_server->BlockUntilStarted());
|
| +
|
| + net::HostPortPair tcp_host_port_pair = test_tcp_server->host_port_pair();
|
| + int tcp_port = tcp_host_port_pair.port();
|
| + ASSERT_TRUE(tcp_port > 0);
|
| +
|
| + net::HostPortPair https_host_port_pair = test_https_server->host_port_pair();
|
| + int https_port = https_host_port_pair.port();
|
| + ASSERT_TRUE(https_port > 0);
|
| +
|
| + // Test that connect() is properly resolving hostnames.
|
| + tcp_host_port_pair.set_host("lOcAlHoSt");
|
| +
|
| + ResultCatcher catcher;
|
| + catcher.RestrictToProfile(browser()->profile());
|
| +
|
| + ExtensionTestMessageListener listener("info_please", true);
|
| +
|
| + ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("sockets_tcp/api")));
|
| + EXPECT_TRUE(listener.WaitUntilSatisfied());
|
| + listener.Reply(base::StringPrintf("tcp:%s:%d,https:%s:%d",
|
| + tcp_host_port_pair.host().c_str(),
|
| + tcp_port,
|
| + https_host_port_pair.host().c_str(),
|
| + https_port));
|
| +
|
| + EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
|
| +}
|
|
|