| Index: net/tools/quic/test_tools/quic_test_client.cc
|
| diff --git a/net/tools/quic/test_tools/quic_test_client.cc b/net/tools/quic/test_tools/quic_test_client.cc
|
| index 51f599d6e66019b900320ba8722ade4a2b8d1eab..9782e8c571110cf2beb6a0bf88e4d632bab6b72e 100644
|
| --- a/net/tools/quic/test_tools/quic_test_client.cc
|
| +++ b/net/tools/quic/test_tools/quic_test_client.cc
|
| @@ -12,7 +12,9 @@
|
| #include "net/quic/crypto/proof_verifier.h"
|
| #include "net/quic/quic_server_id.h"
|
| #include "net/quic/test_tools/quic_connection_peer.h"
|
| +#include "net/quic/test_tools/quic_session_peer.h"
|
| #include "net/quic/test_tools/quic_test_utils.h"
|
| +#include "net/quic/test_tools/reliable_quic_stream_peer.h"
|
| #include "net/tools/balsa/balsa_headers.h"
|
| #include "net/tools/quic/quic_epoll_connection_helper.h"
|
| #include "net/tools/quic/quic_packet_writer_wrapper.h"
|
| @@ -23,8 +25,10 @@
|
|
|
| using base::StringPiece;
|
| using net::QuicServerId;
|
| -using net::test::kInitialFlowControlWindowForTest;
|
| using net::test::QuicConnectionPeer;
|
| +using net::test::QuicSessionPeer;
|
| +using net::test::ReliableQuicStreamPeer;
|
| +using net::test::kInitialFlowControlWindowForTest;
|
| using std::string;
|
| using std::vector;
|
|
|
| @@ -100,13 +104,11 @@ BalsaHeaders* MungeHeaders(const BalsaHeaders* const_headers,
|
| MockableQuicClient::MockableQuicClient(
|
| IPEndPoint server_address,
|
| const QuicServerId& server_id,
|
| - const QuicVersionVector& supported_versions,
|
| - uint32 initial_flow_control_window)
|
| + const QuicVersionVector& supported_versions)
|
| : QuicClient(server_address,
|
| server_id,
|
| supported_versions,
|
| - false,
|
| - initial_flow_control_window),
|
| + false),
|
| override_connection_id_(0),
|
| test_writer_(NULL) {}
|
|
|
| @@ -114,13 +116,12 @@ MockableQuicClient::MockableQuicClient(
|
| IPEndPoint server_address,
|
| const QuicServerId& server_id,
|
| const QuicConfig& config,
|
| - const QuicVersionVector& supported_versions,
|
| - uint32 initial_flow_control_window)
|
| + const QuicVersionVector& supported_versions)
|
| : QuicClient(server_address,
|
| server_id,
|
| - config,
|
| supported_versions,
|
| - initial_flow_control_window),
|
| + false,
|
| + config),
|
| override_connection_id_(0),
|
| test_writer_(NULL) {}
|
|
|
| @@ -162,8 +163,7 @@ QuicTestClient::QuicTestClient(IPEndPoint server_address,
|
| server_address.port(),
|
| false,
|
| PRIVACY_MODE_DISABLED),
|
| - supported_versions,
|
| - kInitialFlowControlWindowForTest)) {
|
| + supported_versions)) {
|
| Initialize(true);
|
| }
|
|
|
| @@ -176,8 +176,7 @@ QuicTestClient::QuicTestClient(IPEndPoint server_address,
|
| server_address.port(),
|
| secure,
|
| PRIVACY_MODE_DISABLED),
|
| - supported_versions,
|
| - kInitialFlowControlWindowForTest)) {
|
| + supported_versions)) {
|
| Initialize(secure);
|
| }
|
|
|
| @@ -186,8 +185,7 @@ QuicTestClient::QuicTestClient(
|
| const string& server_hostname,
|
| bool secure,
|
| const QuicConfig& config,
|
| - const QuicVersionVector& supported_versions,
|
| - uint32 client_initial_flow_control_receive_window)
|
| + const QuicVersionVector& supported_versions)
|
| : client_(
|
| new MockableQuicClient(server_address,
|
| QuicServerId(server_hostname,
|
| @@ -195,8 +193,7 @@ QuicTestClient::QuicTestClient(
|
| secure,
|
| PRIVACY_MODE_DISABLED),
|
| config,
|
| - supported_versions,
|
| - client_initial_flow_control_receive_window)) {
|
| + supported_versions)) {
|
| Initialize(secure);
|
| }
|
|
|
| @@ -215,6 +212,7 @@ void QuicTestClient::Initialize(bool secure) {
|
| secure_ = secure;
|
| auto_reconnect_ = false;
|
| buffer_body_ = true;
|
| + fec_policy_ = PROTECT_OPTIONAL;
|
| proof_verifier_ = NULL;
|
| ClearPerRequestState();
|
| ExpectCertificates(secure_);
|
| @@ -333,6 +331,8 @@ QuicSpdyClientStream* QuicTestClient::GetOrCreateStream() {
|
| }
|
| stream_->set_visitor(this);
|
| reinterpret_cast<QuicSpdyClientStream*>(stream_)->set_priority(priority_);
|
| + // Set FEC policy on stream.
|
| + ReliableQuicStreamPeer::SetFecPolicy(stream_, fec_policy_);
|
| }
|
|
|
| return stream_;
|
| @@ -545,6 +545,15 @@ void QuicTestClient::WaitForWriteToFlush() {
|
| }
|
| }
|
|
|
| +void QuicTestClient::SetFecPolicy(FecPolicy fec_policy) {
|
| + fec_policy_ = fec_policy;
|
| + // Set policy for headers and crypto streams.
|
| + ReliableQuicStreamPeer::SetFecPolicy(
|
| + QuicSessionPeer::GetHeadersStream(client()->session()), fec_policy);
|
| + ReliableQuicStreamPeer::SetFecPolicy(client()->session()->GetCryptoStream(),
|
| + fec_policy);
|
| +}
|
| +
|
| } // namespace test
|
| } // namespace tools
|
| } // namespace net
|
|
|