Index: net/socket/socks_client_socket_unittest.cc |
diff --git a/net/socket/socks_client_socket_unittest.cc b/net/socket/socks_client_socket_unittest.cc |
index f361244feff01a7dfa3138a7bc4ded1f36b13e29..94fd59265bb5cb7098f80051a57668afe02a37e4 100644 |
--- a/net/socket/socks_client_socket_unittest.cc |
+++ b/net/socket/socks_client_socket_unittest.cc |
@@ -21,19 +21,21 @@ |
namespace net { |
-const char kSOCKSOkRequest[] = { 0x04, 0x01, 0x00, 0x50, 127, 0, 0, 1, 0 }; |
-const char kSOCKSOkReply[] = { 0x00, 0x5A, 0x00, 0x00, 0, 0, 0, 0 }; |
+const char kSOCKSOkRequest[] = {0x04, 0x01, 0x00, 0x50, 127, 0, 0, 1, 0}; |
+const char kSOCKSOkReply[] = {0x00, 0x5A, 0x00, 0x00, 0, 0, 0, 0}; |
class SOCKSClientSocketTest : public PlatformTest { |
public: |
SOCKSClientSocketTest(); |
// Create a SOCKSClientSocket on top of a MockSocket. |
- scoped_ptr<SOCKSClientSocket> BuildMockSocket( |
- MockRead reads[], size_t reads_count, |
- MockWrite writes[], size_t writes_count, |
- HostResolver* host_resolver, |
- const std::string& hostname, int port, |
- NetLog* net_log); |
+ scoped_ptr<SOCKSClientSocket> BuildMockSocket(MockRead reads[], |
+ size_t reads_count, |
+ MockWrite writes[], |
+ size_t writes_count, |
+ HostResolver* host_resolver, |
+ const std::string& hostname, |
+ int port, |
+ NetLog* net_log); |
virtual void SetUp(); |
protected: |
@@ -48,7 +50,7 @@ class SOCKSClientSocketTest : public PlatformTest { |
}; |
SOCKSClientSocketTest::SOCKSClientSocketTest() |
- : host_resolver_(new MockHostResolver) { |
+ : host_resolver_(new MockHostResolver) { |
} |
// Set up platform before every test case |
@@ -65,10 +67,9 @@ scoped_ptr<SOCKSClientSocket> SOCKSClientSocketTest::BuildMockSocket( |
const std::string& hostname, |
int port, |
NetLog* net_log) { |
- |
TestCompletionCallback callback; |
- data_.reset(new StaticSocketDataProvider(reads, reads_count, |
- writes, writes_count)); |
+ data_.reset( |
+ new StaticSocketDataProvider(reads, reads_count, writes, writes_count)); |
tcp_sock_ = new MockTCPClientSocket(address_list_, net_log, data_.get()); |
int rv = tcp_sock_->Connect(callback.callback()); |
@@ -122,9 +123,7 @@ class HangingHostResolverWithCancel : public HostResolver { |
outstanding_request_ = NULL; |
} |
- bool HasOutstandingRequest() { |
- return outstanding_request_ != NULL; |
- } |
+ bool HasOutstandingRequest() { return outstanding_request_ != NULL; } |
private: |
RequestHandle outstanding_request_; |
@@ -139,16 +138,19 @@ TEST_F(SOCKSClientSocketTest, CompleteHandshake) { |
MockWrite data_writes[] = { |
MockWrite(ASYNC, kSOCKSOkRequest, arraysize(kSOCKSOkRequest)), |
- MockWrite(ASYNC, payload_write.data(), payload_write.size()) }; |
+ MockWrite(ASYNC, payload_write.data(), payload_write.size())}; |
MockRead data_reads[] = { |
MockRead(ASYNC, kSOCKSOkReply, arraysize(kSOCKSOkReply)), |
- MockRead(ASYNC, payload_read.data(), payload_read.size()) }; |
+ MockRead(ASYNC, payload_read.data(), payload_read.size())}; |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
host_resolver_.get(), |
- "localhost", 80, |
+ "localhost", |
+ 80, |
&log); |
// At this state the TCP connection is completed but not the SOCKS handshake. |
@@ -160,16 +162,14 @@ TEST_F(SOCKSClientSocketTest, CompleteHandshake) { |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE( |
- LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
EXPECT_FALSE(user_sock_->IsConnected()); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(user_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
scoped_refptr<IOBuffer> buffer(new IOBuffer(payload_write.size())); |
memcpy(buffer->data(), payload_write.data(), payload_write.size()); |
@@ -199,32 +199,32 @@ TEST_F(SOCKSClientSocketTest, HandshakeFailures) { |
const char fail_reply[8]; |
Error fail_code; |
} tests[] = { |
- // Failure of the server response code |
- { |
- { 0x01, 0x5A, 0x00, 0x00, 0, 0, 0, 0 }, |
- ERR_SOCKS_CONNECTION_FAILED, |
- }, |
- // Failure of the null byte |
- { |
- { 0x00, 0x5B, 0x00, 0x00, 0, 0, 0, 0 }, |
- ERR_SOCKS_CONNECTION_FAILED, |
- }, |
- }; |
+ // Failure of the server response code |
+ { |
+ {0x01, 0x5A, 0x00, 0x00, 0, 0, 0, 0}, ERR_SOCKS_CONNECTION_FAILED, |
+ }, |
+ // Failure of the null byte |
+ { |
+ {0x00, 0x5B, 0x00, 0x00, 0, 0, 0, 0}, ERR_SOCKS_CONNECTION_FAILED, |
+ }, |
+ }; |
//--------------------------------------- |
for (size_t i = 0; i < ARRAYSIZE_UNSAFE(tests); ++i) { |
MockWrite data_writes[] = { |
- MockWrite(SYNCHRONOUS, kSOCKSOkRequest, arraysize(kSOCKSOkRequest)) }; |
- MockRead data_reads[] = { |
- MockRead(SYNCHRONOUS, tests[i].fail_reply, |
- arraysize(tests[i].fail_reply)) }; |
+ MockWrite(SYNCHRONOUS, kSOCKSOkRequest, arraysize(kSOCKSOkRequest))}; |
+ MockRead data_reads[] = {MockRead( |
+ SYNCHRONOUS, tests[i].fail_reply, arraysize(tests[i].fail_reply))}; |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
host_resolver_.get(), |
- "localhost", 80, |
+ "localhost", |
+ 80, |
&log); |
int rv = user_sock_->Connect(callback_.callback()); |
@@ -232,121 +232,121 @@ TEST_F(SOCKSClientSocketTest, HandshakeFailures) { |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsBeginEvent( |
- entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(tests[i].fail_code, rv); |
EXPECT_FALSE(user_sock_->IsConnected()); |
EXPECT_TRUE(tcp_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
} |
} |
// Tests scenario when the server sends the handshake response in |
// more than one packet. |
TEST_F(SOCKSClientSocketTest, PartialServerReads) { |
- const char kSOCKSPartialReply1[] = { 0x00 }; |
- const char kSOCKSPartialReply2[] = { 0x5A, 0x00, 0x00, 0, 0, 0, 0 }; |
+ const char kSOCKSPartialReply1[] = {0x00}; |
+ const char kSOCKSPartialReply2[] = {0x5A, 0x00, 0x00, 0, 0, 0, 0}; |
MockWrite data_writes[] = { |
- MockWrite(ASYNC, kSOCKSOkRequest, arraysize(kSOCKSOkRequest)) }; |
+ MockWrite(ASYNC, kSOCKSOkRequest, arraysize(kSOCKSOkRequest))}; |
MockRead data_reads[] = { |
MockRead(ASYNC, kSOCKSPartialReply1, arraysize(kSOCKSPartialReply1)), |
- MockRead(ASYNC, kSOCKSPartialReply2, arraysize(kSOCKSPartialReply2)) }; |
+ MockRead(ASYNC, kSOCKSPartialReply2, arraysize(kSOCKSPartialReply2))}; |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
host_resolver_.get(), |
- "localhost", 80, |
+ "localhost", |
+ 80, |
&log); |
int rv = user_sock_->Connect(callback_.callback()); |
EXPECT_EQ(ERR_IO_PENDING, rv); |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsBeginEvent( |
- entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(user_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
} |
// Tests scenario when the client sends the handshake request in |
// more than one packet. |
TEST_F(SOCKSClientSocketTest, PartialClientWrites) { |
- const char kSOCKSPartialRequest1[] = { 0x04, 0x01 }; |
- const char kSOCKSPartialRequest2[] = { 0x00, 0x50, 127, 0, 0, 1, 0 }; |
+ const char kSOCKSPartialRequest1[] = {0x04, 0x01}; |
+ const char kSOCKSPartialRequest2[] = {0x00, 0x50, 127, 0, 0, 1, 0}; |
MockWrite data_writes[] = { |
MockWrite(ASYNC, arraysize(kSOCKSPartialRequest1)), |
// simulate some empty writes |
- MockWrite(ASYNC, 0), |
- MockWrite(ASYNC, 0), |
- MockWrite(ASYNC, kSOCKSPartialRequest2, |
- arraysize(kSOCKSPartialRequest2)) }; |
+ MockWrite(ASYNC, 0), MockWrite(ASYNC, 0), |
+ MockWrite( |
+ ASYNC, kSOCKSPartialRequest2, arraysize(kSOCKSPartialRequest2))}; |
MockRead data_reads[] = { |
- MockRead(ASYNC, kSOCKSOkReply, arraysize(kSOCKSOkReply)) }; |
+ MockRead(ASYNC, kSOCKSOkReply, arraysize(kSOCKSOkReply))}; |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
host_resolver_.get(), |
- "localhost", 80, |
+ "localhost", |
+ 80, |
&log); |
int rv = user_sock_->Connect(callback_.callback()); |
EXPECT_EQ(ERR_IO_PENDING, rv); |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsBeginEvent( |
- entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(user_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
} |
// Tests the case when the server sends a smaller sized handshake data |
// and closes the connection. |
TEST_F(SOCKSClientSocketTest, FailedSocketRead) { |
MockWrite data_writes[] = { |
- MockWrite(ASYNC, kSOCKSOkRequest, arraysize(kSOCKSOkRequest)) }; |
+ MockWrite(ASYNC, kSOCKSOkRequest, arraysize(kSOCKSOkRequest))}; |
MockRead data_reads[] = { |
MockRead(ASYNC, kSOCKSOkReply, arraysize(kSOCKSOkReply) - 2), |
// close connection unexpectedly |
- MockRead(SYNCHRONOUS, 0) }; |
+ MockRead(SYNCHRONOUS, 0)}; |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
host_resolver_.get(), |
- "localhost", 80, |
+ "localhost", |
+ 80, |
&log); |
int rv = user_sock_->Connect(callback_.callback()); |
EXPECT_EQ(ERR_IO_PENDING, rv); |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsBeginEvent( |
- entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(ERR_CONNECTION_CLOSED, rv); |
EXPECT_FALSE(user_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
} |
// Tries to connect to an unknown hostname. Should fail rather than |
@@ -358,41 +358,39 @@ TEST_F(SOCKSClientSocketTest, FailedDNS) { |
CapturingNetLog log; |
- user_sock_ = BuildMockSocket(NULL, 0, |
- NULL, 0, |
- host_resolver_.get(), |
- hostname, 80, |
- &log); |
+ user_sock_ = BuildMockSocket( |
+ NULL, 0, NULL, 0, host_resolver_.get(), hostname, 80, &log); |
int rv = user_sock_->Connect(callback_.callback()); |
EXPECT_EQ(ERR_IO_PENDING, rv); |
CapturingNetLog::CapturedEntryList entries; |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsBeginEvent( |
- entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsBeginEvent(entries, 0, NetLog::TYPE_SOCKS_CONNECT)); |
rv = callback_.WaitForResult(); |
EXPECT_EQ(ERR_NAME_NOT_RESOLVED, rv); |
EXPECT_FALSE(user_sock_->IsConnected()); |
log.GetEntries(&entries); |
- EXPECT_TRUE(LogContainsEndEvent( |
- entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
+ EXPECT_TRUE(LogContainsEndEvent(entries, -1, NetLog::TYPE_SOCKS_CONNECT)); |
} |
// Calls Disconnect() while a host resolve is in progress. The outstanding host |
// resolve should be cancelled. |
TEST_F(SOCKSClientSocketTest, DisconnectWhileHostResolveInProgress) { |
scoped_ptr<HangingHostResolverWithCancel> hanging_resolver( |
- new HangingHostResolverWithCancel()); |
+ new HangingHostResolverWithCancel()); |
// Doesn't matter what the socket data is, we will never use it -- garbage. |
- MockWrite data_writes[] = { MockWrite(SYNCHRONOUS, "", 0) }; |
- MockRead data_reads[] = { MockRead(SYNCHRONOUS, "", 0) }; |
+ MockWrite data_writes[] = {MockWrite(SYNCHRONOUS, "", 0)}; |
+ MockRead data_reads[] = {MockRead(SYNCHRONOUS, "", 0)}; |
- user_sock_ = BuildMockSocket(data_reads, arraysize(data_reads), |
- data_writes, arraysize(data_writes), |
+ user_sock_ = BuildMockSocket(data_reads, |
+ arraysize(data_reads), |
+ data_writes, |
+ arraysize(data_writes), |
hanging_resolver.get(), |
- "foo", 80, |
+ "foo", |
+ 80, |
NULL); |
// Start connecting (will get stuck waiting for the host to resolve). |