Skip to content

Commit 45fca97

Browse files
authored
test: fix a testing issue with SO_LINGER where the server's buffer was full and the client was hanging. (#22)
1 parent b88dfd7 commit 45fca97

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

test/test.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,13 +334,22 @@ def test_auto_flush_on_closed_socket(self):
334334
sender.row('tbl1', symbols={'a': 'b'})
335335

336336
def test_dont_auto_flush(self):
337+
msg_counter = 0
337338
with Server() as server:
338339
with qi.Sender('localhost', server.port, auto_flush=0) as sender:
339340
server.accept()
340-
while len(sender) < 131072: # 128KiB
341+
while len(sender) < 32768: # 32KiB
341342
sender.row('tbl1', symbols={'sym1': 'val1'})
343+
msg_counter += 1
342344
msgs = server.recv()
343345
self.assertEqual(msgs, [])
346+
start = time.monotonic()
347+
msgs = []
348+
while len(msgs) < msg_counter:
349+
msgs += server.recv()
350+
elapsed = time.monotonic() - start
351+
if elapsed > 30.0:
352+
raise TimeoutError()
344353

345354
def test_dont_flush_on_exception(self):
346355
with Server() as server:

0 commit comments

Comments
 (0)