Use transport_version() test base class method instead of variants like
connection_->transport_versions() and GetParams().transport_version. Change
transport_version() implementation so that it can be called at any time,
including before connection_ is initialized.
gfe-relnote: n/a (test-only change)
PiperOrigin-RevId: 300659212
Change-Id: I5cc111d045b8e744735425d0b7f9072849d4e5b8
diff --git a/quic/tools/quic_simple_server_session_test.cc b/quic/tools/quic_simple_server_session_test.cc
index 8265dde..250f3ca 100644
--- a/quic/tools/quic_simple_server_session_test.cc
+++ b/quic/tools/quic_simple_server_session_test.cc
@@ -238,7 +238,7 @@
kInitialStreamFlowControlWindowForTest);
config_.SetInitialSessionFlowControlWindowToSend(
kInitialSessionFlowControlWindowForTest);
- if (VersionUsesHttp3(GetParam().transport_version)) {
+ if (VersionUsesHttp3(transport_version())) {
QuicConfigPeer::SetReceivedMaxUnidirectionalStreams(
&config_, kMaxStreamsForTest + 3);
} else {
@@ -268,17 +268,16 @@
}
QuicStreamId GetNthClientInitiatedBidirectionalId(int n) {
- return GetNthClientInitiatedBidirectionalStreamId(
- connection_->transport_version(), n);
+ return GetNthClientInitiatedBidirectionalStreamId(transport_version(), n);
}
QuicStreamId GetNthServerInitiatedUnidirectionalId(int n) {
return quic::test::GetNthServerInitiatedUnidirectionalStreamId(
- connection_->transport_version(), n);
+ transport_version(), n);
}
QuicTransportVersion transport_version() const {
- return connection_->transport_version();
+ return GetParam().transport_version;
}
void InjectStopSending(QuicStreamId stream_id,
@@ -508,9 +507,9 @@
EXPECT_EQ(1u, session_->GetNumOpenIncomingStreams());
EXPECT_EQ(0u, session_->GetNumOpenOutgoingStreams());
- if (!VersionUsesHttp3(connection_->transport_version())) {
+ if (!VersionUsesHttp3(transport_version())) {
session_->UnregisterStreamPriority(
- QuicUtils::GetHeadersStreamId(connection_->transport_version()),
+ QuicUtils::GetHeadersStreamId(transport_version()),
/*is_static=*/true);
}
// Assume encryption already established.
@@ -519,9 +518,9 @@
CreateMockCryptoServerStream(&crypto_config_, &compressed_certs_cache_,
session_.get(), &stream_helper_);
QuicSimpleServerSessionPeer::SetCryptoStream(session_.get(), crypto_stream);
- if (!VersionUsesHttp3(connection_->transport_version())) {
+ if (!VersionUsesHttp3(transport_version())) {
session_->RegisterStreamPriority(
- QuicUtils::GetHeadersStreamId(connection_->transport_version()),
+ QuicUtils::GetHeadersStreamId(transport_version()),
/*is_static=*/true,
spdy::SpdyStreamPrecedence(QuicStream::kDefaultPriority));
}
@@ -531,7 +530,7 @@
QuicSpdyStream* created_stream =
QuicSimpleServerSessionPeer::CreateOutgoingUnidirectionalStream(
session_.get());
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_EQ(GetNthServerInitiatedUnidirectionalId(i + 3),
created_stream->id());
} else {
@@ -588,7 +587,7 @@
QuicSimpleServerSessionServerPushTest() {
// Reset stream level flow control window to be 32KB.
if (GetParam().handshake_protocol == PROTOCOL_TLS1_3) {
- if (VersionHasIetfQuicFrames(GetParam().transport_version)) {
+ if (VersionHasIetfQuicFrames(transport_version())) {
QuicConfigPeer::SetReceivedInitialMaxStreamDataBytesUnidirectional(
&config_, kStreamFlowControlWindowSize);
} else {
@@ -624,9 +623,9 @@
}
session_->OnConfigNegotiated();
- if (!VersionUsesHttp3(connection_->transport_version())) {
+ if (!VersionUsesHttp3(transport_version())) {
session_->UnregisterStreamPriority(
- QuicUtils::GetHeadersStreamId(connection_->transport_version()),
+ QuicUtils::GetHeadersStreamId(transport_version()),
/*is_static=*/true);
}
QuicSimpleServerSessionPeer::SetCryptoStream(session_.get(), nullptr);
@@ -636,9 +635,9 @@
session_.get(), &stream_helper_);
QuicSimpleServerSessionPeer::SetCryptoStream(session_.get(), crypto_stream);
- if (!VersionUsesHttp3(connection_->transport_version())) {
+ if (!VersionUsesHttp3(transport_version())) {
session_->RegisterStreamPriority(
- QuicUtils::GetHeadersStreamId(connection_->transport_version()),
+ QuicUtils::GetHeadersStreamId(transport_version()),
/*is_static=*/true,
spdy::SpdyStreamPrecedence(QuicStream::kDefaultPriority));
}
@@ -673,7 +672,7 @@
QuicByteCount data_frame_header_length = 0;
for (unsigned int i = 1; i <= num_resources; ++i) {
QuicStreamId stream_id;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
stream_id = GetNthServerInitiatedUnidirectionalId(i + 2);
} else {
stream_id = GetNthServerInitiatedUnidirectionalId(i - 1);
@@ -685,7 +684,7 @@
std::string body(body_size, 'a');
std::string data;
data_frame_header_length = 0;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
std::unique_ptr<char[]> buffer;
data_frame_header_length =
HttpEncoder::SerializeDataFrameHeader(body.length(), &buffer);
@@ -708,13 +707,13 @@
// Since flow control window is smaller than response body, not the
// whole body will be sent.
QuicStreamOffset offset = 0;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(stream_id, 1, offset, NO_FIN));
offset++;
}
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(stream_id, kHeadersFrameHeaderLength,
offset, NO_FIN));
@@ -724,7 +723,7 @@
offset, NO_FIN));
offset += kHeadersFramePayloadLength;
}
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(stream_id, data_frame_header_length,
offset, NO_FIN));
@@ -744,9 +743,9 @@
}
void MaybeConsumeHeadersStreamData() {
- if (!VersionUsesHttp3(connection_->transport_version())) {
+ if (!VersionUsesHttp3(transport_version())) {
QuicStreamId headers_stream_id =
- QuicUtils::GetHeadersStreamId(connection_->transport_version());
+ QuicUtils::GetHeadersStreamId(transport_version());
EXPECT_CALL(*connection_, SendStreamData(headers_stream_id, _, _, _))
.Times(AtLeast(1));
}
@@ -777,7 +776,7 @@
size_t num_resources = kMaxStreamsForTest + 1;
QuicByteCount data_frame_header_length = PromisePushResources(num_resources);
QuicStreamId next_out_going_stream_id;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
next_out_going_stream_id =
GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest + 3);
} else {
@@ -788,12 +787,12 @@
// After an open stream is marked draining, a new stream is expected to be
// created and a response sent on the stream.
QuicStreamOffset offset = 0;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(next_out_going_stream_id, 1, offset, NO_FIN));
offset++;
}
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(next_out_going_stream_id,
kHeadersFrameHeaderLength, offset, NO_FIN));
@@ -803,7 +802,7 @@
kHeadersFramePayloadLength, offset, NO_FIN));
offset += kHeadersFramePayloadLength;
}
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(next_out_going_stream_id,
data_frame_header_length, offset, NO_FIN));
@@ -827,7 +826,7 @@
QuicMaxStreamsFrame(0, num_resources + 3, /*unidirectional=*/true));
}
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
session_->StreamDraining(GetNthServerInitiatedUnidirectionalId(3));
} else {
session_->StreamDraining(GetNthServerInitiatedUnidirectionalId(0));
@@ -864,7 +863,7 @@
// Reset the last stream in the queue. It should be marked cancelled.
QuicStreamId stream_got_reset;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
stream_got_reset =
GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest + 4);
} else {
@@ -884,7 +883,7 @@
// be created. But since one of them was marked cancelled due to RST frame,
// only one queued resource will be sent out.
QuicStreamId stream_not_reset;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
stream_not_reset =
GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest + 3);
} else {
@@ -893,7 +892,7 @@
}
InSequence s;
QuicStreamOffset offset = 0;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(stream_not_reset, 1, offset, NO_FIN));
offset++;
@@ -944,7 +943,7 @@
}
QuicByteCount data_frame_header_length = PromisePushResources(num_resources);
QuicStreamId stream_to_open;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
stream_to_open =
GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest + 3);
} else {
@@ -962,7 +961,7 @@
OnStreamReset(stream_got_reset, QUIC_RST_ACKNOWLEDGEMENT));
}
QuicStreamOffset offset = 0;
- if (VersionUsesHttp3(connection_->transport_version())) {
+ if (VersionUsesHttp3(transport_version())) {
EXPECT_CALL(*connection_,
SendStreamData(stream_to_open, 1, offset, NO_FIN));
offset++;