[Python-checkins] bpo-40287: Fix SpooledTemporaryFile.seek() return value (GH-19540)
Inada Naoki
webhook-mailer at python.org
Fri Apr 17 02:56:57 EDT 2020
https://github.com/python/cpython/commit/485e715cb1ff92bc9882cd51ec32589f9cb30503
commit: 485e715cb1ff92bc9882cd51ec32589f9cb30503
branch: master
author: Inada Naoki <songofacandy at gmail.com>
committer: GitHub <noreply at github.com>
date: 2020-04-17T15:56:35+09:00
summary:
bpo-40287: Fix SpooledTemporaryFile.seek() return value (GH-19540)
It has not returned the file position after the seek.
files:
A Misc/NEWS.d/next/Library/2020-04-15-17-21-48.bpo-40287.-mkEJH.rst
M Lib/tempfile.py
M Lib/test/test_tempfile.py
diff --git a/Lib/tempfile.py b/Lib/tempfile.py
index ed15c0fd1f8af..ba04be8f9058e 100644
--- a/Lib/tempfile.py
+++ b/Lib/tempfile.py
@@ -738,7 +738,7 @@ def readlines(self, *args):
return self._file.readlines(*args)
def seek(self, *args):
- self._file.seek(*args)
+ return self._file.seek(*args)
def tell(self):
return self._file.tell()
diff --git a/Lib/test/test_tempfile.py b/Lib/test/test_tempfile.py
index f4cba0fa8dcf1..69d5de2e1b95f 100644
--- a/Lib/test/test_tempfile.py
+++ b/Lib/test/test_tempfile.py
@@ -1018,7 +1018,8 @@ def test_writelines(self):
# Verify writelines with a SpooledTemporaryFile
f = self.do_create()
f.writelines((b'x', b'y', b'z'))
- f.seek(0)
+ pos = f.seek(0)
+ self.assertEqual(pos, 0)
buf = f.read()
self.assertEqual(buf, b'xyz')
@@ -1036,7 +1037,8 @@ def test_sparse(self):
# when that occurs
f = self.do_create(max_size=30)
self.assertFalse(f._rolled)
- f.seek(100, 0)
+ pos = f.seek(100, 0)
+ self.assertEqual(pos, 100)
self.assertFalse(f._rolled)
f.write(b'x')
self.assertTrue(f._rolled)
diff --git a/Misc/NEWS.d/next/Library/2020-04-15-17-21-48.bpo-40287.-mkEJH.rst b/Misc/NEWS.d/next/Library/2020-04-15-17-21-48.bpo-40287.-mkEJH.rst
new file mode 100644
index 0000000000000..d4db192b71076
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2020-04-15-17-21-48.bpo-40287.-mkEJH.rst
@@ -0,0 +1 @@
+Fixed ``SpooledTemporaryFile.seek()`` to return the position.
More information about the Python-checkins
mailing list