summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_network_transaction_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'net/spdy/spdy_network_transaction_unittest.cc')
-rw-r--r--net/spdy/spdy_network_transaction_unittest.cc164
1 files changed, 1 insertions, 163 deletions
diff --git a/net/spdy/spdy_network_transaction_unittest.cc b/net/spdy/spdy_network_transaction_unittest.cc
index 120d692..e912b78 100644
--- a/net/spdy/spdy_network_transaction_unittest.cc
+++ b/net/spdy/spdy_network_transaction_unittest.cc
@@ -507,10 +507,6 @@ class SpdyNetworkTransactionTest : public PlatformTest {
return google_get_request_;
}
- SpdyStream* GetSpdyStream(SpdyNetworkTransaction* trans) {
- return trans->stream_->stream();
- }
-
private:
bool google_get_request_initialized_;
HttpRequestInfo google_get_request_;
@@ -685,73 +681,6 @@ TEST_F(SpdyNetworkTransactionTest, ResponseWithoutSynReply) {
EXPECT_EQ(ERR_SYN_REPLY_NOT_RECEIVED, out.rv);
}
-class CloseStreamCallback : public CallbackRunner< Tuple1<int> > {
- public:
- explicit CloseStreamCallback(SpdyStream* stream)
- : stream_(stream) {}
-
- // This callback should occur immediately after the SpdyStream has been
- // closed. We check that the stream has been marked half closed from the
- // client side.
- virtual void RunWithParams(const Tuple1<int>& params) {
- EXPECT_TRUE(stream_->half_closed_client_side());
- }
-
- private:
- const SpdyStream* stream_;
-};
-
-// Test that spdy_session marks a stream as half closed immediately upon closing
-// the stream.
-TEST_F(SpdyNetworkTransactionTest, StreamHalfClosedClientSide) {
- MockWrite writes[] = {
- MockWrite(true, reinterpret_cast<const char*>(kGetSyn),
- arraysize(kGetSyn), 1),
- };
-
- MockRead reads[] = {
- MockRead(true, reinterpret_cast<const char*>(kGetSynReply),
- arraysize(kGetSynReply), 2),
- MockRead(true, reinterpret_cast<const char*>(kGetBodyFrame),
- arraysize(kGetBodyFrame), 3),
- MockRead(true, 0, 0, 4), // EOF
- };
-
- HttpRequestInfo request;
- request.method = "GET";
- request.url = GURL("http://www.google.com/");
- request.load_flags = 0;
-
- // We disable SSL for this test.
- SpdySession::SetSSLMode(false);
-
- SessionDependencies session_deps;
- scoped_ptr<SpdyNetworkTransaction> trans(
- new SpdyNetworkTransaction(CreateSession(&session_deps)));
- scoped_refptr<OrderedSocketData> data(
- new OrderedSocketData(reads, arraysize(reads),
- writes, arraysize(writes)));
- session_deps.socket_factory.AddSocketDataProvider(data);
-
- // Start the transaction with basic parameters.
- TestCompletionCallback callback;
- int rv = trans->Start(&request, &callback, BoundNetLog());
- EXPECT_EQ(ERR_IO_PENDING, rv);
- rv = callback.WaitForResult();
-
- SpdyStream* stream = GetSpdyStream(trans.get());
-
- // Setup a user callback which will check that the half closed flag is marked
- // immediately after the stream is closed.
- CloseStreamCallback callback2(stream);
- const int kSize = 3000;
- scoped_refptr<net::IOBuffer> buf = new net::IOBuffer(kSize);
- rv = trans->Read(buf, kSize, &callback2);
-
- // Finish running rest of tasks.
- MessageLoop::current()->RunAllPending();
-}
-
// Test that the transaction doesn't crash when we get two replies on the same
// stream ID. See http://crbug.com/45639.
TEST_F(SpdyNetworkTransactionTest, ResponseWithTwoSynReplies) {
@@ -840,97 +769,6 @@ TEST_F(SpdyNetworkTransactionTest, CancelledTransaction) {
// MockClientSocketFactory) are still alive.
MessageLoop::current()->RunAllPending();
}
-// The client upon cancellation tries to send a RST_STREAM frame. The mock
-// socket causes the TCP write to return zero. This test checks that the client
-// tries to queue up the RST_STREAM frame again.
-TEST_F(SpdyNetworkTransactionTest, SocketWriteReturnsZero) {
- MockWrite writes[] = {
- MockWrite(true, reinterpret_cast<const char*>(kGetSyn),
- arraysize(kGetSyn), 1),
- MockWrite(true, 0, 0, 3),
- MockWrite(true, reinterpret_cast<const char*>(kGetRst),
- arraysize(kGetRst), 4),
- };
-
- MockRead reads[] = {
- MockRead(true, reinterpret_cast<const char*>(kGetSynReply),
- arraysize(kGetSynReply), 2),
- MockRead(true, 0, 0, 5) // EOF
- };
-
- HttpRequestInfo request;
- request.method = "GET";
- request.url = GURL("http://www.google.com/");
- request.load_flags = 0;
-
- // We disable SSL for this test.
- SpdySession::SetSSLMode(false);
-
- SessionDependencies session_deps;
- scoped_ptr<SpdyNetworkTransaction> trans(
- new SpdyNetworkTransaction(CreateSession(&session_deps)));
- scoped_refptr<OrderedSocketData> data(
- new OrderedSocketData(reads, arraysize(reads),
- writes, arraysize(writes)));
- session_deps.socket_factory.AddSocketDataProvider(data);
-
- TestCompletionCallback callback;
-
- int rv = trans->Start(&request, &callback, BoundNetLog());
- EXPECT_EQ(ERR_IO_PENDING, rv);
- rv = callback.WaitForResult();
- trans.reset(); // Cancel the transaction.
-
- // Finish running rest of tasks.
- MessageLoop::current()->RunAllPending();
- EXPECT_TRUE(data->at_write_eof()) << "Write count: " << data->write_count()
- << ". Write index: " << data->write_index() << ".";
-}
-
-
-// Verify that the client sends a Rst Frame upon cancelling the stream.
-TEST_F(SpdyNetworkTransactionTest, CancelledTransactionSendRst) {
- MockWrite writes[] = {
- MockWrite(true, reinterpret_cast<const char*>(kGetSyn),
- arraysize(kGetSyn), 1),
- MockWrite(true, reinterpret_cast<const char*>(kGetRst),
- arraysize(kGetRst), 3),
- };
-
- MockRead reads[] = {
- MockRead(true, reinterpret_cast<const char*>(kGetSynReply),
- arraysize(kGetSynReply), 2),
- MockRead(true, 0, 0, 4) // EOF
- };
-
- HttpRequestInfo request;
- request.method = "GET";
- request.url = GURL("http://www.google.com/");
- request.load_flags = 0;
-
- // We disable SSL for this test.
- SpdySession::SetSSLMode(false);
-
- SessionDependencies session_deps;
- scoped_ptr<SpdyNetworkTransaction> trans(
- new SpdyNetworkTransaction(CreateSession(&session_deps)));
- scoped_refptr<OrderedSocketData> data(
- new OrderedSocketData(reads, arraysize(reads),
- writes, arraysize(writes)));
- session_deps.socket_factory.AddSocketDataProvider(data);
-
- TestCompletionCallback callback;
-
- int rv = trans->Start(&request, &callback, BoundNetLog());
- EXPECT_EQ(ERR_IO_PENDING, rv);
- rv = callback.WaitForResult();
- trans.reset(); // Cancel the transaction.
-
- // Finish running rest of tasks.
- MessageLoop::current()->RunAllPending();
- EXPECT_TRUE(data->at_write_eof()) << "Write count: " << data->write_count()
- << ". Write index: " << data->write_index() << ".";
-}
class DeleteSessionCallback : public CallbackRunner< Tuple1<int> > {
public:
@@ -975,7 +813,7 @@ TEST_F(SpdyNetworkTransactionTest, DeleteSessionOnReadCallback) {
SpdySession::SetSSLMode(false);
SessionDependencies session_deps;
- SpdyNetworkTransaction* trans =
+ SpdyNetworkTransaction * trans =
new SpdyNetworkTransaction(CreateSession(&session_deps));
scoped_refptr<OrderedSocketData> data(
new OrderedSocketData(reads, arraysize(reads),