mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-08-08 09:42:06 +03:00
QuicTransportBase: Allow notifyPendingWriteOnStream (#18)
Summary:
When a write callback x is already defined for a stream
and notifyPendingWriteOnStream is called with the same callback x,
it is safe to not return an error.
Building on master is currently broken due to 2040a13e40 (diff-ddd35d436da215e41b89fd5afe4acebbR11)
, but this commit builds when rebased before that.
udippant
Pull Request resolved: https://github.com/facebookincubator/mvfst/pull/18
Reviewed By: yangchi
Differential Revision: D15562893
Pulled By: afrind
fbshipit-source-id: 44e62bb9bb0002508257acdc419f20bcb973ca64
This commit is contained in:
committed by
Facebook Github Bot
parent
0b677465d0
commit
7d58058b8f
@@ -1214,6 +1214,17 @@ TEST_P(QuicTransportImplTestClose, TestNotifyPendingConnWriteOnCloseWithError) {
|
||||
evb->loopOnce();
|
||||
}
|
||||
|
||||
TEST_F(QuicTransportImplTest, TestNotifyPendingWriteWithActiveCallback) {
|
||||
auto stream = transport->createBidirectionalStream().value();
|
||||
MockWriteCallback wcb;
|
||||
EXPECT_CALL(wcb, onStreamWriteReady(stream, _));
|
||||
auto ok1 = transport->notifyPendingWriteOnStream(stream, &wcb);
|
||||
EXPECT_TRUE(ok1.hasValue());
|
||||
auto ok2 = transport->notifyPendingWriteOnStream(stream, &wcb);
|
||||
EXPECT_EQ(ok2.error(), quic::LocalErrorCode::CALLBACK_ALREADY_INSTALLED);
|
||||
evb->loopOnce();
|
||||
}
|
||||
|
||||
TEST_F(QuicTransportImplTest, TestNotifyPendingWriteOnCloseWithoutError) {
|
||||
auto stream = transport->createBidirectionalStream().value();
|
||||
MockWriteCallback wcb;
|
||||
|
Reference in New Issue
Block a user