Skip to content

Commit b767ab6

Browse files
author
Forest
committed
imaplib test: post-done untagged response
1 parent fc8b6f4 commit b767ab6

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

Lib/test/test_imaplib.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,7 @@ def cmd_IDLE(self, tag, args):
227227
self._send_line(b'* 1 RECENT')
228228
r = yield
229229
if r == b'DONE\r\n':
230+
self._send_line(b'* 9 RECENT')
230231
self._send_tagged(tag, 'OK', 'Idle completed')
231232
else:
232233
self._send_tagged(tag, 'BAD', 'Expected DONE')
@@ -552,9 +553,11 @@ def test_idle_iter(self):
552553
# iteration should have consumed untagged responses
553554
_, data = client.response('EXISTS')
554555
self.assertEqual(data, [None])
555-
# responses not iterated should remain after idle
556+
# responses not iterated should be available after idle
556557
_, data = client.response('RECENT')
557-
self.assertEqual(data, [b'1'])
558+
self.assertEqual(data[0], b'1')
559+
# responses received after 'DONE' should be available after idle
560+
self.assertEqual(data[1], b'9')
558561

559562
def test_idle_burst(self):
560563
client, _ = self._setup(IdleCmdHandler)
@@ -565,7 +568,7 @@ def test_idle_burst(self):
565568
self.assertEqual(len(batch), 4)
566569
# burst() should not have consumed later responses
567570
_, data = client.response('RECENT')
568-
self.assertEqual(data, [b'1'])
571+
self.assertEqual(data, [b'1', b'9'])
569572

570573
def test_login(self):
571574
client, _ = self._setup(SimpleIMAPHandler)

0 commit comments

Comments
 (0)