Index: net/quic/quic_network_transaction_unittest.cc |
diff --git a/net/quic/quic_network_transaction_unittest.cc b/net/quic/quic_network_transaction_unittest.cc |
index 3c85ca4b44002f45a8a71212defb8c278ddbb283..de97a525d135cb282e8e7e2b3e1c03ac8e511b6b 100644 |
--- a/net/quic/quic_network_transaction_unittest.cc |
+++ b/net/quic/quic_network_transaction_unittest.cc |
@@ -9,6 +9,7 @@ |
#include "base/memory/scoped_ptr.h" |
#include "base/stl_util.h" |
#include "net/base/capturing_net_log.h" |
+#include "net/base/load_flags.h" |
#include "net/base/net_log_unittest.h" |
#include "net/base/test_completion_callback.h" |
#include "net/cert/mock_cert_verifier.h" |
@@ -583,6 +584,33 @@ TEST_P(QuicNetworkTransactionTest, DontUseAlternateProtocolProbabilityForQuic) { |
} |
TEST_P(QuicNetworkTransactionTest, |
+ DontUseAlternateProtocolForQuicWithDisableAlternateProtocols) { |
+ MockRead http_reads[] = { |
+ MockRead("HTTP/1.1 200 OK\r\n"), |
+ MockRead(kQuicAlternateProtocol50pctHttpHeader), |
+ MockRead("hello world"), |
+ MockRead(SYNCHRONOUS, ERR_TEST_PEER_CLOSE_AFTER_NEXT_MOCK_READ), |
+ MockRead(ASYNC, OK) |
+ }; |
+ |
+ StaticSocketDataProvider http_data(http_reads, arraysize(http_reads), |
+ nullptr, 0); |
+ socket_factory_.AddSocketDataProvider(&http_data); |
+ socket_factory_.AddSocketDataProvider(&http_data); |
+ |
+ request_.load_flags = LOAD_DISABLE_ALTERNATE_PROTOCOLS; |
+ |
+ // Even though the alternate protocol probability works out in favor of using |
+ // QUIC here, the LOAD_DISABLE_ALTERNATE_PROTOCOLS load flag should prevent |
+ // QUIC from being used. |
+ params_.alternate_protocol_probability_threshold = .25; |
+ CreateSessionWithNextProtos(); |
+ |
+ SendRequestAndExpectHttpResponse("hello world"); |
+ SendRequestAndExpectHttpResponse("hello world"); |
Ryan Hamilton
2015/02/13 19:44:28
Please add a comment about why this line is duplic
|
+} |
+ |
+TEST_P(QuicNetworkTransactionTest, |
DontUseAlternateProtocolWithBadProbabilityForQuic) { |
MockRead http_reads[] = { |
MockRead("HTTP/1.1 200 OK\r\n"), |