Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(661)

Unified Diff: net/tools/quic/end_to_end_test.cc

Issue 2825083003: Landing Recent QUIC changes until Mon Apr 17 2017 (Closed)
Patch Set: Format Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/spdy/spdy_framer_test.cc ('k') | net/tools/quic/platform/impl/quic_socket_utils.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/tools/quic/end_to_end_test.cc
diff --git a/net/tools/quic/end_to_end_test.cc b/net/tools/quic/end_to_end_test.cc
index 08d2e43f43499ad3a25d2a02c9f733cec7c27e7a..db3b8f9f9a8ca87c72f3212763a4d97b9e33d9b4 100644
--- a/net/tools/quic/end_to_end_test.cc
+++ b/net/tools/quic/end_to_end_test.cc
@@ -22,13 +22,13 @@
#include "net/quic/core/crypto/aes_128_gcm_12_encrypter.h"
#include "net/quic/core/crypto/null_encrypter.h"
#include "net/quic/core/quic_client_session_base.h"
-#include "net/quic/core/quic_flags.h"
#include "net/quic/core/quic_framer.h"
#include "net/quic/core/quic_packet_creator.h"
#include "net/quic/core/quic_packets.h"
#include "net/quic/core/quic_server_id.h"
#include "net/quic/core/quic_session.h"
#include "net/quic/core/quic_utils.h"
+#include "net/quic/platform/api/quic_flags.h"
#include "net/quic/platform/api/quic_logging.h"
#include "net/quic/platform/api/quic_ptr_util.h"
#include "net/quic/platform/api/quic_socket_address.h"
@@ -153,9 +153,8 @@ std::vector<TestParams> GetTestParams() {
QuicVersionVector version_buckets[1];
for (const QuicVersion version : all_supported_versions) {
- // Versions: 34+
- // QUIC_VERSION_34 deprecates entropy and uses new ack and stop waiting
- // wire formats.
+ // Versions: 35+
+ // QUIC_VERSION_35 allows endpoints to independently set stream limit.
version_buckets[0].push_back(version);
}
@@ -634,7 +633,7 @@ TEST_P(EndToEndTest, HandshakeSuccessful) {
ASSERT_TRUE(Initialize());
EXPECT_TRUE(client_->client()->WaitForCryptoHandshakeConfirmed());
QuicCryptoStream* crypto_stream =
- QuicSessionPeer::GetCryptoStream(client_->client()->session());
+ QuicSessionPeer::GetMutableCryptoStream(client_->client()->session());
QuicStreamSequencer* sequencer = QuicStreamPeer::sequencer(crypto_stream);
EXPECT_NE(FLAGS_quic_reloadable_flag_quic_release_crypto_stream_buffer,
QuicStreamSequencerPeer::IsUnderlyingBufferAllocated(sequencer));
@@ -642,7 +641,7 @@ TEST_P(EndToEndTest, HandshakeSuccessful) {
QuicDispatcher* dispatcher =
QuicServerPeer::GetDispatcher(server_thread_->server());
QuicSession* server_session = dispatcher->session_map().begin()->second.get();
- crypto_stream = QuicSessionPeer::GetCryptoStream(server_session);
+ crypto_stream = QuicSessionPeer::GetMutableCryptoStream(server_session);
sequencer = QuicStreamPeer::sequencer(crypto_stream);
EXPECT_NE(FLAGS_quic_reloadable_flag_quic_release_crypto_stream_buffer,
QuicStreamSequencerPeer::IsUnderlyingBufferAllocated(sequencer));
@@ -1279,41 +1278,6 @@ TEST_P(EndToEndTest, Timeout) {
}
}
-TEST_P(EndToEndTest, NegotiateMaxOpenStreams) {
- // Negotiate 1 max open stream.
- client_config_.SetMaxStreamsPerConnection(1, 1);
- ASSERT_TRUE(Initialize());
- EXPECT_TRUE(client_->client()->WaitForCryptoHandshakeConfirmed());
-
- if (negotiated_version_ > QUIC_VERSION_34) {
- // Newer versions use max incoming dynamic streams.
- return;
- }
-
- // Make the client misbehave after negotiation.
- const int kServerMaxStreams = kMaxStreamsMinimumIncrement + 1;
- QuicSessionPeer::SetMaxOpenOutgoingStreams(client_->client()->session(),
- kServerMaxStreams + 1);
-
- SpdyHeaderBlock headers;
- headers[":method"] = "POST";
- headers[":path"] = "/foo";
- headers[":scheme"] = "https";
- headers[":authority"] = server_hostname_;
- headers["content-length"] = "3";
-
- // The server supports a small number of additional streams beyond the
- // negotiated limit. Open enough streams to go beyond that limit.
- for (int i = 0; i < kServerMaxStreams + 1; ++i) {
- client_->SendMessage(headers, "", /*fin=*/false);
- }
- client_->WaitForResponse();
-
- EXPECT_TRUE(client_->connected());
- EXPECT_EQ(QUIC_REFUSED_STREAM, client_->stream_error());
- EXPECT_EQ(QUIC_NO_ERROR, client_->connection_error());
-}
-
TEST_P(EndToEndTest, MaxIncomingDynamicStreamsLimitRespected) {
// Set a limit on maximum number of incoming dynamic streams.
// Make sure the limit is respected.
@@ -1323,11 +1287,6 @@ TEST_P(EndToEndTest, MaxIncomingDynamicStreamsLimitRespected) {
ASSERT_TRUE(Initialize());
EXPECT_TRUE(client_->client()->WaitForCryptoHandshakeConfirmed());
- if (negotiated_version_ <= QUIC_VERSION_34) {
- // Earlier versions negotiated max open streams.
- return;
- }
-
// Make the client misbehave after negotiation.
const int kServerMaxStreams =
kMaxStreamsMinimumIncrement + kServerMaxIncomingDynamicStreams;
@@ -1364,11 +1323,6 @@ TEST_P(EndToEndTest, SetIndependentMaxIncomingDynamicStreamsLimits) {
ASSERT_TRUE(Initialize());
EXPECT_TRUE(client_->client()->WaitForCryptoHandshakeConfirmed());
- if (negotiated_version_ <= QUIC_VERSION_34) {
- // Earlier versions negotiated max open streams.
- return;
- }
-
// The client has received the server's limit and vice versa.
EXPECT_EQ(kServerMaxIncomingDynamicStreams,
client_->client()->session()->max_open_outgoing_streams());
@@ -1409,22 +1363,6 @@ TEST_P(EndToEndTest, NegotiateCongestionControl) {
server_thread_->Resume();
}
-TEST_P(EndToEndTest, LimitMaxOpenStreams) {
- // Server limits the number of max streams to 2.
- server_config_.SetMaxStreamsPerConnection(2, 2);
- // Client tries to negotiate for 10.
- client_config_.SetMaxStreamsPerConnection(10, 5);
-
- ASSERT_TRUE(Initialize());
- EXPECT_TRUE(client_->client()->WaitForCryptoHandshakeConfirmed());
- if (negotiated_version_ > QUIC_VERSION_34) {
- // No negotiated max streams beyond version 34.
- return;
- }
- QuicConfig* client_negotiated_config = client_->client()->session()->config();
- EXPECT_EQ(2u, client_negotiated_config->MaxStreamsPerConnection());
-}
-
TEST_P(EndToEndTest, ClientSuggestsRTT) {
// Client suggests initial RTT, verify it is used.
const uint32_t kInitialRTT = 20000;
@@ -1764,8 +1702,6 @@ TEST_P(EndToEndTest, DifferentFlowControlWindows) {
// Test negotiation of IFWA connection option.
TEST_P(EndToEndTest, NegotiatedServerInitialFlowControlWindow) {
- FLAGS_quic_reloadable_flag_quic_large_ifw_options = true;
-
const uint32_t kClientStreamIFCW = 123456;
const uint32_t kClientSessionIFCW = 234567;
set_client_initial_stream_flow_control_receive_window(kClientStreamIFCW);
@@ -1828,7 +1764,7 @@ TEST_P(EndToEndTest, HeadersAndCryptoStreamsNoConnectionFlowControl) {
server_thread_->WaitForCryptoHandshakeConfirmed();
QuicCryptoStream* crypto_stream =
- QuicSessionPeer::GetCryptoStream(client_->client()->session());
+ QuicSessionPeer::GetMutableCryptoStream(client_->client()->session());
EXPECT_LT(
QuicFlowControllerPeer::SendWindowSize(crypto_stream->flow_controller()),
kStreamIFCW);
@@ -1879,8 +1815,10 @@ TEST_P(EndToEndTest, FlowControlsSynced) {
ExpectFlowControlsSynced(client_session->flow_controller(),
server_session->flow_controller());
ExpectFlowControlsSynced(
- QuicSessionPeer::GetCryptoStream(client_session)->flow_controller(),
- QuicSessionPeer::GetCryptoStream(server_session)->flow_controller());
+ QuicSessionPeer::GetMutableCryptoStream(client_session)
+ ->flow_controller(),
+ QuicSessionPeer::GetMutableCryptoStream(server_session)
+ ->flow_controller());
SpdyFramer spdy_framer(SpdyFramer::ENABLE_COMPRESSION);
SpdySettingsIR settings_frame;
settings_frame.AddSetting(SETTINGS_MAX_HEADER_LIST_SIZE,
« no previous file with comments | « net/spdy/spdy_framer_test.cc ('k') | net/tools/quic/platform/impl/quic_socket_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698