summaryrefslogtreecommitdiffstats
path: root/net/base/ssl_client_socket_unittest.cc
diff options
context:
space:
mode:
authorrvargas@google.com <rvargas@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 21:51:25 +0000
committerrvargas@google.com <rvargas@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-30 21:51:25 +0000
commitffeb088e92325536ac1c371df3c4bd857ccb1221 (patch)
treeaf34055a796ac8181e3d90b838a02fcaf960ce26 /net/base/ssl_client_socket_unittest.cc
parentb57d5cc9dd98fc4fb284878ecc73e2eb95f6d1bd (diff)
downloadchromium_src-ffeb088e92325536ac1c371df3c4bd857ccb1221.zip
chromium_src-ffeb088e92325536ac1c371df3c4bd857ccb1221.tar.gz
chromium_src-ffeb088e92325536ac1c371df3c4bd857ccb1221.tar.bz2
Extend the use of IOBuffers to the code underneath
HttpNetworkTransaction (to the Socket class). This is the first step to remove the blocking call on the destructor of the network transaction, from IO thread. BUG=9258 R=wtc Review URL: http://codereview.chromium.org/87073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14998 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/ssl_client_socket_unittest.cc')
-rw-r--r--net/base/ssl_client_socket_unittest.cc30
1 files changed, 21 insertions, 9 deletions
diff --git a/net/base/ssl_client_socket_unittest.cc b/net/base/ssl_client_socket_unittest.cc
index 2399466..324f3b6 100644
--- a/net/base/ssl_client_socket_unittest.cc
+++ b/net/base/ssl_client_socket_unittest.cc
@@ -220,7 +220,11 @@ TEST_F(SSLClientSocketTest, MAYBE_Read) {
EXPECT_TRUE(sock->IsConnected());
const char request_text[] = "GET / HTTP/1.0\r\n\r\n";
- rv = sock->Write(request_text, arraysize(request_text) - 1, &callback);
+ scoped_refptr<net::IOBuffer> request_buffer =
+ new net::IOBuffer(arraysize(request_text) - 1);
+ memcpy(request_buffer->data(), request_text, arraysize(request_text) - 1);
+
+ rv = sock->Write(request_buffer, arraysize(request_text) - 1, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING) {
@@ -228,9 +232,9 @@ TEST_F(SSLClientSocketTest, MAYBE_Read) {
EXPECT_EQ(static_cast<int>(arraysize(request_text) - 1), rv);
}
- char buf[4096];
+ scoped_refptr<net::IOBuffer> buf = new net::IOBuffer(4096);
for (;;) {
- rv = sock->Read(buf, sizeof(buf), &callback);
+ rv = sock->Read(buf, 4096, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING)
@@ -272,7 +276,11 @@ TEST_F(SSLClientSocketTest, MAYBE_Read_SmallChunks) {
}
const char request_text[] = "GET / HTTP/1.0\r\n\r\n";
- rv = sock->Write(request_text, arraysize(request_text) - 1, &callback);
+ scoped_refptr<net::IOBuffer> request_buffer =
+ new net::IOBuffer(arraysize(request_text) - 1);
+ memcpy(request_buffer->data(), request_text, arraysize(request_text) - 1);
+
+ rv = sock->Write(request_buffer, arraysize(request_text) - 1, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING) {
@@ -280,9 +288,9 @@ TEST_F(SSLClientSocketTest, MAYBE_Read_SmallChunks) {
EXPECT_EQ(static_cast<int>(arraysize(request_text) - 1), rv);
}
- char buf[1];
+ scoped_refptr<net::IOBuffer> buf = new net::IOBuffer(1);
for (;;) {
- rv = sock->Read(buf, sizeof(buf), &callback);
+ rv = sock->Read(buf, 1, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING)
@@ -324,7 +332,11 @@ TEST_F(SSLClientSocketTest, MAYBE_Read_Interrupted) {
}
const char request_text[] = "GET / HTTP/1.0\r\n\r\n";
- rv = sock->Write(request_text, arraysize(request_text) - 1, &callback);
+ scoped_refptr<net::IOBuffer> request_buffer =
+ new net::IOBuffer(arraysize(request_text) - 1);
+ memcpy(request_buffer->data(), request_text, arraysize(request_text) - 1);
+
+ rv = sock->Write(request_buffer, arraysize(request_text) - 1, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING) {
@@ -333,8 +345,8 @@ TEST_F(SSLClientSocketTest, MAYBE_Read_Interrupted) {
}
// Do a partial read and then exit. This test should not crash!
- char buf[512];
- rv = sock->Read(buf, sizeof(buf), &callback);
+ scoped_refptr<net::IOBuffer> buf = new net::IOBuffer(512);
+ rv = sock->Read(buf, 512, &callback);
EXPECT_TRUE(rv >= 0 || rv == net::ERR_IO_PENDING);
if (rv == net::ERR_IO_PENDING)