There was an error while loading. Please reload this page.
1 parent 3649a3a commit df60a5fCopy full SHA for df60a5f
gridfs/grid_file.py
@@ -511,7 +511,7 @@ def readline(self, size=-1):
511
for pos in xrange(len(chunk_data)):
512
byte = chunk_data[pos]
513
if byte == EMPTY or byte == NEWLN:
514
- size = received + pos
+ size = received + pos + 1
515
break
516
517
received += len(chunk_data)
test/test_grid_file.py
@@ -396,6 +396,7 @@ def test_readline(self):
396
Bye"""))
397
f.close()
398
399
+ # Try read(), then readline().
400
g = GridOut(self.db.fs, f._id)
401
self.assertEqual(b("H"), g.read(1))
402
self.assertEqual(b("ello world,\n"), g.readline())
@@ -406,6 +407,19 @@ def test_readline(self):
406
407
self.assertEqual(b("Bye"), g.readline())
408
self.assertEqual(b(""), g.readline())
409
410
+ # Try readline() first, then read().
411
+ g = GridOut(self.db.fs, f._id)
412
+ self.assertEqual(b("He"), g.readline(2))
413
+ self.assertEqual(b("l"), g.read(1))
414
+ self.assertEqual(b("lo"), g.readline(2))
415
+ self.assertEqual(b(" world,\n"), g.readline())
416
+
417
+ # Only readline().
418
419
+ self.assertEqual(b("H"), g.readline(1))
420
+ self.assertEqual(b("e"), g.readline(1))
421
+ self.assertEqual(b("llo world,\n"), g.readline())
422
423
def test_iterator(self):
424
f = GridIn(self.db.fs)
425
0 commit comments