| Index: net/quic/chromium/quic_stream_factory_test.cc | 
| diff --git a/net/quic/chromium/quic_stream_factory_test.cc b/net/quic/chromium/quic_stream_factory_test.cc | 
| index d97c7ce302b74965b162bccc097d47178fc17f91..11a10c544b343fd3cc9145d6f835236f5328b664 100644 | 
| --- a/net/quic/chromium/quic_stream_factory_test.cc | 
| +++ b/net/quic/chromium/quic_stream_factory_test.cc | 
| @@ -204,6 +204,7 @@ class QuicStreamFactoryTestBase { | 
| force_hol_blocking_(false), | 
| race_cert_verification_(false), | 
| estimate_initial_rtt_(false) { | 
| +    supported_versions_.push_back(version_); | 
| clock_.AdvanceTime(QuicTime::Delta::FromSeconds(1)); | 
| } | 
|  | 
| @@ -216,7 +217,7 @@ class QuicStreamFactoryTestBase { | 
| &transport_security_state_, cert_transparency_verifier_.get(), | 
| /*SocketPerformanceWatcherFactory*/ nullptr, | 
| &crypto_client_stream_factory_, &random_generator_, &clock_, | 
| -        kDefaultMaxPacketSize, string(), SupportedVersions(version_), | 
| +        kDefaultMaxPacketSize, string(), supported_versions_, | 
| store_server_configs_in_properties_, close_sessions_on_ip_change_, | 
| /*mark_quic_broken_when_network_blackholes*/ false, | 
| idle_connection_timeout_seconds_, reduced_ping_timeout_seconds_, | 
| @@ -285,7 +286,7 @@ class QuicStreamFactoryTestBase { | 
| QuicStreamRequest request(factory_.get()); | 
| GURL url("https://" + destination.host() + "/"); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -              request.Request(destination, privacy_mode_, | 
| +              request.Request(destination, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -430,7 +431,7 @@ class QuicStreamFactoryTestBase { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -              request.Request(host_port_pair_, privacy_mode_, | 
| +              request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -610,9 +611,9 @@ class QuicStreamFactoryTestBase { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -              request.Request(quic_server_id.host_port_pair(), privacy_mode_, | 
| -                              /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| -                              callback_.callback())); | 
| +              request.Request(quic_server_id.host_port_pair(), version_, | 
| +                              privacy_mode_, /*cert_verify_flags=*/0, url_, | 
| +                              "GET", net_log_, callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
|  | 
| EXPECT_FALSE(QuicStreamFactoryPeer::CryptoConfigCacheIsEmpty( | 
| @@ -643,10 +644,10 @@ class QuicStreamFactoryTestBase { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -              request2.Request(quic_server_id2.host_port_pair(), privacy_mode_, | 
| -                               /*cert_verify_flags=*/0, | 
| -                               GURL("https://mail.example.org/"), "GET", | 
| -                               net_log_, callback_.callback())); | 
| +              request2.Request( | 
| +                  quic_server_id2.host_port_pair(), version_, privacy_mode_, | 
| +                  /*cert_verify_flags=*/0, GURL("https://mail.example.org/"), | 
| +                  "GET", net_log_, callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
|  | 
| EXPECT_FALSE(QuicStreamFactoryPeer::CryptoConfigCacheIsEmpty( | 
| @@ -703,6 +704,7 @@ class QuicStreamFactoryTestBase { | 
| MockClock clock_; | 
| scoped_refptr<TestTaskRunner> runner_; | 
| QuicVersion version_; | 
| +  QuicVersionVector supported_versions_; | 
| QuicTestPacketMaker client_maker_; | 
| QuicTestPacketMaker server_maker_; | 
| HttpServerPropertiesImpl http_server_properties_; | 
| @@ -760,7 +762,7 @@ TEST_P(QuicStreamFactoryTest, Create) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -769,7 +771,7 @@ TEST_P(QuicStreamFactoryTest, Create) { | 
| EXPECT_TRUE(stream.get()); | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| // Will reset stream 3. | 
| @@ -780,7 +782,7 @@ TEST_P(QuicStreamFactoryTest, Create) { | 
| // TODO(rtenneti): We should probably have a tests that HTTP and HTTPS result | 
| // in streams on different sessions. | 
| QuicStreamRequest request3(factory_.get()); | 
| -  EXPECT_EQ(OK, request3.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request3.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| stream = request3.CreateStream();   // Will reset stream 5. | 
| @@ -806,7 +808,7 @@ TEST_P(QuicStreamFactoryTest, CreateZeroRtt) { | 
| "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -832,7 +834,7 @@ TEST_P(QuicStreamFactoryTest, CreateZeroRttPost) { | 
| "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "POST", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -854,7 +856,7 @@ TEST_P(QuicStreamFactoryTest, DefaultInitialRtt) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -885,7 +887,7 @@ TEST_P(QuicStreamFactoryTest, CachedInitialRtt) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -916,7 +918,7 @@ TEST_P(QuicStreamFactoryTest, 2gInitialRtt) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -947,7 +949,7 @@ TEST_P(QuicStreamFactoryTest, 3gInitialRtt) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -973,7 +975,7 @@ TEST_P(QuicStreamFactoryTest, GoAway) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1003,7 +1005,7 @@ TEST_P(QuicStreamFactoryTest, GoAwayForConnectionMigrationWithPortOnly) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1047,7 +1049,7 @@ TEST_P(QuicStreamFactoryTest, Pooling) { | 
| host_resolver_.rules()->AddIPLiteralRule(server2.host(), "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1055,7 +1057,7 @@ TEST_P(QuicStreamFactoryTest, Pooling) { | 
|  | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -1105,7 +1107,7 @@ TEST_P(QuicStreamFactoryTest, PoolingWithServerMigration) { | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(server2, privacy_mode_, | 
| +            request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", net_log_, | 
| callback.callback())); | 
| EXPECT_EQ(OK, callback.WaitForResult()); | 
| @@ -1139,7 +1141,7 @@ TEST_P(QuicStreamFactoryTest, NoPoolingAfterGoAway) { | 
| host_resolver_.rules()->AddIPLiteralRule(server2.host(), "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1147,7 +1149,7 @@ TEST_P(QuicStreamFactoryTest, NoPoolingAfterGoAway) { | 
|  | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -1159,7 +1161,7 @@ TEST_P(QuicStreamFactoryTest, NoPoolingAfterGoAway) { | 
|  | 
| TestCompletionCallback callback3; | 
| QuicStreamRequest request3(factory_.get()); | 
| -  EXPECT_EQ(OK, request3.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request3.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback3.callback())); | 
| std::unique_ptr<HttpStream> stream3 = request3.CreateStream(); | 
| @@ -1192,7 +1194,7 @@ TEST_P(QuicStreamFactoryTest, HttpsPooling) { | 
| host_resolver_.rules()->AddIPLiteralRule(server2.host(), "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(server1, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(server1, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1200,7 +1202,7 @@ TEST_P(QuicStreamFactoryTest, HttpsPooling) { | 
|  | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback_.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -1236,7 +1238,7 @@ TEST_P(QuicStreamFactoryTest, HttpsPoolingWithMatchingPins) { | 
| host_resolver_.rules()->AddIPLiteralRule(server2.host(), "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(server1, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(server1, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1244,7 +1246,7 @@ TEST_P(QuicStreamFactoryTest, HttpsPoolingWithMatchingPins) { | 
|  | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback_.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -1291,7 +1293,7 @@ TEST_P(QuicStreamFactoryTest, NoHttpsPoolingWithDifferentPins) { | 
| host_resolver_.rules()->AddIPLiteralRule(server2.host(), "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(server1, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(server1, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1299,7 +1301,7 @@ TEST_P(QuicStreamFactoryTest, NoHttpsPoolingWithDifferentPins) { | 
|  | 
| TestCompletionCallback callback; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback_.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -1330,7 +1332,7 @@ TEST_P(QuicStreamFactoryTest, Goaway) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1350,7 +1352,7 @@ TEST_P(QuicStreamFactoryTest, Goaway) { | 
| // new session is created. | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -1392,7 +1394,7 @@ TEST_P(QuicStreamFactoryTest, MaxOpenStream) { | 
| // kDefaultMaxStreamsPerConnection / 2. | 
| for (size_t i = 0; i < kDefaultMaxStreamsPerConnection / 2; i++) { | 
| QuicStreamRequest request(factory_.get()); | 
| -    int rv = request.Request(host_port_pair_, privacy_mode_, | 
| +    int rv = request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback()); | 
| if (i == 0) { | 
| @@ -1409,7 +1411,7 @@ TEST_P(QuicStreamFactoryTest, MaxOpenStream) { | 
| } | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| CompletionCallback())); | 
| std::unique_ptr<HttpStream> stream = request.CreateStream(); | 
| @@ -1444,7 +1446,7 @@ TEST_P(QuicStreamFactoryTest, ResolutionErrorInCreate) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1463,7 +1465,7 @@ TEST_P(QuicStreamFactoryTest, ConnectErrorInCreate) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1482,7 +1484,7 @@ TEST_P(QuicStreamFactoryTest, CancelCreate) { | 
| { | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -              request.Request(host_port_pair_, privacy_mode_, | 
| +              request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| } | 
| @@ -1490,7 +1492,7 @@ TEST_P(QuicStreamFactoryTest, CancelCreate) { | 
| base::RunLoop().RunUntilIdle(); | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream = request2.CreateStream(); | 
| @@ -1521,7 +1523,7 @@ TEST_P(QuicStreamFactoryTest, CloseAllSessions) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1541,7 +1543,7 @@ TEST_P(QuicStreamFactoryTest, CloseAllSessions) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1575,7 +1577,7 @@ TEST_P(QuicStreamFactoryTest, | 
| // Create request, should fail after the write of the CHLO fails. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(ERR_QUIC_HANDSHAKE_FAILED, callback_.WaitForResult()); | 
| @@ -1594,7 +1596,7 @@ TEST_P(QuicStreamFactoryTest, | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_FALSE(HasActiveSession(host_port_pair_)); | 
| @@ -1637,7 +1639,7 @@ TEST_P(QuicStreamFactoryTest, WriteErrorInCryptoConnectWithSyncHostResolution) { | 
| // Create request, should fail immediately. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_QUIC_HANDSHAKE_FAILED, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| // Check no active session, or active jobs left for this server. | 
| @@ -1656,7 +1658,7 @@ TEST_P(QuicStreamFactoryTest, WriteErrorInCryptoConnectWithSyncHostResolution) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_FALSE(HasActiveSession(host_port_pair_)); | 
| @@ -1699,7 +1701,7 @@ TEST_P(QuicStreamFactoryTest, OnIPAddressChanged) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1720,7 +1722,7 @@ TEST_P(QuicStreamFactoryTest, OnIPAddressChanged) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -1767,7 +1769,7 @@ void QuicStreamFactoryTestBase::OnNetworkMadeDefault(bool async_write_before) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -1834,7 +1836,7 @@ void QuicStreamFactoryTestBase::OnNetworkMadeDefault(bool async_write_before) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -1897,7 +1899,7 @@ void QuicStreamFactoryTestBase::OnNetworkDisconnected(bool async_write_before) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -1959,7 +1961,7 @@ void QuicStreamFactoryTestBase::OnNetworkDisconnected(bool async_write_before) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2007,7 +2009,7 @@ void QuicStreamFactoryTestBase::OnNetworkDisconnectedWithNetworkList( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2065,7 +2067,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkMadeDefaultNonMigratableStream) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2114,7 +2116,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkMadeDefaultConnectionMigrationDisabled) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2166,7 +2168,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkDisconnectedNonMigratableStream) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2214,7 +2216,7 @@ TEST_P(QuicStreamFactoryTest, | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2262,7 +2264,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkMadeDefaultNoOpenStreams) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2300,7 +2302,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkDisconnectedNoOpenStreams) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2342,7 +2344,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkChangeDisconnectedPauseBeforeConnected) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2418,7 +2420,7 @@ TEST_P(QuicStreamFactoryTest, OnNetworkChangeDisconnectedPauseBeforeConnected) { | 
| socket_data2.AddSocketDataToFactory(&socket_factory_); | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2466,7 +2468,7 @@ TEST_P(QuicStreamFactoryTest, | 
|  | 
| // Create request and QuicHttpStream to create session1. | 
| QuicStreamRequest request1(factory_.get()); | 
| -  EXPECT_EQ(OK, request1.Request(server1, privacy_mode_, | 
| +  EXPECT_EQ(OK, request1.Request(server1, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| std::unique_ptr<HttpStream> stream1 = request1.CreateStream(); | 
| @@ -2474,7 +2476,7 @@ TEST_P(QuicStreamFactoryTest, | 
|  | 
| // Create request and QuicHttpStream to create session2. | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback_.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -2559,7 +2561,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarly) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2623,7 +2625,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarly) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2684,7 +2686,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyWithAsyncWrites) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2750,7 +2752,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyWithAsyncWrites) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2803,7 +2805,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyNoNewNetwork) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2855,7 +2857,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyNonMigratableStream) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2907,7 +2909,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyConnectionMigrationDisabled) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -2965,7 +2967,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteError( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3054,7 +3056,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorNoNewNetwork( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3143,7 +3145,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorNonMigratableStream( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3207,7 +3209,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorMigrationDisabled( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3286,7 +3288,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnMultipleWriteErrors( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3366,7 +3368,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorWithNotificationQueued( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3464,7 +3466,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnNotificationWithWriteErrorQueued( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3563,7 +3565,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorPauseBeforeConnected( | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3644,7 +3646,7 @@ void QuicStreamFactoryTestBase::TestMigrationOnWriteErrorPauseBeforeConnected( | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -3696,7 +3698,7 @@ void QuicStreamFactoryTestBase:: | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -3785,7 +3787,7 @@ void QuicStreamFactoryTestBase:: | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -3850,7 +3852,7 @@ TEST_P(QuicStreamFactoryTest, MigrateSessionEarlyToBadSocket) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -3913,7 +3915,7 @@ TEST_P(QuicStreamFactoryTest, ServerMigration) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -4055,7 +4057,7 @@ TEST_P(QuicStreamFactoryTest, ServerMigrationIPv4ToIPv6Fails) { | 
| // Create request and QuicHttpStream. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -4109,7 +4111,7 @@ TEST_P(QuicStreamFactoryTest, OnSSLConfigChanged) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4129,7 +4131,7 @@ TEST_P(QuicStreamFactoryTest, OnSSLConfigChanged) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4162,7 +4164,7 @@ TEST_P(QuicStreamFactoryTest, OnCertDBChanged) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4183,7 +4185,7 @@ TEST_P(QuicStreamFactoryTest, OnCertDBChanged) { | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, privacy_mode_, | 
| +            request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4287,7 +4289,7 @@ TEST_P(QuicStreamFactoryTest, EnableNotLoadFromDiskCache) { | 
| "192.168.0.1", ""); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4334,7 +4336,7 @@ TEST_P(QuicStreamFactoryTest, ReducePingTimeoutOnConnectionTimeOutOpenStreams) { | 
| EXPECT_EQ(QuicTime::Delta::FromSeconds(kPingTimeoutSecs), | 
| QuicStreamFactoryPeer::GetPingTimeout(factory_.get())); | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4366,7 +4368,7 @@ TEST_P(QuicStreamFactoryTest, ReducePingTimeoutOnConnectionTimeOutOpenStreams) { | 
| DVLOG(1) << "Create 2nd session and timeout with open stream"; | 
| TestCompletionCallback callback2; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(server2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(server2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2_, "GET", | 
| net_log_, callback2.callback())); | 
| QuicChromiumClientSession* session2 = GetActiveSession(server2); | 
| @@ -4432,7 +4434,7 @@ TEST_P(QuicStreamFactoryTest, StartCertVerifyJob) { | 
| // Start a QUIC request. | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4477,7 +4479,7 @@ TEST_P(QuicStreamFactoryTest, YieldAfterPackets) { | 
| "StartReading"); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4522,7 +4524,7 @@ TEST_P(QuicStreamFactoryTest, YieldAfterDuration) { | 
| "StartReading"); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(OK, request.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4554,7 +4556,7 @@ TEST_P(QuicStreamFactoryTest, ServerPushSessionAffinity) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4574,7 +4576,7 @@ TEST_P(QuicStreamFactoryTest, ServerPushSessionAffinity) { | 
| ->promised_by_url())[kDefaultUrl] = &promised; | 
|  | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(host_port_pair_, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4601,7 +4603,7 @@ TEST_P(QuicStreamFactoryTest, ServerPushPrivacyModeMismatch) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4627,7 +4629,7 @@ TEST_P(QuicStreamFactoryTest, ServerPushPrivacyModeMismatch) { | 
| // cancel it because the privacy modes do not match. | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(host_port_pair_, PRIVACY_MODE_ENABLED, | 
| +            request2.Request(host_port_pair_, version_, PRIVACY_MODE_ENABLED, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4662,7 +4664,7 @@ TEST_P(QuicStreamFactoryTest, PoolByOrigin) { | 
|  | 
| QuicStreamRequest request1(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request1.Request(destination1, privacy_mode_, | 
| +            request1.Request(destination1, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -4673,7 +4675,7 @@ TEST_P(QuicStreamFactoryTest, PoolByOrigin) { | 
| // Second request returns synchronously because it pools to existing session. | 
| TestCompletionCallback callback2; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(destination2, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(destination2, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback2.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -4705,7 +4707,7 @@ TEST_P(QuicStreamFactoryTest, ForceHolBlockingEnabled) { | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request.Request(host_port_pair_, privacy_mode_, | 
| +            request.Request(host_port_pair_, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url_, "GET", net_log_, | 
| callback_.callback())); | 
|  | 
| @@ -4801,9 +4803,10 @@ TEST_P(QuicStreamFactoryWithDestinationTest, InvalidCertificate) { | 
| AddHangingSocketData(); | 
|  | 
| QuicStreamRequest request(factory_.get()); | 
| -  EXPECT_EQ(ERR_IO_PENDING, request.Request(destination, privacy_mode_, | 
| -                                            /*cert_verify_flags=*/0, url, "GET", | 
| -                                            net_log_, callback_.callback())); | 
| +  EXPECT_EQ(ERR_IO_PENDING, | 
| +            request.Request(destination, version_, privacy_mode_, | 
| +                            /*cert_verify_flags=*/0, url, "GET", net_log_, | 
| +                            callback_.callback())); | 
|  | 
| EXPECT_THAT(callback_.WaitForResult(), IsError(ERR_QUIC_HANDSHAKE_FAILED)); | 
|  | 
| @@ -4844,7 +4847,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, SharedCertificate) { | 
|  | 
| QuicStreamRequest request1(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request1.Request(destination, privacy_mode_, | 
| +            request1.Request(destination, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url1, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -4856,7 +4859,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, SharedCertificate) { | 
| // Second request returns synchronously because it pools to existing session. | 
| TestCompletionCallback callback2; | 
| QuicStreamRequest request2(factory_.get()); | 
| -  EXPECT_EQ(OK, request2.Request(destination, privacy_mode_, | 
| +  EXPECT_EQ(OK, request2.Request(destination, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2, "GET", net_log_, | 
| callback2.callback())); | 
| std::unique_ptr<HttpStream> stream2 = request2.CreateStream(); | 
| @@ -4916,7 +4919,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, DifferentPrivacyMode) { | 
|  | 
| QuicStreamRequest request1(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request1.Request(destination, PRIVACY_MODE_DISABLED, | 
| +            request1.Request(destination, version_, PRIVACY_MODE_DISABLED, | 
| /*cert_verify_flags=*/0, url1, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_EQ(OK, callback_.WaitForResult()); | 
| @@ -4927,7 +4930,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, DifferentPrivacyMode) { | 
| TestCompletionCallback callback2; | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(destination, PRIVACY_MODE_ENABLED, | 
| +            request2.Request(destination, version_, PRIVACY_MODE_ENABLED, | 
| /*cert_verify_flags=*/0, url2, "GET", net_log_, | 
| callback2.callback())); | 
| EXPECT_EQ(OK, callback2.WaitForResult()); | 
| @@ -4999,7 +5002,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, DisjointCertificate) { | 
|  | 
| QuicStreamRequest request1(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request1.Request(destination, privacy_mode_, | 
| +            request1.Request(destination, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url1, "GET", net_log_, | 
| callback_.callback())); | 
| EXPECT_THAT(callback_.WaitForResult(), IsOk()); | 
| @@ -5010,7 +5013,7 @@ TEST_P(QuicStreamFactoryWithDestinationTest, DisjointCertificate) { | 
| TestCompletionCallback callback2; | 
| QuicStreamRequest request2(factory_.get()); | 
| EXPECT_EQ(ERR_IO_PENDING, | 
| -            request2.Request(destination, privacy_mode_, | 
| +            request2.Request(destination, version_, privacy_mode_, | 
| /*cert_verify_flags=*/0, url2, "GET", net_log_, | 
| callback2.callback())); | 
| EXPECT_THAT(callback2.WaitForResult(), IsOk()); | 
|  |