| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/spdy/spdy_session.h" | 5 #include "net/spdy/spdy_session.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/base64.h" | 10 #include "base/base64.h" |
| (...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 276 SequencedSocketData data(reads, arraysize(reads), nullptr, 0); | 276 SequencedSocketData data(reads, arraysize(reads), nullptr, 0); |
| 277 session_deps_.socket_factory->AddSocketDataProvider(&data); | 277 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 278 | 278 |
| 279 CreateNetworkSession(); | 279 CreateNetworkSession(); |
| 280 CreateInsecureSpdySession(); | 280 CreateInsecureSpdySession(); |
| 281 | 281 |
| 282 // Create the maximum number of concurrent streams. | 282 // Create the maximum number of concurrent streams. |
| 283 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { | 283 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { |
| 284 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 284 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 285 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 285 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 286 ASSERT_TRUE(spdy_stream != nullptr); | 286 ASSERT_TRUE(spdy_stream); |
| 287 } | 287 } |
| 288 | 288 |
| 289 SpdyStreamRequest request1; | 289 SpdyStreamRequest request1; |
| 290 std::unique_ptr<SpdyStreamRequest> request2(new SpdyStreamRequest); | 290 std::unique_ptr<SpdyStreamRequest> request2(new SpdyStreamRequest); |
| 291 | 291 |
| 292 StreamRequestDestroyingCallback callback1; | 292 StreamRequestDestroyingCallback callback1; |
| 293 ASSERT_EQ( | 293 ASSERT_EQ( |
| 294 ERR_IO_PENDING, | 294 ERR_IO_PENDING, |
| 295 request1.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, | 295 request1.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, |
| 296 MEDIUM, BoundNetLog(), callback1.MakeCallback())); | 296 MEDIUM, BoundNetLog(), callback1.MakeCallback())); |
| (...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 908 CreateMockWrite(*write_ping, 0), | 908 CreateMockWrite(*write_ping, 0), |
| 909 }; | 909 }; |
| 910 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 910 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 911 session_deps_.socket_factory->AddSocketDataProvider(&data); | 911 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 912 | 912 |
| 913 CreateNetworkSession(); | 913 CreateNetworkSession(); |
| 914 CreateInsecureSpdySession(); | 914 CreateInsecureSpdySession(); |
| 915 | 915 |
| 916 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 916 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 917 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 917 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 918 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 918 ASSERT_TRUE(spdy_stream1); |
| 919 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); | 919 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); |
| 920 spdy_stream1->SetDelegate(&delegate); | 920 spdy_stream1->SetDelegate(&delegate); |
| 921 | 921 |
| 922 base::TimeTicks before_ping_time = base::TimeTicks::Now(); | 922 base::TimeTicks before_ping_time = base::TimeTicks::Now(); |
| 923 | 923 |
| 924 session_->set_connection_at_risk_of_loss_time( | 924 session_->set_connection_at_risk_of_loss_time( |
| 925 base::TimeDelta::FromSeconds(-1)); | 925 base::TimeDelta::FromSeconds(-1)); |
| 926 session_->set_hung_interval(base::TimeDelta::FromMilliseconds(50)); | 926 session_->set_hung_interval(base::TimeDelta::FromMilliseconds(50)); |
| 927 | 927 |
| 928 session_->SendPrefacePingIfNoneInFlight(); | 928 session_->SendPrefacePingIfNoneInFlight(); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 961 }; | 961 }; |
| 962 StaticSocketDataProvider data( | 962 StaticSocketDataProvider data( |
| 963 reads, arraysize(reads), writes, arraysize(writes)); | 963 reads, arraysize(reads), writes, arraysize(writes)); |
| 964 session_deps_.socket_factory->AddSocketDataProvider(&data); | 964 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 965 | 965 |
| 966 CreateNetworkSession(); | 966 CreateNetworkSession(); |
| 967 CreateInsecureSpdySession(); | 967 CreateInsecureSpdySession(); |
| 968 | 968 |
| 969 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 969 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 970 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 970 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 971 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 971 ASSERT_TRUE(spdy_stream1); |
| 972 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); | 972 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); |
| 973 spdy_stream1->SetDelegate(&delegate); | 973 spdy_stream1->SetDelegate(&delegate); |
| 974 | 974 |
| 975 // Flush the read completion task. | 975 // Flush the read completion task. |
| 976 base::RunLoop().RunUntilIdle(); | 976 base::RunLoop().RunUntilIdle(); |
| 977 | 977 |
| 978 EXPECT_FALSE(HasSpdySession(spdy_session_pool_, key_)); | 978 EXPECT_FALSE(HasSpdySession(spdy_session_pool_, key_)); |
| 979 | 979 |
| 980 EXPECT_FALSE(session_); | 980 EXPECT_FALSE(session_); |
| 981 EXPECT_FALSE(spdy_stream1); | 981 EXPECT_FALSE(spdy_stream1); |
| (...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1412 | 1412 |
| 1413 StaticSocketDataProvider data( | 1413 StaticSocketDataProvider data( |
| 1414 reads, arraysize(reads), writes, arraysize(writes)); | 1414 reads, arraysize(reads), writes, arraysize(writes)); |
| 1415 session_deps_.socket_factory->AddSocketDataProvider(&data); | 1415 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 1416 | 1416 |
| 1417 CreateNetworkSession(); | 1417 CreateNetworkSession(); |
| 1418 CreateInsecureSpdySession(); | 1418 CreateInsecureSpdySession(); |
| 1419 | 1419 |
| 1420 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 1420 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 1421 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 1421 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 1422 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 1422 ASSERT_TRUE(spdy_stream1); |
| 1423 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); | 1423 test::StreamDelegateSendImmediate delegate(spdy_stream1, nullptr); |
| 1424 spdy_stream1->SetDelegate(&delegate); | 1424 spdy_stream1->SetDelegate(&delegate); |
| 1425 | 1425 |
| 1426 session_->set_connection_at_risk_of_loss_time( | 1426 session_->set_connection_at_risk_of_loss_time( |
| 1427 base::TimeDelta::FromSeconds(0)); | 1427 base::TimeDelta::FromSeconds(0)); |
| 1428 session_->set_hung_interval(base::TimeDelta::FromSeconds(0)); | 1428 session_->set_hung_interval(base::TimeDelta::FromSeconds(0)); |
| 1429 | 1429 |
| 1430 // Send a PING frame. | 1430 // Send a PING frame. |
| 1431 session_->WritePingFrame(1, false); | 1431 session_->WritePingFrame(1, false); |
| 1432 EXPECT_LT(0, session_->pings_in_flight()); | 1432 EXPECT_LT(0, session_->pings_in_flight()); |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1484 writes.size()); | 1484 writes.size()); |
| 1485 session_deps_.socket_factory->AddSocketDataProvider(&data); | 1485 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 1486 | 1486 |
| 1487 CreateNetworkSession(); | 1487 CreateNetworkSession(); |
| 1488 CreateInsecureSpdySession(); | 1488 CreateInsecureSpdySession(); |
| 1489 | 1489 |
| 1490 // Create the maximum number of concurrent streams. | 1490 // Create the maximum number of concurrent streams. |
| 1491 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { | 1491 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { |
| 1492 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 1492 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 1493 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 1493 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 1494 ASSERT_TRUE(spdy_stream != nullptr); | 1494 ASSERT_TRUE(spdy_stream); |
| 1495 } | 1495 } |
| 1496 | 1496 |
| 1497 StreamReleaserCallback stream_releaser; | 1497 StreamReleaserCallback stream_releaser; |
| 1498 SpdyStreamRequest request; | 1498 SpdyStreamRequest request; |
| 1499 ASSERT_EQ(ERR_IO_PENDING, | 1499 ASSERT_EQ(ERR_IO_PENDING, |
| 1500 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, | 1500 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, |
| 1501 MEDIUM, BoundNetLog(), | 1501 MEDIUM, BoundNetLog(), |
| 1502 stream_releaser.MakeCallback(&request))); | 1502 stream_releaser.MakeCallback(&request))); |
| 1503 | 1503 |
| 1504 base::RunLoop().RunUntilIdle(); | 1504 base::RunLoop().RunUntilIdle(); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1552 EXPECT_FALSE(spdy_session_pool_->http_server_properties() | 1552 EXPECT_FALSE(spdy_session_pool_->http_server_properties() |
| 1553 ->GetSpdySettings(test_server_) | 1553 ->GetSpdySettings(test_server_) |
| 1554 .empty()); | 1554 .empty()); |
| 1555 | 1555 |
| 1556 CreateInsecureSpdySession(); | 1556 CreateInsecureSpdySession(); |
| 1557 | 1557 |
| 1558 // Create the maximum number of concurrent streams. | 1558 // Create the maximum number of concurrent streams. |
| 1559 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { | 1559 for (size_t i = 0; i < kInitialMaxConcurrentStreams; ++i) { |
| 1560 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 1560 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 1561 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 1561 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 1562 ASSERT_TRUE(spdy_stream != nullptr); | 1562 ASSERT_TRUE(spdy_stream); |
| 1563 } | 1563 } |
| 1564 | 1564 |
| 1565 StreamReleaserCallback stream_releaser; | 1565 StreamReleaserCallback stream_releaser; |
| 1566 | 1566 |
| 1567 SpdyStreamRequest request; | 1567 SpdyStreamRequest request; |
| 1568 ASSERT_EQ(ERR_IO_PENDING, | 1568 ASSERT_EQ(ERR_IO_PENDING, |
| 1569 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, | 1569 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, |
| 1570 MEDIUM, BoundNetLog(), | 1570 MEDIUM, BoundNetLog(), |
| 1571 stream_releaser.MakeCallback(&request))); | 1571 stream_releaser.MakeCallback(&request))); |
| 1572 | 1572 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1609 spdy_session_pool_->http_server_properties()->SetSpdySetting( | 1609 spdy_session_pool_->http_server_properties()->SetSpdySetting( |
| 1610 test_server_, SETTINGS_MAX_CONCURRENT_STREAMS, | 1610 test_server_, SETTINGS_MAX_CONCURRENT_STREAMS, |
| 1611 SETTINGS_FLAG_PLEASE_PERSIST, 1); | 1611 SETTINGS_FLAG_PLEASE_PERSIST, 1); |
| 1612 | 1612 |
| 1613 CreateInsecureSpdySession(); | 1613 CreateInsecureSpdySession(); |
| 1614 | 1614 |
| 1615 // Leave room for only one more stream to be created. | 1615 // Leave room for only one more stream to be created. |
| 1616 for (size_t i = 0; i < kInitialMaxConcurrentStreams - 1; ++i) { | 1616 for (size_t i = 0; i < kInitialMaxConcurrentStreams - 1; ++i) { |
| 1617 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 1617 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 1618 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 1618 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 1619 ASSERT_TRUE(spdy_stream != nullptr); | 1619 ASSERT_TRUE(spdy_stream); |
| 1620 } | 1620 } |
| 1621 | 1621 |
| 1622 // Create 2 more streams. First will succeed. Second will be pending. | 1622 // Create 2 more streams. First will succeed. Second will be pending. |
| 1623 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 1623 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 1624 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 1624 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 1625 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 1625 ASSERT_TRUE(spdy_stream1); |
| 1626 | 1626 |
| 1627 // Use scoped_ptr to let us invalidate the memory when we want to, to trigger | 1627 // Use scoped_ptr to let us invalidate the memory when we want to, to trigger |
| 1628 // a valgrind error if the callback is invoked when it's not supposed to be. | 1628 // a valgrind error if the callback is invoked when it's not supposed to be. |
| 1629 std::unique_ptr<TestCompletionCallback> callback(new TestCompletionCallback); | 1629 std::unique_ptr<TestCompletionCallback> callback(new TestCompletionCallback); |
| 1630 | 1630 |
| 1631 SpdyStreamRequest request; | 1631 SpdyStreamRequest request; |
| 1632 ASSERT_EQ(ERR_IO_PENDING, | 1632 ASSERT_EQ(ERR_IO_PENDING, |
| 1633 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, | 1633 request.StartRequest(SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, |
| 1634 MEDIUM, BoundNetLog(), callback->callback())); | 1634 MEDIUM, BoundNetLog(), callback->callback())); |
| 1635 | 1635 |
| (...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1992 | 1992 |
| 1993 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 1993 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 1994 session_deps_.socket_factory->AddSocketDataProvider(&data); | 1994 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 1995 | 1995 |
| 1996 CreateNetworkSession(); | 1996 CreateNetworkSession(); |
| 1997 CreateInsecureSpdySession(); | 1997 CreateInsecureSpdySession(); |
| 1998 | 1998 |
| 1999 base::WeakPtr<SpdyStream> spdy_stream1 = | 1999 base::WeakPtr<SpdyStream> spdy_stream1 = |
| 2000 CreateStreamSynchronously(SPDY_REQUEST_RESPONSE_STREAM, session_, | 2000 CreateStreamSynchronously(SPDY_REQUEST_RESPONSE_STREAM, session_, |
| 2001 test_url_, HIGHEST, BoundNetLog()); | 2001 test_url_, HIGHEST, BoundNetLog()); |
| 2002 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2002 ASSERT_TRUE(spdy_stream1); |
| 2003 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2003 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2004 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2004 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2005 spdy_stream1->SetDelegate(&delegate1); | 2005 spdy_stream1->SetDelegate(&delegate1); |
| 2006 | 2006 |
| 2007 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( | 2007 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( |
| 2008 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 2008 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 2009 ASSERT_TRUE(spdy_stream2.get() != nullptr); | 2009 ASSERT_TRUE(spdy_stream2); |
| 2010 EXPECT_EQ(0u, spdy_stream2->stream_id()); | 2010 EXPECT_EQ(0u, spdy_stream2->stream_id()); |
| 2011 test::StreamDelegateDoNothing delegate2(spdy_stream2); | 2011 test::StreamDelegateDoNothing delegate2(spdy_stream2); |
| 2012 spdy_stream2->SetDelegate(&delegate2); | 2012 spdy_stream2->SetDelegate(&delegate2); |
| 2013 | 2013 |
| 2014 std::unique_ptr<SpdyHeaderBlock> headers( | 2014 std::unique_ptr<SpdyHeaderBlock> headers( |
| 2015 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2015 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2016 spdy_stream1->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); | 2016 spdy_stream1->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); |
| 2017 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 2017 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 2018 | 2018 |
| 2019 std::unique_ptr<SpdyHeaderBlock> headers2( | 2019 std::unique_ptr<SpdyHeaderBlock> headers2( |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2053 MockRead(ASYNC, 0, 0) // EOF | 2053 MockRead(ASYNC, 0, 0) // EOF |
| 2054 }; | 2054 }; |
| 2055 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2055 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2056 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2056 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2057 | 2057 |
| 2058 CreateNetworkSession(); | 2058 CreateNetworkSession(); |
| 2059 CreateInsecureSpdySession(); | 2059 CreateInsecureSpdySession(); |
| 2060 | 2060 |
| 2061 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2061 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2062 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, HIGHEST, BoundNetLog()); | 2062 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, HIGHEST, BoundNetLog()); |
| 2063 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2063 ASSERT_TRUE(spdy_stream1); |
| 2064 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2064 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2065 | 2065 |
| 2066 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( | 2066 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( |
| 2067 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 2067 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 2068 ASSERT_TRUE(spdy_stream2.get() != nullptr); | 2068 ASSERT_TRUE(spdy_stream2); |
| 2069 EXPECT_EQ(0u, spdy_stream2->stream_id()); | 2069 EXPECT_EQ(0u, spdy_stream2->stream_id()); |
| 2070 | 2070 |
| 2071 test::ClosingDelegate delegate1(spdy_stream1); | 2071 test::ClosingDelegate delegate1(spdy_stream1); |
| 2072 spdy_stream1->SetDelegate(&delegate1); | 2072 spdy_stream1->SetDelegate(&delegate1); |
| 2073 | 2073 |
| 2074 test::ClosingDelegate delegate2(spdy_stream2); | 2074 test::ClosingDelegate delegate2(spdy_stream2); |
| 2075 spdy_stream2->SetDelegate(&delegate2); | 2075 spdy_stream2->SetDelegate(&delegate2); |
| 2076 | 2076 |
| 2077 std::unique_ptr<SpdyHeaderBlock> headers( | 2077 std::unique_ptr<SpdyHeaderBlock> headers( |
| 2078 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2078 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2176 }; | 2176 }; |
| 2177 | 2177 |
| 2178 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2178 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2179 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2179 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2180 | 2180 |
| 2181 CreateNetworkSession(); | 2181 CreateNetworkSession(); |
| 2182 CreateInsecureSpdySession(); | 2182 CreateInsecureSpdySession(); |
| 2183 | 2183 |
| 2184 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2184 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2185 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2185 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2186 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2186 ASSERT_TRUE(spdy_stream1); |
| 2187 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2187 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2188 | 2188 |
| 2189 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( | 2189 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( |
| 2190 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2190 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2191 ASSERT_TRUE(spdy_stream2.get() != nullptr); | 2191 ASSERT_TRUE(spdy_stream2); |
| 2192 EXPECT_EQ(0u, spdy_stream2->stream_id()); | 2192 EXPECT_EQ(0u, spdy_stream2->stream_id()); |
| 2193 | 2193 |
| 2194 test::ClosingDelegate delegate1(spdy_stream1); | 2194 test::ClosingDelegate delegate1(spdy_stream1); |
| 2195 spdy_stream1->SetDelegate(&delegate1); | 2195 spdy_stream1->SetDelegate(&delegate1); |
| 2196 | 2196 |
| 2197 test::ClosingDelegate delegate2(spdy_stream2); | 2197 test::ClosingDelegate delegate2(spdy_stream2); |
| 2198 spdy_stream2->SetDelegate(&delegate2); | 2198 spdy_stream2->SetDelegate(&delegate2); |
| 2199 | 2199 |
| 2200 std::unique_ptr<SpdyHeaderBlock> headers( | 2200 std::unique_ptr<SpdyHeaderBlock> headers( |
| 2201 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2201 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2348 MockRead(ASYNC, 0, 2) // EOF | 2348 MockRead(ASYNC, 0, 2) // EOF |
| 2349 }; | 2349 }; |
| 2350 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2350 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2351 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2351 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2352 | 2352 |
| 2353 CreateNetworkSession(); | 2353 CreateNetworkSession(); |
| 2354 CreateInsecureSpdySession(); | 2354 CreateInsecureSpdySession(); |
| 2355 | 2355 |
| 2356 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 2356 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 2357 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2357 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2358 ASSERT_TRUE(spdy_stream.get() != nullptr); | 2358 ASSERT_TRUE(spdy_stream); |
| 2359 EXPECT_EQ(0u, spdy_stream->stream_id()); | 2359 EXPECT_EQ(0u, spdy_stream->stream_id()); |
| 2360 | 2360 |
| 2361 SessionClosingDelegate delegate(spdy_stream, session_); | 2361 SessionClosingDelegate delegate(spdy_stream, session_); |
| 2362 spdy_stream->SetDelegate(&delegate); | 2362 spdy_stream->SetDelegate(&delegate); |
| 2363 | 2363 |
| 2364 std::unique_ptr<SpdyHeaderBlock> headers( | 2364 std::unique_ptr<SpdyHeaderBlock> headers( |
| 2365 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2365 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2366 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); | 2366 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); |
| 2367 EXPECT_TRUE(spdy_stream->HasUrlFromHeaders()); | 2367 EXPECT_TRUE(spdy_stream->HasUrlFromHeaders()); |
| 2368 | 2368 |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2506 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2506 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2507 | 2507 |
| 2508 CreateNetworkSession(); | 2508 CreateNetworkSession(); |
| 2509 CreateInsecureSpdySession(); | 2509 CreateInsecureSpdySession(); |
| 2510 | 2510 |
| 2511 // Read the settings frame. | 2511 // Read the settings frame. |
| 2512 base::RunLoop().RunUntilIdle(); | 2512 base::RunLoop().RunUntilIdle(); |
| 2513 | 2513 |
| 2514 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2514 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2515 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 2515 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 2516 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2516 ASSERT_TRUE(spdy_stream1); |
| 2517 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2517 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2518 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2518 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2519 spdy_stream1->SetDelegate(&delegate1); | 2519 spdy_stream1->SetDelegate(&delegate1); |
| 2520 | 2520 |
| 2521 TestCompletionCallback callback2; | 2521 TestCompletionCallback callback2; |
| 2522 SpdyStreamRequest request2; | 2522 SpdyStreamRequest request2; |
| 2523 ASSERT_EQ( | 2523 ASSERT_EQ( |
| 2524 ERR_IO_PENDING, | 2524 ERR_IO_PENDING, |
| 2525 request2.StartRequest(SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, | 2525 request2.StartRequest(SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, |
| 2526 LOWEST, BoundNetLog(), callback2.callback())); | 2526 LOWEST, BoundNetLog(), callback2.callback())); |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2615 StaticSocketDataProvider data(reads, arraysize(reads), nullptr, 0); | 2615 StaticSocketDataProvider data(reads, arraysize(reads), nullptr, 0); |
| 2616 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2616 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2617 | 2617 |
| 2618 CreateNetworkSession(); | 2618 CreateNetworkSession(); |
| 2619 CreateInsecureSpdySession(); | 2619 CreateInsecureSpdySession(); |
| 2620 | 2620 |
| 2621 // Leave room for only one more stream to be created. | 2621 // Leave room for only one more stream to be created. |
| 2622 for (size_t i = 0; i < kInitialMaxConcurrentStreams - 1; ++i) { | 2622 for (size_t i = 0; i < kInitialMaxConcurrentStreams - 1; ++i) { |
| 2623 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 2623 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 2624 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2624 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2625 ASSERT_TRUE(spdy_stream != nullptr); | 2625 ASSERT_TRUE(spdy_stream); |
| 2626 } | 2626 } |
| 2627 | 2627 |
| 2628 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2628 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2629 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 2629 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 2630 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2630 ASSERT_TRUE(spdy_stream1); |
| 2631 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2631 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2632 | 2632 |
| 2633 TestCompletionCallback callback2; | 2633 TestCompletionCallback callback2; |
| 2634 SpdyStreamRequest request2; | 2634 SpdyStreamRequest request2; |
| 2635 ASSERT_EQ(ERR_IO_PENDING, request2.StartRequest( | 2635 ASSERT_EQ(ERR_IO_PENDING, request2.StartRequest( |
| 2636 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, | 2636 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, |
| 2637 LOWEST, BoundNetLog(), callback2.callback())); | 2637 LOWEST, BoundNetLog(), callback2.callback())); |
| 2638 | 2638 |
| 2639 TestCompletionCallback callback3; | 2639 TestCompletionCallback callback3; |
| 2640 SpdyStreamRequest request3; | 2640 SpdyStreamRequest request3; |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2723 | 2723 |
| 2724 // Create SpdySession and SpdyStream and send the request. | 2724 // Create SpdySession and SpdyStream and send the request. |
| 2725 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2725 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2726 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2726 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2727 | 2727 |
| 2728 CreateNetworkSession(); | 2728 CreateNetworkSession(); |
| 2729 CreateInsecureSpdySession(); | 2729 CreateInsecureSpdySession(); |
| 2730 | 2730 |
| 2731 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2731 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2732 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2732 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2733 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2733 ASSERT_TRUE(spdy_stream1); |
| 2734 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2734 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2735 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2735 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2736 spdy_stream1->SetDelegate(&delegate1); | 2736 spdy_stream1->SetDelegate(&delegate1); |
| 2737 | 2737 |
| 2738 std::unique_ptr<SpdyHeaderBlock> headers1( | 2738 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 2739 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2739 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2740 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 2740 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 2741 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 2741 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 2742 | 2742 |
| 2743 // Set up the TaskObserver to verify SpdySession::DoReadLoop doesn't | 2743 // Set up the TaskObserver to verify SpdySession::DoReadLoop doesn't |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2787 | 2787 |
| 2788 // Create SpdySession and SpdyStream and send the request. | 2788 // Create SpdySession and SpdyStream and send the request. |
| 2789 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2789 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2790 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2790 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2791 | 2791 |
| 2792 CreateNetworkSession(); | 2792 CreateNetworkSession(); |
| 2793 CreateInsecureSpdySession(); | 2793 CreateInsecureSpdySession(); |
| 2794 | 2794 |
| 2795 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2795 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2796 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2796 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2797 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2797 ASSERT_TRUE(spdy_stream1); |
| 2798 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2798 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2799 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2799 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2800 spdy_stream1->SetDelegate(&delegate1); | 2800 spdy_stream1->SetDelegate(&delegate1); |
| 2801 | 2801 |
| 2802 std::unique_ptr<SpdyHeaderBlock> headers1( | 2802 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 2803 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2803 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2804 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 2804 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 2805 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 2805 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 2806 | 2806 |
| 2807 // Set up the TaskObserver to verify that SpdySession::DoReadLoop posts a | 2807 // Set up the TaskObserver to verify that SpdySession::DoReadLoop posts a |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2858 | 2858 |
| 2859 // Create SpdySession and SpdyStream and send the request. | 2859 // Create SpdySession and SpdyStream and send the request. |
| 2860 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2860 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2861 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2861 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2862 | 2862 |
| 2863 CreateNetworkSession(); | 2863 CreateNetworkSession(); |
| 2864 CreateInsecureSpdySession(); | 2864 CreateInsecureSpdySession(); |
| 2865 | 2865 |
| 2866 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2866 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2867 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2867 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2868 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2868 ASSERT_TRUE(spdy_stream1); |
| 2869 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2869 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2870 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2870 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2871 spdy_stream1->SetDelegate(&delegate1); | 2871 spdy_stream1->SetDelegate(&delegate1); |
| 2872 | 2872 |
| 2873 std::unique_ptr<SpdyHeaderBlock> headers1( | 2873 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 2874 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2874 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2875 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 2875 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 2876 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 2876 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 2877 | 2877 |
| 2878 // Run until 1st read. | 2878 // Run until 1st read. |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2939 | 2939 |
| 2940 // Create SpdySession and SpdyStream and send the request. | 2940 // Create SpdySession and SpdyStream and send the request. |
| 2941 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 2941 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 2942 session_deps_.socket_factory->AddSocketDataProvider(&data); | 2942 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 2943 | 2943 |
| 2944 CreateNetworkSession(); | 2944 CreateNetworkSession(); |
| 2945 CreateInsecureSpdySession(); | 2945 CreateInsecureSpdySession(); |
| 2946 | 2946 |
| 2947 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 2947 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 2948 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 2948 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 2949 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 2949 ASSERT_TRUE(spdy_stream1); |
| 2950 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 2950 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 2951 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 2951 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 2952 spdy_stream1->SetDelegate(&delegate1); | 2952 spdy_stream1->SetDelegate(&delegate1); |
| 2953 | 2953 |
| 2954 std::unique_ptr<SpdyHeaderBlock> headers1( | 2954 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 2955 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 2955 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 2956 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 2956 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 2957 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 2957 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 2958 | 2958 |
| 2959 // Set up the TaskObserver to verify SpdySession::DoReadLoop posts a task. | 2959 // Set up the TaskObserver to verify SpdySession::DoReadLoop posts a task. |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3046 | 3046 |
| 3047 // Create SpdySession and SpdyStream and send the request. | 3047 // Create SpdySession and SpdyStream and send the request. |
| 3048 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 3048 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 3049 session_deps_.socket_factory->AddSocketDataProvider(&data); | 3049 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 3050 | 3050 |
| 3051 CreateNetworkSession(); | 3051 CreateNetworkSession(); |
| 3052 CreateInsecureSpdySession(); | 3052 CreateInsecureSpdySession(); |
| 3053 | 3053 |
| 3054 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 3054 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 3055 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3055 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3056 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 3056 ASSERT_TRUE(spdy_stream1); |
| 3057 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 3057 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 3058 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 3058 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 3059 spdy_stream1->SetDelegate(&delegate1); | 3059 spdy_stream1->SetDelegate(&delegate1); |
| 3060 | 3060 |
| 3061 std::unique_ptr<SpdyHeaderBlock> headers1( | 3061 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 3062 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 3062 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 3063 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 3063 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 3064 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 3064 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 3065 | 3065 |
| 3066 // Set up the TaskObserver to monitor SpdySession::DoReadLoop | 3066 // Set up the TaskObserver to monitor SpdySession::DoReadLoop |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3117 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 3117 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 3118 session_deps_.socket_factory->AddSocketDataProvider(&data); | 3118 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 3119 | 3119 |
| 3120 CreateNetworkSession(); | 3120 CreateNetworkSession(); |
| 3121 CreateInsecureSpdySession(); | 3121 CreateInsecureSpdySession(); |
| 3122 | 3122 |
| 3123 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 3123 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 3124 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3124 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3125 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 3125 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 3126 spdy_stream1->SetDelegate(&delegate1); | 3126 spdy_stream1->SetDelegate(&delegate1); |
| 3127 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 3127 ASSERT_TRUE(spdy_stream1); |
| 3128 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 3128 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 3129 | 3129 |
| 3130 std::unique_ptr<SpdyHeaderBlock> headers1( | 3130 std::unique_ptr<SpdyHeaderBlock> headers1( |
| 3131 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 3131 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 3132 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); | 3132 spdy_stream1->SendRequestHeaders(std::move(headers1), NO_MORE_DATA_TO_SEND); |
| 3133 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); | 3133 EXPECT_TRUE(spdy_stream1->HasUrlFromHeaders()); |
| 3134 | 3134 |
| 3135 // Run until 1st read. | 3135 // Run until 1st read. |
| 3136 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 3136 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 3137 base::RunLoop().RunUntilIdle(); | 3137 base::RunLoop().RunUntilIdle(); |
| (...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3461 MockRead(ASYNC, 0, 4) // EOF | 3461 MockRead(ASYNC, 0, 4) // EOF |
| 3462 }; | 3462 }; |
| 3463 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 3463 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 3464 session_deps_.socket_factory->AddSocketDataProvider(&data); | 3464 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 3465 | 3465 |
| 3466 CreateNetworkSession(); | 3466 CreateNetworkSession(); |
| 3467 CreateInsecureSpdySession(); | 3467 CreateInsecureSpdySession(); |
| 3468 | 3468 |
| 3469 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 3469 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 3470 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3470 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3471 ASSERT_TRUE(spdy_stream.get() != nullptr); | 3471 ASSERT_TRUE(spdy_stream); |
| 3472 EXPECT_EQ(0u, spdy_stream->stream_id()); | 3472 EXPECT_EQ(0u, spdy_stream->stream_id()); |
| 3473 | 3473 |
| 3474 StreamCreatingDelegate delegate(spdy_stream, session_); | 3474 StreamCreatingDelegate delegate(spdy_stream, session_); |
| 3475 spdy_stream->SetDelegate(&delegate); | 3475 spdy_stream->SetDelegate(&delegate); |
| 3476 | 3476 |
| 3477 std::unique_ptr<SpdyHeaderBlock> headers( | 3477 std::unique_ptr<SpdyHeaderBlock> headers( |
| 3478 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 3478 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 3479 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); | 3479 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); |
| 3480 EXPECT_TRUE(spdy_stream->HasUrlFromHeaders()); | 3480 EXPECT_TRUE(spdy_stream->HasUrlFromHeaders()); |
| 3481 | 3481 |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3526 | 3526 |
| 3527 session_deps_.host_resolver->set_synchronous_mode(true); | 3527 session_deps_.host_resolver->set_synchronous_mode(true); |
| 3528 | 3528 |
| 3529 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 3529 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 3530 session_deps_.socket_factory->AddSocketDataProvider(&data); | 3530 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 3531 | 3531 |
| 3532 CreateNetworkSession(); | 3532 CreateNetworkSession(); |
| 3533 CreateInsecureSpdySession(); | 3533 CreateInsecureSpdySession(); |
| 3534 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 3534 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 3535 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3535 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3536 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 3536 ASSERT_TRUE(spdy_stream1); |
| 3537 TestCompletionCallback callback1; | 3537 TestCompletionCallback callback1; |
| 3538 EXPECT_NE(spdy_stream1->send_window_size(), window_size); | 3538 EXPECT_NE(spdy_stream1->send_window_size(), window_size); |
| 3539 | 3539 |
| 3540 // Process the SETTINGS frame. | 3540 // Process the SETTINGS frame. |
| 3541 base::RunLoop().RunUntilIdle(); | 3541 base::RunLoop().RunUntilIdle(); |
| 3542 EXPECT_EQ(session_->stream_initial_send_window_size(), window_size); | 3542 EXPECT_EQ(session_->stream_initial_send_window_size(), window_size); |
| 3543 EXPECT_EQ(spdy_stream1->send_window_size(), window_size); | 3543 EXPECT_EQ(spdy_stream1->send_window_size(), window_size); |
| 3544 | 3544 |
| 3545 // Release the first one, this will allow the second to be created. | 3545 // Release the first one, this will allow the second to be created. |
| 3546 spdy_stream1->Cancel(); | 3546 spdy_stream1->Cancel(); |
| 3547 EXPECT_FALSE(spdy_stream1); | 3547 EXPECT_FALSE(spdy_stream1); |
| 3548 | 3548 |
| 3549 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( | 3549 base::WeakPtr<SpdyStream> spdy_stream2 = CreateStreamSynchronously( |
| 3550 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3550 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3551 ASSERT_TRUE(spdy_stream2.get() != nullptr); | 3551 ASSERT_TRUE(spdy_stream2); |
| 3552 EXPECT_EQ(spdy_stream2->send_window_size(), window_size); | 3552 EXPECT_EQ(spdy_stream2->send_window_size(), window_size); |
| 3553 spdy_stream2->Cancel(); | 3553 spdy_stream2->Cancel(); |
| 3554 EXPECT_FALSE(spdy_stream2); | 3554 EXPECT_FALSE(spdy_stream2); |
| 3555 | 3555 |
| 3556 EXPECT_TRUE(session_); | 3556 EXPECT_TRUE(session_); |
| 3557 data.Resume(); | 3557 data.Resume(); |
| 3558 base::RunLoop().RunUntilIdle(); | 3558 base::RunLoop().RunUntilIdle(); |
| 3559 EXPECT_FALSE(session_); | 3559 EXPECT_FALSE(session_); |
| 3560 } | 3560 } |
| 3561 | 3561 |
| (...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3979 // Create SpdySession and SpdyStream and send the request. | 3979 // Create SpdySession and SpdyStream and send the request. |
| 3980 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 3980 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 3981 session_deps_.host_resolver->set_synchronous_mode(true); | 3981 session_deps_.host_resolver->set_synchronous_mode(true); |
| 3982 session_deps_.socket_factory->AddSocketDataProvider(&data); | 3982 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 3983 | 3983 |
| 3984 CreateNetworkSession(); | 3984 CreateNetworkSession(); |
| 3985 CreateInsecureSpdySession(); | 3985 CreateInsecureSpdySession(); |
| 3986 | 3986 |
| 3987 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( | 3987 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( |
| 3988 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 3988 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 3989 ASSERT_TRUE(stream.get() != nullptr); | 3989 ASSERT_TRUE(stream); |
| 3990 EXPECT_EQ(0u, stream->stream_id()); | 3990 EXPECT_EQ(0u, stream->stream_id()); |
| 3991 | 3991 |
| 3992 DropReceivedDataDelegate delegate(stream, msg_data); | 3992 DropReceivedDataDelegate delegate(stream, msg_data); |
| 3993 stream->SetDelegate(&delegate); | 3993 stream->SetDelegate(&delegate); |
| 3994 | 3994 |
| 3995 std::unique_ptr<SpdyHeaderBlock> headers( | 3995 std::unique_ptr<SpdyHeaderBlock> headers( |
| 3996 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); | 3996 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); |
| 3997 EXPECT_EQ(ERR_IO_PENDING, | 3997 EXPECT_EQ(ERR_IO_PENDING, |
| 3998 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); | 3998 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); |
| 3999 EXPECT_TRUE(stream->HasUrlFromHeaders()); | 3999 EXPECT_TRUE(stream->HasUrlFromHeaders()); |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4045 // Create SpdySession and SpdyStream and send the request. | 4045 // Create SpdySession and SpdyStream and send the request. |
| 4046 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4046 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4047 session_deps_.host_resolver->set_synchronous_mode(true); | 4047 session_deps_.host_resolver->set_synchronous_mode(true); |
| 4048 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4048 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4049 | 4049 |
| 4050 CreateNetworkSession(); | 4050 CreateNetworkSession(); |
| 4051 CreateInsecureSpdySession(); | 4051 CreateInsecureSpdySession(); |
| 4052 | 4052 |
| 4053 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( | 4053 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( |
| 4054 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 4054 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 4055 ASSERT_TRUE(stream.get() != nullptr); | 4055 ASSERT_TRUE(stream); |
| 4056 EXPECT_EQ(0u, stream->stream_id()); | 4056 EXPECT_EQ(0u, stream->stream_id()); |
| 4057 | 4057 |
| 4058 test::StreamDelegateSendImmediate delegate(stream, msg_data); | 4058 test::StreamDelegateSendImmediate delegate(stream, msg_data); |
| 4059 stream->SetDelegate(&delegate); | 4059 stream->SetDelegate(&delegate); |
| 4060 | 4060 |
| 4061 std::unique_ptr<SpdyHeaderBlock> headers( | 4061 std::unique_ptr<SpdyHeaderBlock> headers( |
| 4062 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); | 4062 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); |
| 4063 EXPECT_EQ(ERR_IO_PENDING, | 4063 EXPECT_EQ(ERR_IO_PENDING, |
| 4064 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); | 4064 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); |
| 4065 EXPECT_TRUE(stream->HasUrlFromHeaders()); | 4065 EXPECT_TRUE(stream->HasUrlFromHeaders()); |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4130 // Create SpdySession and SpdyStream and send the request. | 4130 // Create SpdySession and SpdyStream and send the request. |
| 4131 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4131 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4132 session_deps_.host_resolver->set_synchronous_mode(true); | 4132 session_deps_.host_resolver->set_synchronous_mode(true); |
| 4133 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4133 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4134 | 4134 |
| 4135 CreateNetworkSession(); | 4135 CreateNetworkSession(); |
| 4136 CreateInsecureSpdySession(); | 4136 CreateInsecureSpdySession(); |
| 4137 | 4137 |
| 4138 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( | 4138 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( |
| 4139 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 4139 SPDY_BIDIRECTIONAL_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 4140 ASSERT_TRUE(stream.get() != nullptr); | 4140 ASSERT_TRUE(stream); |
| 4141 EXPECT_EQ(0u, stream->stream_id()); | 4141 EXPECT_EQ(0u, stream->stream_id()); |
| 4142 | 4142 |
| 4143 test::StreamDelegateSendImmediate delegate(stream, msg_data); | 4143 test::StreamDelegateSendImmediate delegate(stream, msg_data); |
| 4144 stream->SetDelegate(&delegate); | 4144 stream->SetDelegate(&delegate); |
| 4145 | 4145 |
| 4146 std::unique_ptr<SpdyHeaderBlock> headers( | 4146 std::unique_ptr<SpdyHeaderBlock> headers( |
| 4147 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); | 4147 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kMsgDataSize)); |
| 4148 EXPECT_EQ(ERR_IO_PENDING, | 4148 EXPECT_EQ(ERR_IO_PENDING, |
| 4149 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); | 4149 stream->SendRequestHeaders(std::move(headers), MORE_DATA_TO_SEND)); |
| 4150 EXPECT_TRUE(stream->HasUrlFromHeaders()); | 4150 EXPECT_TRUE(stream->HasUrlFromHeaders()); |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4229 }; | 4229 }; |
| 4230 | 4230 |
| 4231 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4231 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4232 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4232 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4233 | 4233 |
| 4234 CreateNetworkSession(); | 4234 CreateNetworkSession(); |
| 4235 CreateInsecureSpdySession(); | 4235 CreateInsecureSpdySession(); |
| 4236 | 4236 |
| 4237 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( | 4237 base::WeakPtr<SpdyStream> stream = CreateStreamSynchronously( |
| 4238 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4238 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4239 ASSERT_TRUE(stream.get() != nullptr); | 4239 ASSERT_TRUE(stream); |
| 4240 | 4240 |
| 4241 test::StreamDelegateWithBody delegate(stream, kBodyDataStringPiece); | 4241 test::StreamDelegateWithBody delegate(stream, kBodyDataStringPiece); |
| 4242 stream->SetDelegate(&delegate); | 4242 stream->SetDelegate(&delegate); |
| 4243 | 4243 |
| 4244 EXPECT_FALSE(stream->HasUrlFromHeaders()); | 4244 EXPECT_FALSE(stream->HasUrlFromHeaders()); |
| 4245 EXPECT_FALSE(stream->send_stalled_by_flow_control()); | 4245 EXPECT_FALSE(stream->send_stalled_by_flow_control()); |
| 4246 | 4246 |
| 4247 std::unique_ptr<SpdyHeaderBlock> headers( | 4247 std::unique_ptr<SpdyHeaderBlock> headers( |
| 4248 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kBodyDataSize)); | 4248 spdy_util_.ConstructPostHeaderBlock(kDefaultURL, kBodyDataSize)); |
| 4249 EXPECT_EQ(ERR_IO_PENDING, | 4249 EXPECT_EQ(ERR_IO_PENDING, |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4355 }; | 4355 }; |
| 4356 | 4356 |
| 4357 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4357 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4358 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4358 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4359 | 4359 |
| 4360 CreateNetworkSession(); | 4360 CreateNetworkSession(); |
| 4361 CreateInsecureSpdySession(); | 4361 CreateInsecureSpdySession(); |
| 4362 | 4362 |
| 4363 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( | 4363 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( |
| 4364 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4364 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4365 ASSERT_TRUE(stream1.get() != nullptr); | 4365 ASSERT_TRUE(stream1); |
| 4366 | 4366 |
| 4367 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); | 4367 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); |
| 4368 stream1->SetDelegate(&delegate1); | 4368 stream1->SetDelegate(&delegate1); |
| 4369 | 4369 |
| 4370 EXPECT_FALSE(stream1->HasUrlFromHeaders()); | 4370 EXPECT_FALSE(stream1->HasUrlFromHeaders()); |
| 4371 | 4371 |
| 4372 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( | 4372 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( |
| 4373 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); | 4373 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, MEDIUM, BoundNetLog()); |
| 4374 ASSERT_TRUE(stream2.get() != nullptr); | 4374 ASSERT_TRUE(stream2); |
| 4375 | 4375 |
| 4376 test::StreamDelegateWithBody delegate2(stream2, kBodyDataStringPiece); | 4376 test::StreamDelegateWithBody delegate2(stream2, kBodyDataStringPiece); |
| 4377 stream2->SetDelegate(&delegate2); | 4377 stream2->SetDelegate(&delegate2); |
| 4378 | 4378 |
| 4379 EXPECT_FALSE(stream2->HasUrlFromHeaders()); | 4379 EXPECT_FALSE(stream2->HasUrlFromHeaders()); |
| 4380 | 4380 |
| 4381 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); | 4381 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); |
| 4382 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); | 4382 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); |
| 4383 | 4383 |
| 4384 StallSessionSend(); | 4384 StallSessionSend(); |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4494 }; | 4494 }; |
| 4495 | 4495 |
| 4496 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4496 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4497 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4497 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4498 | 4498 |
| 4499 CreateNetworkSession(); | 4499 CreateNetworkSession(); |
| 4500 CreateInsecureSpdySession(); | 4500 CreateInsecureSpdySession(); |
| 4501 | 4501 |
| 4502 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( | 4502 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( |
| 4503 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4503 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4504 ASSERT_TRUE(stream1.get() != nullptr); | 4504 ASSERT_TRUE(stream1); |
| 4505 | 4505 |
| 4506 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); | 4506 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); |
| 4507 stream1->SetDelegate(&delegate1); | 4507 stream1->SetDelegate(&delegate1); |
| 4508 | 4508 |
| 4509 EXPECT_FALSE(stream1->HasUrlFromHeaders()); | 4509 EXPECT_FALSE(stream1->HasUrlFromHeaders()); |
| 4510 | 4510 |
| 4511 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( | 4511 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( |
| 4512 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4512 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4513 ASSERT_TRUE(stream2.get() != nullptr); | 4513 ASSERT_TRUE(stream2); |
| 4514 | 4514 |
| 4515 StreamClosingDelegate delegate2(stream2, kBodyDataStringPiece); | 4515 StreamClosingDelegate delegate2(stream2, kBodyDataStringPiece); |
| 4516 stream2->SetDelegate(&delegate2); | 4516 stream2->SetDelegate(&delegate2); |
| 4517 | 4517 |
| 4518 EXPECT_FALSE(stream2->HasUrlFromHeaders()); | 4518 EXPECT_FALSE(stream2->HasUrlFromHeaders()); |
| 4519 | 4519 |
| 4520 base::WeakPtr<SpdyStream> stream3 = CreateStreamSynchronously( | 4520 base::WeakPtr<SpdyStream> stream3 = CreateStreamSynchronously( |
| 4521 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4521 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4522 ASSERT_TRUE(stream3.get() != nullptr); | 4522 ASSERT_TRUE(stream3); |
| 4523 | 4523 |
| 4524 test::StreamDelegateWithBody delegate3(stream3, kBodyDataStringPiece); | 4524 test::StreamDelegateWithBody delegate3(stream3, kBodyDataStringPiece); |
| 4525 stream3->SetDelegate(&delegate3); | 4525 stream3->SetDelegate(&delegate3); |
| 4526 | 4526 |
| 4527 EXPECT_FALSE(stream3->HasUrlFromHeaders()); | 4527 EXPECT_FALSE(stream3->HasUrlFromHeaders()); |
| 4528 | 4528 |
| 4529 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); | 4529 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); |
| 4530 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); | 4530 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); |
| 4531 EXPECT_FALSE(stream3->send_stalled_by_flow_control()); | 4531 EXPECT_FALSE(stream3->send_stalled_by_flow_control()); |
| 4532 | 4532 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4633 }; | 4633 }; |
| 4634 | 4634 |
| 4635 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4635 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4636 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4636 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4637 | 4637 |
| 4638 CreateNetworkSession(); | 4638 CreateNetworkSession(); |
| 4639 CreateInsecureSpdySession(); | 4639 CreateInsecureSpdySession(); |
| 4640 | 4640 |
| 4641 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( | 4641 base::WeakPtr<SpdyStream> stream1 = CreateStreamSynchronously( |
| 4642 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4642 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4643 ASSERT_TRUE(stream1.get() != nullptr); | 4643 ASSERT_TRUE(stream1); |
| 4644 | 4644 |
| 4645 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); | 4645 test::StreamDelegateWithBody delegate1(stream1, kBodyDataStringPiece); |
| 4646 stream1->SetDelegate(&delegate1); | 4646 stream1->SetDelegate(&delegate1); |
| 4647 | 4647 |
| 4648 EXPECT_FALSE(stream1->HasUrlFromHeaders()); | 4648 EXPECT_FALSE(stream1->HasUrlFromHeaders()); |
| 4649 | 4649 |
| 4650 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( | 4650 base::WeakPtr<SpdyStream> stream2 = CreateStreamSynchronously( |
| 4651 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4651 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4652 ASSERT_TRUE(stream2.get() != nullptr); | 4652 ASSERT_TRUE(stream2); |
| 4653 | 4653 |
| 4654 test::StreamDelegateWithBody delegate2(stream2, kBodyDataStringPiece); | 4654 test::StreamDelegateWithBody delegate2(stream2, kBodyDataStringPiece); |
| 4655 stream2->SetDelegate(&delegate2); | 4655 stream2->SetDelegate(&delegate2); |
| 4656 | 4656 |
| 4657 EXPECT_FALSE(stream2->HasUrlFromHeaders()); | 4657 EXPECT_FALSE(stream2->HasUrlFromHeaders()); |
| 4658 | 4658 |
| 4659 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); | 4659 EXPECT_FALSE(stream1->send_stalled_by_flow_control()); |
| 4660 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); | 4660 EXPECT_FALSE(stream2->send_stalled_by_flow_control()); |
| 4661 | 4661 |
| 4662 StallSessionSend(); | 4662 StallSessionSend(); |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4731 }; | 4731 }; |
| 4732 | 4732 |
| 4733 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4733 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4734 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4734 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4735 | 4735 |
| 4736 CreateNetworkSession(); | 4736 CreateNetworkSession(); |
| 4737 CreateInsecureSpdySession(); | 4737 CreateInsecureSpdySession(); |
| 4738 | 4738 |
| 4739 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 4739 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 4740 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4740 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4741 ASSERT_TRUE(spdy_stream.get() != nullptr); | 4741 ASSERT_TRUE(spdy_stream); |
| 4742 test::StreamDelegateDoNothing delegate(spdy_stream); | 4742 test::StreamDelegateDoNothing delegate(spdy_stream); |
| 4743 spdy_stream->SetDelegate(&delegate); | 4743 spdy_stream->SetDelegate(&delegate); |
| 4744 | 4744 |
| 4745 std::unique_ptr<SpdyHeaderBlock> headers( | 4745 std::unique_ptr<SpdyHeaderBlock> headers( |
| 4746 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); | 4746 spdy_util_.ConstructGetHeaderBlock(kDefaultURL)); |
| 4747 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); | 4747 spdy_stream->SendRequestHeaders(std::move(headers), NO_MORE_DATA_TO_SEND); |
| 4748 | 4748 |
| 4749 // Write request. | 4749 // Write request. |
| 4750 base::RunLoop().RunUntilIdle(); | 4750 base::RunLoop().RunUntilIdle(); |
| 4751 | 4751 |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4813 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4813 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4814 | 4814 |
| 4815 CreateNetworkSession(); | 4815 CreateNetworkSession(); |
| 4816 CreateInsecureSpdySession(); | 4816 CreateInsecureSpdySession(); |
| 4817 | 4817 |
| 4818 // Read the settings frame. | 4818 // Read the settings frame. |
| 4819 base::RunLoop().RunUntilIdle(); | 4819 base::RunLoop().RunUntilIdle(); |
| 4820 | 4820 |
| 4821 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 4821 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 4822 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4822 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4823 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 4823 ASSERT_TRUE(spdy_stream1); |
| 4824 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 4824 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 4825 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 4825 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 4826 spdy_stream1->SetDelegate(&delegate1); | 4826 spdy_stream1->SetDelegate(&delegate1); |
| 4827 | 4827 |
| 4828 EXPECT_EQ(0u, session_->num_active_streams()); | 4828 EXPECT_EQ(0u, session_->num_active_streams()); |
| 4829 EXPECT_EQ(1u, session_->num_created_streams()); | 4829 EXPECT_EQ(1u, session_->num_created_streams()); |
| 4830 EXPECT_EQ(0u, session_->num_pushed_streams()); | 4830 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 4831 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 4831 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 4832 | 4832 |
| 4833 std::unique_ptr<SpdyHeaderBlock> headers( | 4833 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4893 | 4893 |
| 4894 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 4894 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 4895 session_deps_.socket_factory->AddSocketDataProvider(&data); | 4895 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 4896 | 4896 |
| 4897 CreateNetworkSession(); | 4897 CreateNetworkSession(); |
| 4898 CreateInsecureSpdySession(); | 4898 CreateInsecureSpdySession(); |
| 4899 session_->set_max_concurrent_pushed_streams(1); | 4899 session_->set_max_concurrent_pushed_streams(1); |
| 4900 | 4900 |
| 4901 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 4901 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 4902 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4902 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4903 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 4903 ASSERT_TRUE(spdy_stream1); |
| 4904 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 4904 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 4905 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 4905 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 4906 spdy_stream1->SetDelegate(&delegate1); | 4906 spdy_stream1->SetDelegate(&delegate1); |
| 4907 | 4907 |
| 4908 EXPECT_EQ(0u, session_->num_active_streams()); | 4908 EXPECT_EQ(0u, session_->num_active_streams()); |
| 4909 EXPECT_EQ(1u, session_->num_created_streams()); | 4909 EXPECT_EQ(1u, session_->num_created_streams()); |
| 4910 EXPECT_EQ(0u, session_->num_pushed_streams()); | 4910 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 4911 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 4911 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 4912 | 4912 |
| 4913 std::unique_ptr<SpdyHeaderBlock> headers( | 4913 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4987 proxy_delegate->set_trusted_spdy_proxy( | 4987 proxy_delegate->set_trusted_spdy_proxy( |
| 4988 net::ProxyServer(net::ProxyServer::SCHEME_HTTPS, | 4988 net::ProxyServer(net::ProxyServer::SCHEME_HTTPS, |
| 4989 HostPortPair(GURL(kDefaultURL).host(), 80))); | 4989 HostPortPair(GURL(kDefaultURL).host(), 80))); |
| 4990 session_deps_.proxy_delegate.reset(proxy_delegate.release()); | 4990 session_deps_.proxy_delegate.reset(proxy_delegate.release()); |
| 4991 | 4991 |
| 4992 CreateNetworkSession(); | 4992 CreateNetworkSession(); |
| 4993 CreateInsecureSpdySession(); | 4993 CreateInsecureSpdySession(); |
| 4994 | 4994 |
| 4995 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 4995 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 4996 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 4996 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 4997 ASSERT_TRUE(spdy_stream.get() != nullptr); | 4997 ASSERT_TRUE(spdy_stream); |
| 4998 EXPECT_EQ(0u, spdy_stream->stream_id()); | 4998 EXPECT_EQ(0u, spdy_stream->stream_id()); |
| 4999 test::StreamDelegateDoNothing delegate(spdy_stream); | 4999 test::StreamDelegateDoNothing delegate(spdy_stream); |
| 5000 spdy_stream->SetDelegate(&delegate); | 5000 spdy_stream->SetDelegate(&delegate); |
| 5001 | 5001 |
| 5002 EXPECT_EQ(0u, session_->num_active_streams()); | 5002 EXPECT_EQ(0u, session_->num_active_streams()); |
| 5003 EXPECT_EQ(1u, session_->num_created_streams()); | 5003 EXPECT_EQ(1u, session_->num_created_streams()); |
| 5004 EXPECT_EQ(0u, session_->num_pushed_streams()); | 5004 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 5005 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 5005 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 5006 | 5006 |
| 5007 std::unique_ptr<SpdyHeaderBlock> headers( | 5007 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5066 }; | 5066 }; |
| 5067 | 5067 |
| 5068 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 5068 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 5069 session_deps_.socket_factory->AddSocketDataProvider(&data); | 5069 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 5070 | 5070 |
| 5071 CreateNetworkSession(); | 5071 CreateNetworkSession(); |
| 5072 CreateInsecureSpdySession(); | 5072 CreateInsecureSpdySession(); |
| 5073 | 5073 |
| 5074 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( | 5074 base::WeakPtr<SpdyStream> spdy_stream = CreateStreamSynchronously( |
| 5075 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 5075 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 5076 ASSERT_TRUE(spdy_stream.get() != nullptr); | 5076 ASSERT_TRUE(spdy_stream); |
| 5077 EXPECT_EQ(0u, spdy_stream->stream_id()); | 5077 EXPECT_EQ(0u, spdy_stream->stream_id()); |
| 5078 test::StreamDelegateDoNothing delegate(spdy_stream); | 5078 test::StreamDelegateDoNothing delegate(spdy_stream); |
| 5079 spdy_stream->SetDelegate(&delegate); | 5079 spdy_stream->SetDelegate(&delegate); |
| 5080 | 5080 |
| 5081 EXPECT_EQ(0u, session_->num_active_streams()); | 5081 EXPECT_EQ(0u, session_->num_active_streams()); |
| 5082 EXPECT_EQ(1u, session_->num_created_streams()); | 5082 EXPECT_EQ(1u, session_->num_created_streams()); |
| 5083 EXPECT_EQ(0u, session_->num_pushed_streams()); | 5083 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 5084 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 5084 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 5085 | 5085 |
| 5086 std::unique_ptr<SpdyHeaderBlock> headers( | 5086 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5138 | 5138 |
| 5139 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 5139 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 5140 session_deps_.socket_factory->AddSocketDataProvider(&data); | 5140 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 5141 | 5141 |
| 5142 CreateNetworkSession(); | 5142 CreateNetworkSession(); |
| 5143 CreateInsecureSpdySession(); | 5143 CreateInsecureSpdySession(); |
| 5144 session_->set_max_concurrent_pushed_streams(1); | 5144 session_->set_max_concurrent_pushed_streams(1); |
| 5145 | 5145 |
| 5146 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 5146 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 5147 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 5147 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 5148 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 5148 ASSERT_TRUE(spdy_stream1); |
| 5149 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 5149 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 5150 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 5150 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 5151 spdy_stream1->SetDelegate(&delegate1); | 5151 spdy_stream1->SetDelegate(&delegate1); |
| 5152 | 5152 |
| 5153 EXPECT_EQ(0u, session_->num_active_streams()); | 5153 EXPECT_EQ(0u, session_->num_active_streams()); |
| 5154 EXPECT_EQ(1u, session_->num_created_streams()); | 5154 EXPECT_EQ(1u, session_->num_created_streams()); |
| 5155 EXPECT_EQ(0u, session_->num_pushed_streams()); | 5155 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 5156 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 5156 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 5157 | 5157 |
| 5158 std::unique_ptr<SpdyHeaderBlock> headers( | 5158 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5230 }; | 5230 }; |
| 5231 | 5231 |
| 5232 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); | 5232 SequencedSocketData data(reads, arraysize(reads), writes, arraysize(writes)); |
| 5233 session_deps_.socket_factory->AddSocketDataProvider(&data); | 5233 session_deps_.socket_factory->AddSocketDataProvider(&data); |
| 5234 | 5234 |
| 5235 CreateNetworkSession(); | 5235 CreateNetworkSession(); |
| 5236 CreateInsecureSpdySession(); | 5236 CreateInsecureSpdySession(); |
| 5237 | 5237 |
| 5238 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( | 5238 base::WeakPtr<SpdyStream> spdy_stream1 = CreateStreamSynchronously( |
| 5239 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); | 5239 SPDY_REQUEST_RESPONSE_STREAM, session_, test_url_, LOWEST, BoundNetLog()); |
| 5240 ASSERT_TRUE(spdy_stream1.get() != nullptr); | 5240 ASSERT_TRUE(spdy_stream1); |
| 5241 EXPECT_EQ(0u, spdy_stream1->stream_id()); | 5241 EXPECT_EQ(0u, spdy_stream1->stream_id()); |
| 5242 test::StreamDelegateDoNothing delegate1(spdy_stream1); | 5242 test::StreamDelegateDoNothing delegate1(spdy_stream1); |
| 5243 spdy_stream1->SetDelegate(&delegate1); | 5243 spdy_stream1->SetDelegate(&delegate1); |
| 5244 | 5244 |
| 5245 EXPECT_EQ(0u, session_->num_active_streams()); | 5245 EXPECT_EQ(0u, session_->num_active_streams()); |
| 5246 EXPECT_EQ(1u, session_->num_created_streams()); | 5246 EXPECT_EQ(1u, session_->num_created_streams()); |
| 5247 EXPECT_EQ(0u, session_->num_pushed_streams()); | 5247 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| 5248 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 5248 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 5249 | 5249 |
| 5250 std::unique_ptr<SpdyHeaderBlock> headers( | 5250 std::unique_ptr<SpdyHeaderBlock> headers( |
| (...skipping 15 matching lines...) Expand all Loading... |
| 5266 base::RunLoop().RunUntilIdle(); | 5266 base::RunLoop().RunUntilIdle(); |
| 5267 EXPECT_EQ(2u, session_->num_active_streams()); | 5267 EXPECT_EQ(2u, session_->num_active_streams()); |
| 5268 EXPECT_EQ(0u, session_->num_created_streams()); | 5268 EXPECT_EQ(0u, session_->num_created_streams()); |
| 5269 EXPECT_EQ(1u, session_->num_pushed_streams()); | 5269 EXPECT_EQ(1u, session_->num_pushed_streams()); |
| 5270 EXPECT_EQ(0u, session_->num_active_pushed_streams()); | 5270 EXPECT_EQ(0u, session_->num_active_pushed_streams()); |
| 5271 | 5271 |
| 5272 base::WeakPtr<SpdyStream> pushed_stream; | 5272 base::WeakPtr<SpdyStream> pushed_stream; |
| 5273 int rv = | 5273 int rv = |
| 5274 session_->GetPushStream(GURL(kPushedUrl), &pushed_stream, BoundNetLog()); | 5274 session_->GetPushStream(GURL(kPushedUrl), &pushed_stream, BoundNetLog()); |
| 5275 ASSERT_EQ(OK, rv); | 5275 ASSERT_EQ(OK, rv); |
| 5276 ASSERT_TRUE(pushed_stream.get() != nullptr); | 5276 ASSERT_TRUE(pushed_stream); |
| 5277 test::StreamDelegateCloseOnHeaders delegate2(pushed_stream); | 5277 test::StreamDelegateCloseOnHeaders delegate2(pushed_stream); |
| 5278 pushed_stream->SetDelegate(&delegate2); | 5278 pushed_stream->SetDelegate(&delegate2); |
| 5279 | 5279 |
| 5280 // Receive headers for pushed stream. Delegate will cancel the stream, ensure | 5280 // Receive headers for pushed stream. Delegate will cancel the stream, ensure |
| 5281 // that all our counters are in consistent state. | 5281 // that all our counters are in consistent state. |
| 5282 data.Resume(); | 5282 data.Resume(); |
| 5283 base::RunLoop().RunUntilIdle(); | 5283 base::RunLoop().RunUntilIdle(); |
| 5284 EXPECT_EQ(1u, session_->num_active_streams()); | 5284 EXPECT_EQ(1u, session_->num_active_streams()); |
| 5285 EXPECT_EQ(0u, session_->num_created_streams()); | 5285 EXPECT_EQ(0u, session_->num_created_streams()); |
| 5286 EXPECT_EQ(0u, session_->num_pushed_streams()); | 5286 EXPECT_EQ(0u, session_->num_pushed_streams()); |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5470 ssl_info.cert = ImportCertFromFile(GetTestCertsDirectory(), | 5470 ssl_info.cert = ImportCertFromFile(GetTestCertsDirectory(), |
| 5471 "spdy_pooling.pem"); | 5471 "spdy_pooling.pem"); |
| 5472 ssl_info.is_issued_by_known_root = true; | 5472 ssl_info.is_issued_by_known_root = true; |
| 5473 ssl_info.public_key_hashes.push_back(test::GetTestHashValue(primary_pin)); | 5473 ssl_info.public_key_hashes.push_back(test::GetTestHashValue(primary_pin)); |
| 5474 | 5474 |
| 5475 EXPECT_TRUE(SpdySession::CanPool( | 5475 EXPECT_TRUE(SpdySession::CanPool( |
| 5476 &tss, ssl_info, "www.example.org", "mail.example.org")); | 5476 &tss, ssl_info, "www.example.org", "mail.example.org")); |
| 5477 } | 5477 } |
| 5478 | 5478 |
| 5479 } // namespace net | 5479 } // namespace net |
| OLD | NEW |