This repository was archived by the owner on Nov 23, 2017. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +19
-0
lines changed Expand file tree Collapse file tree 2 files changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -293,6 +293,10 @@ def feed_eof(self):
293
293
if not waiter .cancelled ():
294
294
waiter .set_result (True )
295
295
296
+ def at_eof (self ):
297
+ """Return True if the buffer is empty and 'feed_eof' was called."""
298
+ return self ._eof and not self ._buffer
299
+
296
300
def feed_data (self , data ):
297
301
assert not self ._eof , 'feed_data after feed_eof'
298
302
Original file line number Diff line number Diff line change @@ -204,6 +204,21 @@ def test_readline_limit_with_existing_data(self):
204
204
# expected to be empty now.
205
205
self .assertEqual (b'' , stream ._buffer )
206
206
207
+ def test_at_eof (self ):
208
+ stream = asyncio .StreamReader (loop = self .loop )
209
+ self .assertFalse (stream .at_eof ())
210
+
211
+ stream .feed_data (b'some data\n ' )
212
+ self .assertFalse (stream .at_eof ())
213
+
214
+ self .loop .run_until_complete (stream .readline ())
215
+ self .assertFalse (stream .at_eof ())
216
+
217
+ stream .feed_data (b'some data\n ' )
218
+ stream .feed_eof ()
219
+ self .loop .run_until_complete (stream .readline ())
220
+ self .assertTrue (stream .at_eof ())
221
+
207
222
def test_readline_limit (self ):
208
223
# Read one line. StreamReaders are fed with data after
209
224
# their 'readline' methods are called.
You can’t perform that action at this time.
0 commit comments