Skip to content

Commit 3be40bd

Browse files
committed
Add tests for computed flow control write limits
1 parent fad0674 commit 3be40bd

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

Lib/test/test_asyncio/test_transports.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,34 @@ def get_write_buffer_size(self):
9898
self.assertTrue(transport._protocol_paused)
9999
self.assertEqual(transport.get_write_buffer_limits(), (128, 256))
100100

101+
def test_flowcontrol_mixin_compute_write_limits(self):
102+
103+
class MyTransport(transports._FlowControlMixin,
104+
transports.Transport):
105+
106+
def get_write_buffer_size(self):
107+
return 0
108+
109+
loop = mock.Mock()
110+
transport = MyTransport(loop=loop)
111+
112+
self.assertEqual(
113+
transport.get_write_buffer_limits(),
114+
(16 * 1024, 64 * 1024)
115+
)
116+
117+
transport.set_write_buffer_limits(low=100)
118+
self.assertEqual(
119+
transport.get_write_buffer_limits(),
120+
(100, 400)
121+
)
122+
123+
transport.set_write_buffer_limits(high=200)
124+
self.assertEqual(
125+
transport.get_write_buffer_limits(),
126+
(50, 200)
127+
)
128+
101129

102130
if __name__ == '__main__':
103131
unittest.main()

0 commit comments

Comments
 (0)