Index: net/http/http_pipelined_network_transaction_unittest.cc |
diff --git a/net/http/http_pipelined_network_transaction_unittest.cc b/net/http/http_pipelined_network_transaction_unittest.cc |
index 181895c8d15f720b018cc3fbb5c8c669710ba9e0..df9d5f61f01546a65109dd22d87b879397393bd8 100644 |
--- a/net/http/http_pipelined_network_transaction_unittest.cc |
+++ b/net/http/http_pipelined_network_transaction_unittest.cc |
@@ -69,9 +69,7 @@ class SimpleProxyConfigService : public ProxyConfigService { |
class HttpPipelinedNetworkTransactionTest : public testing::Test { |
public: |
HttpPipelinedNetworkTransactionTest() |
- : histograms_("a"), |
- pool_(1, 1, &histograms_, &factory_) { |
- } |
+ : histograms_("a"), pool_(1, 1, &histograms_, &factory_) {} |
void Initialize(bool force_http_pipelining) { |
// Normally, this code could just go in SetUp(). For a few of these tests, |
@@ -95,10 +93,12 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
session_ = new HttpNetworkSession(session_params); |
} |
- void AddExpectedConnection(MockRead* reads, size_t reads_count, |
- MockWrite* writes, size_t writes_count) { |
- DeterministicSocketData* data = new DeterministicSocketData( |
- reads, reads_count, writes, writes_count); |
+ void AddExpectedConnection(MockRead* reads, |
+ size_t reads_count, |
+ MockWrite* writes, |
+ size_t writes_count) { |
+ DeterministicSocketData* data = |
+ new DeterministicSocketData(reads, reads_count, writes, writes_count); |
data->set_connect_data(MockConnect(SYNCHRONOUS, OK)); |
if (reads_count || writes_count) { |
data->StopAfter(reads_count + writes_count); |
@@ -113,7 +113,8 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
}; |
HttpRequestInfo* GetRequestInfo( |
- const char* filename, RequestInfoOptions options = REQUEST_DEFAULT) { |
+ const char* filename, |
+ RequestInfoOptions options = REQUEST_DEFAULT) { |
std::string url = base::StringPrintf("http://localhost/%s", filename); |
HttpRequestInfo* request_info = new HttpRequestInfo; |
request_info->url = GURL(url); |
@@ -130,19 +131,21 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
IoMode io_mode) { |
scoped_refptr<IOBuffer> buffer(new IOBuffer(expected.size())); |
if (io_mode == ASYNC) { |
- EXPECT_EQ(ERR_IO_PENDING, transaction.Read(buffer.get(), expected.size(), |
- callback_.callback())); |
+ EXPECT_EQ(ERR_IO_PENDING, |
+ transaction.Read( |
+ buffer.get(), expected.size(), callback_.callback())); |
data_vector_[0]->RunFor(1); |
EXPECT_EQ(static_cast<int>(expected.length()), callback_.WaitForResult()); |
} else { |
EXPECT_EQ(static_cast<int>(expected.size()), |
- transaction.Read(buffer.get(), expected.size(), |
- callback_.callback())); |
+ transaction.Read( |
+ buffer.get(), expected.size(), callback_.callback())); |
} |
std::string actual(buffer->data(), expected.size()); |
EXPECT_THAT(actual, StrEq(expected)); |
- EXPECT_EQ(OK, transaction.Read(buffer.get(), expected.size(), |
- callback_.callback())); |
+ EXPECT_EQ( |
+ OK, |
+ transaction.Read(buffer.get(), expected.size(), callback_.callback())); |
} |
void CompleteTwoRequests(int data_index, int stop_at_step) { |
@@ -151,20 +154,22 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
TestCompletionCallback one_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
one_transaction->Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ one_callback.callback(), |
+ BoundNetLog())); |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ two_callback.callback(), |
+ BoundNetLog())); |
TestCompletionCallback one_read_callback; |
scoped_refptr<IOBuffer> buffer(new IOBuffer(8)); |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction->Read(buffer.get(), 8, |
- one_read_callback.callback())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction->Read(buffer.get(), 8, one_read_callback.callback())); |
data_vector_[data_index]->SetStop(stop_at_step); |
data_vector_[data_index]->Run(); |
@@ -172,8 +177,9 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
data_vector_[data_index]->SetStop(10); |
std::string actual(buffer->data(), 8); |
EXPECT_THAT(actual, StrEq("one.html")); |
- EXPECT_EQ(OK, one_transaction->Read(buffer.get(), 8, |
- one_read_callback.callback())); |
+ EXPECT_EQ( |
+ OK, |
+ one_transaction->Read(buffer.get(), 8, one_read_callback.callback())); |
EXPECT_EQ(OK, two_callback.WaitForResult()); |
ExpectResponse("two.html", two_transaction, SYNCHRONOUS); |
@@ -185,14 +191,16 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
TestCompletionCallback one_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
one_transaction->Start(GetRequestInfo("one.html", options), |
- one_callback.callback(), BoundNetLog())); |
+ one_callback.callback(), |
+ BoundNetLog())); |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
two_transaction.Start(GetRequestInfo("two.html", options), |
- two_callback.callback(), BoundNetLog())); |
+ two_callback.callback(), |
+ BoundNetLog())); |
HttpNetworkTransaction three_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback three_callback; |
@@ -205,7 +213,8 @@ class HttpPipelinedNetworkTransactionTest : public testing::Test { |
TestCompletionCallback four_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
four_transaction.Start(GetRequestInfo("four.html", options), |
- four_callback.callback(), BoundNetLog())); |
+ four_callback.callback(), |
+ BoundNetLog())); |
ExpectResponse("one.html", *one_transaction.get(), SYNCHRONOUS); |
EXPECT_EQ(OK, two_callback.WaitForResult()); |
@@ -238,21 +247,24 @@ TEST_F(HttpPipelinedNetworkTransactionTest, OneRequest) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /test.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /test.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 9\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "test.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 9\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "test.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
HttpNetworkTransaction transaction(DEFAULT_PRIORITY, session_.get()); |
- EXPECT_EQ(ERR_IO_PENDING, |
- transaction.Start(GetRequestInfo("test.html"), callback_.callback(), |
- BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ transaction.Start( |
+ GetRequestInfo("test.html"), callback_.callback(), BoundNetLog())); |
EXPECT_EQ(OK, callback_.WaitForResult()); |
ExpectResponse("test.html", transaction, SYNCHRONOUS); |
} |
@@ -261,20 +273,24 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ReusePipeline) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 3, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 3, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 4, "one.html"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 7, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 4, "one.html"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 7, "two.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
@@ -289,32 +305,40 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ReusesOnSpaceAvailable) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 4, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 7, "GET /three.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 12, "GET /four.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 4, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 7, |
+ "GET /three.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 12, |
+ "GET /four.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "one.html"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 8, "two.html"), |
- MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 11, "three.html"), |
- MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 15, "four.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "one.html"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 8, "two.html"), |
+ MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 11, "three.html"), |
+ MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 15, "four.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
@@ -332,32 +356,40 @@ TEST_F(HttpPipelinedNetworkTransactionTest, WontPipelineMainResource) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 4, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 8, "GET /three.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 12, "GET /four.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 4, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 8, |
+ "GET /three.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 12, |
+ "GET /four.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "one.html"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 7, "two.html"), |
- MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 11, "three.html"), |
- MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 15, "four.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "one.html"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 7, "two.html"), |
+ MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 11, "three.html"), |
+ MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 15, "four.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
@@ -371,26 +403,29 @@ TEST_F(HttpPipelinedNetworkTransactionTest, UnknownSizeEvictsToNewPipeline) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n\r\n"), |
- MockRead(ASYNC, 2, "one.html"), |
- MockRead(SYNCHRONOUS, OK, 3), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n\r\n"), |
+ MockRead(ASYNC, 2, "one.html"), MockRead(SYNCHRONOUS, OK, 3), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
MockWrite writes2[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads2[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "two.html"), |
}; |
AddExpectedConnection(reads2, arraysize(reads2), writes2, arraysize(writes2)); |
@@ -401,30 +436,36 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ConnectionCloseEvictToNewPipeline) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 3, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 3, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 4, "one.html"), |
- MockRead(SYNCHRONOUS, ERR_SOCKET_NOT_CONNECTED, 5), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 4, "one.html"), |
+ MockRead(SYNCHRONOUS, ERR_SOCKET_NOT_CONNECTED, 5), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
MockWrite writes2[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads2[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "two.html"), |
}; |
AddExpectedConnection(reads2, arraysize(reads2), writes2, arraysize(writes2)); |
@@ -435,43 +476,51 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ErrorEvictsToNewPipeline) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 3, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 3, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n\r\n"), |
- MockRead(SYNCHRONOUS, ERR_FAILED, 2), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, ERR_FAILED, 2), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
MockWrite writes2[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads2[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "two.html"), |
}; |
AddExpectedConnection(reads2, arraysize(reads2), writes2, arraysize(writes2)); |
HttpNetworkTransaction one_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction.Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction.Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
scoped_refptr<IOBuffer> buffer(new IOBuffer(1)); |
EXPECT_EQ(ERR_FAILED, |
@@ -484,33 +533,37 @@ TEST_F(HttpPipelinedNetworkTransactionTest, SendErrorEvictsToNewPipeline) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(ASYNC, ERR_FAILED, 0), |
+ MockWrite(ASYNC, ERR_FAILED, 0), |
}; |
AddExpectedConnection(NULL, 0, writes, arraysize(writes)); |
MockWrite writes2[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads2[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "two.html"), |
}; |
AddExpectedConnection(reads2, arraysize(reads2), writes2, arraysize(writes2)); |
HttpNetworkTransaction one_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction.Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction.Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
data_vector_[0]->RunFor(1); |
EXPECT_EQ(ERR_FAILED, one_callback.WaitForResult()); |
@@ -523,20 +576,24 @@ TEST_F(HttpPipelinedNetworkTransactionTest, RedirectDrained) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /redirect.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 3, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /redirect.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 3, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 302 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 4, "redirect"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 7, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 302 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 4, "redirect"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 7, "two.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
@@ -545,14 +602,16 @@ TEST_F(HttpPipelinedNetworkTransactionTest, RedirectDrained) { |
TestCompletionCallback one_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
one_transaction->Start(GetRequestInfo("redirect.html"), |
- one_callback.callback(), BoundNetLog())); |
+ one_callback.callback(), |
+ BoundNetLog())); |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
one_transaction.reset(); |
data_vector_[0]->RunFor(2); |
@@ -566,42 +625,44 @@ TEST_F(HttpPipelinedNetworkTransactionTest, BasicHttpAuthentication) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 5, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n" |
- "Authorization: auth_token\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 5, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n" |
+ "Authorization: auth_token\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 401 Authentication Required\r\n"), |
- MockRead(SYNCHRONOUS, 2, |
- "WWW-Authenticate: Basic realm=\"Secure Area\"\r\n"), |
- MockRead(SYNCHRONOUS, 3, "Content-Length: 20\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 4, "needs authentication"), |
- MockRead(SYNCHRONOUS, 6, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 7, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 8, "one.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 401 Authentication Required\r\n"), |
+ MockRead( |
+ SYNCHRONOUS, 2, "WWW-Authenticate: Basic realm=\"Secure Area\"\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "Content-Length: 20\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 4, "needs authentication"), |
+ MockRead(SYNCHRONOUS, 6, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 7, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 8, "one.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
HttpAuthHandlerMock* mock_auth = new HttpAuthHandlerMock; |
std::string challenge_text = "Basic"; |
HttpAuthChallengeTokenizer challenge(challenge_text.begin(), |
- challenge_text.end()); |
+ challenge_text.end()); |
GURL origin("localhost"); |
- EXPECT_TRUE(mock_auth->InitFromChallenge(&challenge, |
- HttpAuth::AUTH_SERVER, |
- origin, |
- BoundNetLog())); |
+ EXPECT_TRUE(mock_auth->InitFromChallenge( |
+ &challenge, HttpAuth::AUTH_SERVER, origin, BoundNetLog())); |
auth_handler_factory_->AddMockHandler(mock_auth, HttpAuth::AUTH_SERVER); |
HttpNetworkTransaction transaction(DEFAULT_PRIORITY, session_.get()); |
- EXPECT_EQ(ERR_IO_PENDING, |
- transaction.Start(GetRequestInfo("one.html"), |
- callback_.callback(), |
- BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ transaction.Start( |
+ GetRequestInfo("one.html"), callback_.callback(), BoundNetLog())); |
EXPECT_EQ(OK, callback_.WaitForResult()); |
AuthCredentials credentials(base::ASCIIToUTF16("user"), |
@@ -615,40 +676,44 @@ TEST_F(HttpPipelinedNetworkTransactionTest, OldVersionDisablesPipelining) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /pipelined.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /pipelined.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.0 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 14\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "pipelined.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.0 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 14\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "pipelined.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
MockWrite writes2[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads2[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 3, "one.html"), |
- MockRead(SYNCHRONOUS, OK, 4), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 3, "one.html"), MockRead(SYNCHRONOUS, OK, 4), |
}; |
AddExpectedConnection(reads2, arraysize(reads2), writes2, arraysize(writes2)); |
MockWrite writes3[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads3[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "two.html"), |
- MockRead(SYNCHRONOUS, OK, 4), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "two.html"), MockRead(SYNCHRONOUS, OK, 4), |
}; |
AddExpectedConnection(reads3, arraysize(reads3), writes3, arraysize(writes3)); |
@@ -656,7 +721,8 @@ TEST_F(HttpPipelinedNetworkTransactionTest, OldVersionDisablesPipelining) { |
TestCompletionCallback one_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
one_transaction.Start(GetRequestInfo("pipelined.html"), |
- one_callback.callback(), BoundNetLog())); |
+ one_callback.callback(), |
+ BoundNetLog())); |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
ExpectResponse("pipelined.html", one_transaction, SYNCHRONOUS); |
@@ -675,74 +741,88 @@ TEST_F(HttpPipelinedNetworkTransactionTest, PipelinesImmediatelyIfKnownGood) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 4, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 7, "GET /three.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 12, "GET /four.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 16, "GET /second-pipeline-one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(SYNCHRONOUS, 17, "GET /second-pipeline-two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 4, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 7, |
+ "GET /three.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 12, |
+ "GET /four.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 16, |
+ "GET /second-pipeline-one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 17, |
+ "GET /second-pipeline-two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 3, "one.html"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 8, "two.html"), |
- MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 11, "three.html"), |
- MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 15, "four.html"), |
- MockRead(ASYNC, 18, "HTTP/1.1 200 OK\r\n"), |
- MockRead(ASYNC, 19, "Content-Length: 24\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 20, "second-pipeline-one.html"), |
- MockRead(SYNCHRONOUS, 21, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 22, "Content-Length: 24\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 23, "second-pipeline-two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 3, "one.html"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 8, "two.html"), |
+ MockRead(SYNCHRONOUS, 9, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 10, "Content-Length: 10\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 11, "three.html"), |
+ MockRead(SYNCHRONOUS, 13, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 14, "Content-Length: 9\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 15, "four.html"), |
+ MockRead(ASYNC, 18, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(ASYNC, 19, "Content-Length: 24\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 20, "second-pipeline-one.html"), |
+ MockRead(SYNCHRONOUS, 21, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 22, "Content-Length: 24\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 23, "second-pipeline-two.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
CompleteFourRequests(REQUEST_DEFAULT); |
- HttpNetworkTransaction second_one_transaction( |
- DEFAULT_PRIORITY, session_.get()); |
+ HttpNetworkTransaction second_one_transaction(DEFAULT_PRIORITY, |
+ session_.get()); |
TestCompletionCallback second_one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- second_one_transaction.Start( |
- GetRequestInfo("second-pipeline-one.html"), |
- second_one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ second_one_transaction.Start(GetRequestInfo("second-pipeline-one.html"), |
+ second_one_callback.callback(), |
+ BoundNetLog())); |
base::MessageLoop::current()->RunUntilIdle(); |
- HttpNetworkTransaction second_two_transaction( |
- DEFAULT_PRIORITY, session_.get()); |
+ HttpNetworkTransaction second_two_transaction(DEFAULT_PRIORITY, |
+ session_.get()); |
TestCompletionCallback second_two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- second_two_transaction.Start( |
- GetRequestInfo("second-pipeline-two.html"), |
- second_two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ second_two_transaction.Start(GetRequestInfo("second-pipeline-two.html"), |
+ second_two_callback.callback(), |
+ BoundNetLog())); |
data_vector_[0]->RunFor(3); |
EXPECT_EQ(OK, second_one_callback.WaitForResult()); |
data_vector_[0]->StopAfter(100); |
- ExpectResponse("second-pipeline-one.html", second_one_transaction, |
- SYNCHRONOUS); |
+ ExpectResponse( |
+ "second-pipeline-one.html", second_one_transaction, SYNCHRONOUS); |
EXPECT_EQ(OK, second_two_callback.WaitForResult()); |
- ExpectResponse("second-pipeline-two.html", second_two_transaction, |
- SYNCHRONOUS); |
+ ExpectResponse( |
+ "second-pipeline-two.html", second_two_transaction, SYNCHRONOUS); |
ClientSocketPoolManager::set_max_sockets_per_group( |
HttpNetworkSession::NORMAL_SOCKET_POOL, old_max_sockets); |
@@ -751,9 +831,7 @@ TEST_F(HttpPipelinedNetworkTransactionTest, PipelinesImmediatelyIfKnownGood) { |
class DataRunnerObserver : public base::MessageLoop::TaskObserver { |
public: |
DataRunnerObserver(DeterministicSocketData* data, int run_before_task) |
- : data_(data), |
- run_before_task_(run_before_task), |
- current_task_(0) { } |
+ : data_(data), run_before_task_(run_before_task), current_task_(0) {} |
virtual void WillProcessTask(const base::PendingTask& pending_task) OVERRIDE { |
++current_task_; |
@@ -788,20 +866,24 @@ TEST_F(HttpPipelinedNetworkTransactionTest, OpenPipelinesWhileBinding) { |
Initialize(false); |
MockWrite writes[] = { |
- MockWrite(SYNCHRONOUS, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
- MockWrite(ASYNC, 3, "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(SYNCHRONOUS, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(ASYNC, |
+ 3, |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(ASYNC, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 4, "one.html"), |
- MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
- MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
- MockRead(SYNCHRONOUS, 7, "two.html"), |
+ MockRead(SYNCHRONOUS, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(ASYNC, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 4, "one.html"), |
+ MockRead(SYNCHRONOUS, 5, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(SYNCHRONOUS, 6, "Content-Length: 8\r\n\r\n"), |
+ MockRead(SYNCHRONOUS, 7, "two.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
@@ -809,18 +891,20 @@ TEST_F(HttpPipelinedNetworkTransactionTest, OpenPipelinesWhileBinding) { |
HttpNetworkTransaction one_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction.Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction.Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
data_vector_[0]->SetStop(2); |
data_vector_[0]->Run(); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
// Posted tasks should be: |
// 1. MockHostResolverBase::ResolveNow |
// 2. HttpStreamFactoryImpl::Job::OnStreamReadyCallback for job 1 |
@@ -853,9 +937,10 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ProxyChangesWhileConnecting) { |
factory_.AddSocketDataProvider(&data2); |
HttpNetworkTransaction transaction(DEFAULT_PRIORITY, session_.get()); |
- EXPECT_EQ(ERR_IO_PENDING, |
- transaction.Start(GetRequestInfo("test.html"), callback_.callback(), |
- BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ transaction.Start( |
+ GetRequestInfo("test.html"), callback_.callback(), BoundNetLog())); |
proxy_config_service_->IncrementConfigId(); |
@@ -866,35 +951,39 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ForcedPipelineSharesConnection) { |
Initialize(true); |
MockWrite writes[] = { |
- MockWrite(ASYNC, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(ASYNC, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n" |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"), |
- MockRead(ASYNC, 2, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 3, "one.html"), |
- MockRead(ASYNC, 4, "HTTP/1.1 200 OK\r\n"), |
- MockRead(ASYNC, 5, "Content-Length: 8\r\n\r\n"), |
- MockRead(ASYNC, 6, "two.html"), |
+ MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(ASYNC, 2, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 3, "one.html"), |
+ MockRead(ASYNC, 4, "HTTP/1.1 200 OK\r\n"), |
+ MockRead(ASYNC, 5, "Content-Length: 8\r\n\r\n"), |
+ MockRead(ASYNC, 6, "two.html"), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
scoped_ptr<HttpNetworkTransaction> one_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction->Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction->Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
data_vector_[0]->RunFor(3); // Send + 2 lines of headers. |
EXPECT_EQ(OK, one_callback.WaitForResult()); |
@@ -917,15 +1006,17 @@ TEST_F(HttpPipelinedNetworkTransactionTest, |
scoped_ptr<HttpNetworkTransaction> one_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction->Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction->Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
data.Run(); |
EXPECT_EQ(ERR_FAILED, one_callback.WaitForResult()); |
@@ -936,30 +1027,34 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ForcedPipelineEvictionIsFatal) { |
Initialize(true); |
MockWrite writes[] = { |
- MockWrite(ASYNC, 0, "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n"), |
+ MockWrite(ASYNC, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n" |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(ASYNC, ERR_FAILED, 1), |
+ MockRead(ASYNC, ERR_FAILED, 1), |
}; |
AddExpectedConnection(reads, arraysize(reads), writes, arraysize(writes)); |
scoped_ptr<HttpNetworkTransaction> one_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction->Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction->Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
HttpNetworkTransaction two_transaction(DEFAULT_PRIORITY, session_.get()); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction.Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction.Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
data_vector_[0]->RunFor(2); |
EXPECT_EQ(ERR_FAILED, one_callback.WaitForResult()); |
@@ -971,23 +1066,23 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ForcedPipelineOrder) { |
Initialize(true); |
MockWrite writes[] = { |
- MockWrite(ASYNC, 0, |
- "GET /one.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- "GET /two.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- "GET /three.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- "GET /four.html HTTP/1.1\r\n" |
- "Host: localhost\r\n" |
- "Connection: keep-alive\r\n\r\n" |
- ), |
+ MockWrite(ASYNC, |
+ 0, |
+ "GET /one.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n" |
+ "GET /two.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n" |
+ "GET /three.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n" |
+ "GET /four.html HTTP/1.1\r\n" |
+ "Host: localhost\r\n" |
+ "Connection: keep-alive\r\n\r\n"), |
}; |
MockRead reads[] = { |
- MockRead(ASYNC, ERR_FAILED, 1), |
+ MockRead(ASYNC, ERR_FAILED, 1), |
}; |
DeterministicSocketData data( |
reads, arraysize(reads), writes, arraysize(writes)); |
@@ -997,30 +1092,34 @@ TEST_F(HttpPipelinedNetworkTransactionTest, ForcedPipelineOrder) { |
scoped_ptr<HttpNetworkTransaction> one_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback one_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- one_transaction->Start(GetRequestInfo("one.html"), |
- one_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ one_transaction->Start( |
+ GetRequestInfo("one.html"), one_callback.callback(), BoundNetLog())); |
scoped_ptr<HttpNetworkTransaction> two_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback two_callback; |
- EXPECT_EQ(ERR_IO_PENDING, |
- two_transaction->Start(GetRequestInfo("two.html"), |
- two_callback.callback(), BoundNetLog())); |
+ EXPECT_EQ( |
+ ERR_IO_PENDING, |
+ two_transaction->Start( |
+ GetRequestInfo("two.html"), two_callback.callback(), BoundNetLog())); |
scoped_ptr<HttpNetworkTransaction> three_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback three_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
three_transaction->Start(GetRequestInfo("three.html"), |
- three_callback.callback(), BoundNetLog())); |
+ three_callback.callback(), |
+ BoundNetLog())); |
scoped_ptr<HttpNetworkTransaction> four_transaction( |
new HttpNetworkTransaction(DEFAULT_PRIORITY, session_.get())); |
TestCompletionCallback four_callback; |
EXPECT_EQ(ERR_IO_PENDING, |
four_transaction->Start(GetRequestInfo("four.html"), |
- four_callback.callback(), BoundNetLog())); |
+ four_callback.callback(), |
+ BoundNetLog())); |
data.RunFor(3); |
EXPECT_EQ(ERR_FAILED, one_callback.WaitForResult()); |