diff --git a/quic/api/test/QuicTransportTest.cpp b/quic/api/test/QuicTransportTest.cpp index 67fb4fc79..7b58798ff 100644 --- a/quic/api/test/QuicTransportTest.cpp +++ b/quic/api/test/QuicTransportTest.cpp @@ -902,8 +902,8 @@ TEST_F(QuicTransportTest, RstStream) { EXPECT_TRUE(stream->writeBuffer.empty()); EXPECT_FALSE(stream->writable()); EXPECT_TRUE(stream->writeBuffer.empty()); - EXPECT_FALSE(transport_->getConnectionState().streamManager->writableContains( - stream->id)); + EXPECT_FALSE(writableContains( + *transport_->getConnectionState().streamManager, stream->id)); } TEST_F(QuicTransportTest, StopSending) { @@ -1646,8 +1646,8 @@ TEST_F(QuicTransportTest, RstWrittenStream) { EXPECT_TRUE(stream->retransmissionBuffer.empty()); EXPECT_TRUE(stream->writeBuffer.empty()); EXPECT_FALSE(stream->writable()); - EXPECT_FALSE(transport_->getConnectionState().streamManager->writableContains( - stream->id)); + EXPECT_FALSE(writableContains( + *transport_->getConnectionState().streamManager, stream->id)); } TEST_F(QuicTransportTest, RstStreamUDPWriteFailNonFatal) { @@ -1716,8 +1716,8 @@ TEST_F(QuicTransportTest, WriteAfterSendRst) { EXPECT_TRUE(stream->retransmissionBuffer.empty()); EXPECT_TRUE(stream->writeBuffer.empty()); EXPECT_FALSE(stream->writable()); - EXPECT_FALSE(transport_->getConnectionState().streamManager->writableContains( - stream->id)); + EXPECT_FALSE(writableContains( + *transport_->getConnectionState().streamManager, stream->id)); // Write again: buf = buildRandomInputData(50); diff --git a/quic/common/test/TestUtils.cpp b/quic/common/test/TestUtils.cpp index e43b4c4fa..95e7606e0 100644 --- a/quic/common/test/TestUtils.cpp +++ b/quic/common/test/TestUtils.cpp @@ -775,5 +775,10 @@ void overridePacketWithToken( token.size()); } +bool writableContains(QuicStreamManager& streamManager, StreamId streamId) { + return streamManager.writableStreams().count(streamId) > 0 || + streamManager.writableControlStreams().count(streamId) > 0; +} + } // namespace test } // namespace quic diff --git a/quic/common/test/TestUtils.h b/quic/common/test/TestUtils.h index 92b9cf384..4f55a65f7 100644 --- a/quic/common/test/TestUtils.h +++ b/quic/common/test/TestUtils.h @@ -16,6 +16,7 @@ #include #include #include +#include #include #include @@ -290,5 +291,11 @@ void overridePacketWithToken( void overridePacketWithToken( folly::IOBuf& bodyBuf, const StatelessResetToken& token); + +/* + * Returns if the current writable streams contains the given id. + */ +bool writableContains(QuicStreamManager& streamManager, StreamId streamId); + } // namespace test } // namespace quic diff --git a/quic/fizz/client/test/QuicClientTransportTest.cpp b/quic/fizz/client/test/QuicClientTransportTest.cpp index c602a0470..9e171732b 100644 --- a/quic/fizz/client/test/QuicClientTransportTest.cpp +++ b/quic/fizz/client/test/QuicClientTransportTest.cpp @@ -4737,7 +4737,7 @@ TEST_F(QuicClientTransportAfterStartTest, SendReset) { // ReadCallbacks are not affected by reseting send state EXPECT_EQ(1, readCbs.count(streamId)); // readable list can still be populated after a reset. - EXPECT_FALSE(conn.streamManager->writableContains(streamId)); + EXPECT_FALSE(writableContains(*conn.streamManager, streamId)); auto packet = packetToBuf(createAckPacket( client->getNonConstConn(), ++appDataPacketNum, @@ -4830,7 +4830,7 @@ TEST_F(QuicClientTransportAfterStartTest, SendResetAfterEom) { // ReadCallback are not affected by reseting send state. EXPECT_EQ(1, readCbs.count(streamId)); // readable list can still be populated after a reset. - EXPECT_FALSE(conn.streamManager->writableContains(streamId)); + EXPECT_FALSE(writableContains(*conn.streamManager, streamId)); auto packet = packetToBuf(createAckPacket( client->getNonConstConn(), @@ -4932,7 +4932,7 @@ TEST_F(QuicClientTransportAfterStartTest, SendResetSyncOnAck) { const auto& conn = client->getConn(); EXPECT_EQ(0, readCbs.count(streamId)); // readable list can still be populated after a reset. - EXPECT_FALSE(conn.streamManager->writableContains(streamId)); + EXPECT_FALSE(writableContains(*conn.streamManager, streamId)); auto packet = packetToBuf(createAckPacket( client->getNonConstConn(), ++appDataPacketNum, diff --git a/quic/flowcontrol/test/QuicFlowControlTest.cpp b/quic/flowcontrol/test/QuicFlowControlTest.cpp index 21684c1cb..f305e9db0 100644 --- a/quic/flowcontrol/test/QuicFlowControlTest.cpp +++ b/quic/flowcontrol/test/QuicFlowControlTest.cpp @@ -689,18 +689,18 @@ TEST_F(QuicFlowControlTest, WritableList) { stream.flowControlState.peerAdvertisedMaxOffset = 200; conn_.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(conn_.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*conn_.streamManager, id)); auto buf = IOBuf::create(100); buf->append(100); writeDataToQuicStream(stream, std::move(buf), false); conn_.streamManager->updateWritableStreams(stream); - EXPECT_TRUE(conn_.streamManager->writableContains(id)); + EXPECT_TRUE(writableContains(*conn_.streamManager, id)); // Flow control stream.flowControlState.peerAdvertisedMaxOffset = stream.currentWriteOffset; conn_.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(conn_.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*conn_.streamManager, id)); // Fin writeDataToQuicStream(stream, nullptr, true); @@ -708,12 +708,12 @@ TEST_F(QuicFlowControlTest, WritableList) { stream.currentWriteOffset += 100; stream.flowControlState.peerAdvertisedMaxOffset = stream.currentWriteOffset; conn_.streamManager->updateWritableStreams(stream); - EXPECT_TRUE(conn_.streamManager->writableContains(id)); + EXPECT_TRUE(writableContains(*conn_.streamManager, id)); // After Fin stream.currentWriteOffset++; conn_.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(conn_.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*conn_.streamManager, id)); } TEST_F(QuicFlowControlTest, GetSendStreamFlowControlBytes) { diff --git a/quic/state/QuicStreamManager.h b/quic/state/QuicStreamManager.h index a035dd8d8..810faa039 100644 --- a/quic/state/QuicStreamManager.h +++ b/quic/state/QuicStreamManager.h @@ -243,14 +243,6 @@ class QuicStreamManager { return !writableStreams_.empty() || !writableControlStreams_.empty(); } - /* - * Returns if the current writable streams contains the given id. - */ - bool writableContains(StreamId streamId) const { - return writableStreams_.count(streamId) > 0 || - writableControlStreams_.count(streamId) > 0; - } - /* * Add a writable stream id. */ diff --git a/quic/state/test/QuicStreamFunctionsTest.cpp b/quic/state/test/QuicStreamFunctionsTest.cpp index c34b68f36..30965e2a7 100644 --- a/quic/state/test/QuicStreamFunctionsTest.cpp +++ b/quic/state/test/QuicStreamFunctionsTest.cpp @@ -1552,7 +1552,7 @@ TEST_F(QuicStreamFunctionsTest, RemovedClosedState) { EXPECT_FALSE(conn.streamManager->streamExists(streamId)); EXPECT_TRUE(conn.streamManager->readableStreams().empty()); EXPECT_TRUE(conn.streamManager->peekableStreams().empty()); - EXPECT_FALSE(conn.streamManager->writableContains(streamId)); + EXPECT_FALSE(writableContains(*conn.streamManager, streamId)); EXPECT_FALSE(conn.streamManager->hasBlocked()); EXPECT_FALSE(conn.streamManager->deliverableContains(streamId)); EXPECT_FALSE(conn.streamManager->hasLoss()); @@ -1970,18 +1970,18 @@ TEST_F(QuicStreamFunctionsTest, WritableList) { stream.flowControlState.peerAdvertisedMaxOffset = 200; conn.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(stream.conn.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*stream.conn.streamManager, id)); auto buf = IOBuf::create(100); buf->append(100); writeDataToQuicStream(stream, std::move(buf), false); conn.streamManager->updateWritableStreams(stream); - EXPECT_TRUE(stream.conn.streamManager->writableContains(id)); + EXPECT_TRUE(writableContains(*stream.conn.streamManager, id)); // Flow control stream.flowControlState.peerAdvertisedMaxOffset = stream.currentWriteOffset; conn.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(stream.conn.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*stream.conn.streamManager, id)); // Fin writeDataToQuicStream(stream, nullptr, true); @@ -1989,12 +1989,12 @@ TEST_F(QuicStreamFunctionsTest, WritableList) { stream.currentWriteOffset += 100; stream.flowControlState.peerAdvertisedMaxOffset = stream.currentWriteOffset; conn.streamManager->updateWritableStreams(stream); - EXPECT_TRUE(stream.conn.streamManager->writableContains(id)); + EXPECT_TRUE(writableContains(*stream.conn.streamManager, id)); // After Fin stream.currentWriteOffset++; conn.streamManager->updateWritableStreams(stream); - EXPECT_FALSE(stream.conn.streamManager->writableContains(id)); + EXPECT_FALSE(writableContains(*stream.conn.streamManager, id)); } TEST_F(QuicStreamFunctionsTest, AckCryptoStream) {