diff options
Diffstat (limited to 'net/spdy/spdy_session_spdy3_unittest.cc')
-rw-r--r-- | net/spdy/spdy_session_spdy3_unittest.cc | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/net/spdy/spdy_session_spdy3_unittest.cc b/net/spdy/spdy_session_spdy3_unittest.cc index 12fc829..59b7382 100644 --- a/net/spdy/spdy_session_spdy3_unittest.cc +++ b/net/spdy/spdy_session_spdy3_unittest.cc @@ -291,7 +291,7 @@ TEST_F(SpdySessionSpdy3Test, DeleteExpiredPushStreams) { (*request_headers)[":path"] = "/"; scoped_refptr<SpdyStream> stream( - new SpdyStream(session, 1, false, session->net_log_)); + new SpdyStream(session, false, session->net_log_)); stream->set_spdy_headers(request_headers.Pass()); session->ActivateStream(stream); @@ -402,7 +402,7 @@ TEST_F(SpdySessionSpdy3Test, FailedPing) { // Assert session is not closed. EXPECT_FALSE(session->IsClosed()); - EXPECT_LT(0u, session->num_active_streams()); + EXPECT_LT(0u, session->num_active_streams() + session->num_created_streams()); EXPECT_TRUE(spdy_session_pool->HasSession(pair)); // We set last time we have received any data in 1 sec less than now. @@ -522,8 +522,8 @@ TEST_F(SpdySessionSpdy3Test, CloseIdleSessions) { // Make sessions 1 and 3 inactive, but keep them open. // Session 2 still open and active - session1->CloseStream(spdy_stream1->stream_id(), OK); - session3->CloseStream(spdy_stream3->stream_id(), OK); + session1->CloseCreatedStream(spdy_stream1, OK); + session3->CloseCreatedStream(spdy_stream3, OK); EXPECT_FALSE(session1->is_active()); EXPECT_FALSE(session1->IsClosed()); EXPECT_TRUE(session2->is_active()); @@ -546,7 +546,7 @@ TEST_F(SpdySessionSpdy3Test, CloseIdleSessions) { EXPECT_FALSE(session2->IsClosed()); // Make 2 not active - session2->CloseStream(spdy_stream2->stream_id(), OK); + session2->CloseCreatedStream(spdy_stream2, OK); EXPECT_FALSE(session2->is_active()); EXPECT_FALSE(session2->IsClosed()); @@ -1265,22 +1265,24 @@ TEST_F(SpdySessionSpdy3Test, UpdateStreamsSendWindowSize) { MockConnect connect_data(SYNCHRONOUS, OK); scoped_ptr<SpdyFrame> settings_frame(ConstructSpdySettings(new_settings)); MockRead reads[] = { - CreateMockRead(*settings_frame), - MockRead(SYNCHRONOUS, 0, 0) // EOF + CreateMockRead(*settings_frame, 0), + MockRead(ASYNC, 0, 1) // EOF }; SpdySessionDependencies session_deps; + session_deps.host_resolver->set_synchronous_mode(true); - StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); - data.set_connect_data(connect_data); - session_deps.socket_factory->AddSocketDataProvider(&data); + scoped_ptr<DeterministicSocketData> data( + new DeterministicSocketData(reads, arraysize(reads), NULL, 0)); + data->set_connect_data(connect_data); + session_deps.deterministic_socket_factory->AddSocketDataProvider(data.get()); SSLSocketDataProvider ssl(SYNCHRONOUS, OK); session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); scoped_refptr<HttpNetworkSession> http_session( - SpdySessionDependencies::SpdyCreateSession(&session_deps)); + SpdySessionDependencies::SpdyCreateSessionDeterministic(&session_deps)); const std::string kTestHost("www.foo.com"); const int kTestPort = 80; @@ -1320,6 +1322,7 @@ TEST_F(SpdySessionSpdy3Test, UpdateStreamsSendWindowSize) { callback1.callback())); EXPECT_NE(spdy_stream1->send_window_size(), window_size); + data->RunFor(1); // Process the SETTINGS frame, but not the EOF MessageLoop::current()->RunAllPending(); EXPECT_EQ(session->initial_send_window_size(), window_size); EXPECT_EQ(spdy_stream1->send_window_size(), window_size); @@ -1344,8 +1347,8 @@ TEST_F(SpdySessionSpdy3Test, UpdateStreamsSendWindowSize) { TEST_F(SpdySessionSpdy3Test, OutOfOrderSynStreams) { // Construct the request. MockConnect connect_data(SYNCHRONOUS, OK); - scoped_ptr<SpdyFrame> req1(ConstructSpdyGet(NULL, 0, false, 1, LOWEST)); - scoped_ptr<SpdyFrame> req2(ConstructSpdyGet(NULL, 0, false, 3, HIGHEST)); + scoped_ptr<SpdyFrame> req1(ConstructSpdyGet(NULL, 0, false, 1, HIGHEST)); + scoped_ptr<SpdyFrame> req2(ConstructSpdyGet(NULL, 0, false, 3, LOWEST)); MockWrite writes[] = { CreateMockWrite(*req1, 2), CreateMockWrite(*req2, 1), @@ -1409,14 +1412,14 @@ TEST_F(SpdySessionSpdy3Test, OutOfOrderSynStreams) { GURL url1("http://www.google.com"); EXPECT_EQ(OK, session->CreateStream(url1, LOWEST, &spdy_stream1, BoundNetLog(), callback1.callback())); - EXPECT_EQ(1u, spdy_stream1->stream_id()); + EXPECT_EQ(0u, spdy_stream1->stream_id()); scoped_refptr<SpdyStream> spdy_stream2; TestCompletionCallback callback2; GURL url2("http://www.google.com"); EXPECT_EQ(OK, session->CreateStream(url2, HIGHEST, &spdy_stream2, BoundNetLog(), callback2.callback())); - EXPECT_EQ(3u, spdy_stream2->stream_id()); + EXPECT_EQ(0u, spdy_stream2->stream_id()); scoped_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock); (*headers)[":method"] = "GET"; @@ -1437,8 +1440,8 @@ TEST_F(SpdySessionSpdy3Test, OutOfOrderSynStreams) { spdy_stream2->SendRequest(false); MessageLoop::current()->RunAllPending(); - EXPECT_EQ(1u, spdy_stream1->stream_id()); - EXPECT_EQ(3u, spdy_stream2->stream_id()); + EXPECT_EQ(3u, spdy_stream1->stream_id()); + EXPECT_EQ(1u, spdy_stream2->stream_id()); spdy_stream1->Cancel(); spdy_stream1 = NULL; |