| Index: net/socket_stream/socket_stream_unittest.cc
|
| ===================================================================
|
| --- net/socket_stream/socket_stream_unittest.cc (revision 93861)
|
| +++ net/socket_stream/socket_stream_unittest.cc (working copy)
|
| @@ -535,109 +535,4 @@
|
| EXPECT_EQ(net::ERR_PROTOCOL_SWITCHED, events[1].error_code);
|
| }
|
|
|
| -// Test a connection though a secure proxy.
|
| -TEST_F(SocketStreamTest, SecureProxyConnectError) {
|
| - MockClientSocketFactory mock_socket_factory;
|
| - MockWrite data_writes[] = {
|
| - MockWrite("CONNECT example.com:80 HTTP/1.1\r\n"
|
| - "Host: example.com\r\n"
|
| - "Proxy-Connection: keep-alive\r\n\r\n")
|
| - };
|
| - MockRead data_reads[] = {
|
| - MockRead("HTTP/1.1 200 Connection Established\r\n"),
|
| - MockRead("Proxy-agent: Apache/2.2.8\r\n"),
|
| - MockRead("\r\n"),
|
| - // SocketStream::DoClose is run asynchronously. Socket can be read after
|
| - // "\r\n". We have to give ERR_IO_PENDING to SocketStream then to indicate
|
| - // server doesn't close the connection.
|
| - MockRead(true, ERR_IO_PENDING)
|
| - };
|
| - StaticSocketDataProvider data(data_reads, arraysize(data_reads),
|
| - data_writes, arraysize(data_writes));
|
| - mock_socket_factory.AddSocketDataProvider(&data);
|
| - SSLSocketDataProvider ssl(false, ERR_SSL_PROTOCOL_ERROR);
|
| - mock_socket_factory.AddSSLSocketDataProvider(&ssl);
|
| -
|
| - TestCompletionCallback callback;
|
| -
|
| - scoped_ptr<SocketStreamEventRecorder> delegate(
|
| - new SocketStreamEventRecorder(&callback));
|
| - delegate->SetOnConnected(base::Bind(&SocketStreamEventRecorder::DoClose,
|
| - base::Unretained(delegate.get())));
|
| -
|
| - scoped_refptr<SocketStream> socket_stream(
|
| - new SocketStream(GURL("ws://example.com/demo"), delegate.get()));
|
| -
|
| - socket_stream->set_context(new TestURLRequestContext("https://myproxy:70"));
|
| - MockHostResolver host_resolver;
|
| - socket_stream->SetHostResolver(&host_resolver);
|
| - socket_stream->SetClientSocketFactory(&mock_socket_factory);
|
| -
|
| - socket_stream->Connect();
|
| -
|
| - callback.WaitForResult();
|
| -
|
| - const std::vector<SocketStreamEvent>& events = delegate->GetSeenEvents();
|
| - ASSERT_EQ(3U, events.size());
|
| -
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_START_OPEN_CONNECTION,
|
| - events[0].event_type);
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_ERROR, events[1].event_type);
|
| - EXPECT_EQ(net::ERR_SSL_PROTOCOL_ERROR, events[1].error_code);
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_CLOSE, events[2].event_type);
|
| -}
|
| -
|
| -// Test a connection though a secure proxy.
|
| -TEST_F(SocketStreamTest, SecureProxyConnect) {
|
| - MockClientSocketFactory mock_socket_factory;
|
| - MockWrite data_writes[] = {
|
| - MockWrite("CONNECT example.com:80 HTTP/1.1\r\n"
|
| - "Host: example.com\r\n"
|
| - "Proxy-Connection: keep-alive\r\n\r\n")
|
| - };
|
| - MockRead data_reads[] = {
|
| - MockRead("HTTP/1.1 200 Connection Established\r\n"),
|
| - MockRead("Proxy-agent: Apache/2.2.8\r\n"),
|
| - MockRead("\r\n"),
|
| - // SocketStream::DoClose is run asynchronously. Socket can be read after
|
| - // "\r\n". We have to give ERR_IO_PENDING to SocketStream then to indicate
|
| - // server doesn't close the connection.
|
| - MockRead(true, ERR_IO_PENDING)
|
| - };
|
| - StaticSocketDataProvider data(data_reads, arraysize(data_reads),
|
| - data_writes, arraysize(data_writes));
|
| - mock_socket_factory.AddSocketDataProvider(&data);
|
| - SSLSocketDataProvider ssl(false, OK);
|
| - mock_socket_factory.AddSSLSocketDataProvider(&ssl);
|
| -
|
| - TestCompletionCallback callback;
|
| -
|
| - scoped_ptr<SocketStreamEventRecorder> delegate(
|
| - new SocketStreamEventRecorder(&callback));
|
| - delegate->SetOnConnected(base::Bind(&SocketStreamEventRecorder::DoClose,
|
| - base::Unretained(delegate.get())));
|
| -
|
| - scoped_refptr<SocketStream> socket_stream(
|
| - new SocketStream(GURL("ws://example.com/demo"), delegate.get()));
|
| -
|
| - socket_stream->set_context(new TestURLRequestContext("https://myproxy:70"));
|
| - MockHostResolver host_resolver;
|
| - socket_stream->SetHostResolver(&host_resolver);
|
| - socket_stream->SetClientSocketFactory(&mock_socket_factory);
|
| -
|
| - socket_stream->Connect();
|
| -
|
| - callback.WaitForResult();
|
| -
|
| - const std::vector<SocketStreamEvent>& events = delegate->GetSeenEvents();
|
| - ASSERT_EQ(4U, events.size());
|
| -
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_START_OPEN_CONNECTION,
|
| - events[0].event_type);
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_CONNECTED, events[1].event_type);
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_ERROR, events[2].event_type);
|
| - EXPECT_EQ(net::ERR_ABORTED, events[2].error_code);
|
| - EXPECT_EQ(SocketStreamEvent::EVENT_CLOSE, events[3].event_type);
|
| -}
|
| -
|
| } // namespace net
|
|
|