mirror of https://github.com/python/cpython
Issue #15204: Silence and check the 'U' mode deprecation warnings in tests.
Changed deprecation message in the fileinput module.
This commit is contained in:
parent
ed8c906127
commit
2480c2ed59
|
@ -224,7 +224,7 @@ class FileInput:
|
|||
"'r', 'rU', 'U' and 'rb'")
|
||||
if 'U' in mode:
|
||||
import warnings
|
||||
warnings.warn("Use of 'U' mode is deprecated",
|
||||
warnings.warn("'U' mode is deprecated",
|
||||
DeprecationWarning, 2)
|
||||
self._mode = mode
|
||||
if openhook:
|
||||
|
|
|
@ -602,7 +602,9 @@ class UTF16Test(ReadTest, unittest.TestCase):
|
|||
self.addCleanup(support.unlink, support.TESTFN)
|
||||
with open(support.TESTFN, 'wb') as fp:
|
||||
fp.write(s)
|
||||
with codecs.open(support.TESTFN, 'U', encoding=self.encoding) as reader:
|
||||
with support.check_warnings(('', DeprecationWarning)):
|
||||
reader = codecs.open(support.TESTFN, 'U', encoding=self.encoding)
|
||||
with reader:
|
||||
self.assertEqual(reader.read(), s1)
|
||||
|
||||
class UTF16LETest(ReadTest, unittest.TestCase):
|
||||
|
|
|
@ -22,7 +22,7 @@ except ImportError:
|
|||
from io import StringIO
|
||||
from fileinput import FileInput, hook_encoded
|
||||
|
||||
from test.support import verbose, TESTFN, run_unittest
|
||||
from test.support import verbose, TESTFN, run_unittest, check_warnings
|
||||
from test.support import unlink as safe_unlink
|
||||
|
||||
|
||||
|
@ -224,8 +224,10 @@ class FileInputTests(unittest.TestCase):
|
|||
try:
|
||||
# try opening in universal newline mode
|
||||
t1 = writeTmp(1, [b"A\nB\r\nC\rD"], mode="wb")
|
||||
fi = FileInput(files=t1, mode="U")
|
||||
lines = list(fi)
|
||||
with check_warnings(('', DeprecationWarning)):
|
||||
fi = FileInput(files=t1, mode="U")
|
||||
with check_warnings(('', DeprecationWarning)):
|
||||
lines = list(fi)
|
||||
self.assertEqual(lines, ["A\n", "B\n", "C\n", "D"])
|
||||
finally:
|
||||
remove_tempfiles(t1)
|
||||
|
|
|
@ -2777,7 +2777,8 @@ class MiscIOTest(unittest.TestCase):
|
|||
self.assertEqual(f.mode, "wb")
|
||||
f.close()
|
||||
|
||||
f = self.open(support.TESTFN, "U")
|
||||
with support.check_warnings(('', DeprecationWarning)):
|
||||
f = self.open(support.TESTFN, "U")
|
||||
self.assertEqual(f.name, support.TESTFN)
|
||||
self.assertEqual(f.buffer.name, support.TESTFN)
|
||||
self.assertEqual(f.buffer.raw.name, support.TESTFN)
|
||||
|
|
|
@ -14,7 +14,7 @@ from random import randint, random, getrandbits
|
|||
|
||||
from test.support import (TESTFN, findfile, unlink,
|
||||
requires_zlib, requires_bz2, requires_lzma,
|
||||
captured_stdout)
|
||||
captured_stdout, check_warnings)
|
||||
|
||||
TESTFN2 = TESTFN + "2"
|
||||
TESTFNDIR = TESTFN + "d"
|
||||
|
@ -35,6 +35,10 @@ def get_files(test):
|
|||
yield f
|
||||
test.assertFalse(f.closed)
|
||||
|
||||
def openU(zipfp, fn):
|
||||
with check_warnings(('', DeprecationWarning)):
|
||||
return zipfp.open(fn, 'rU')
|
||||
|
||||
class AbstractTestsWithSourceFile:
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
|
@ -875,6 +879,17 @@ class OtherTests(unittest.TestCase):
|
|||
data += zipfp.read(info)
|
||||
self.assertIn(data, {b"foobar", b"barfoo"})
|
||||
|
||||
def test_universal_deprecation(self):
|
||||
f = io.BytesIO()
|
||||
with zipfile.ZipFile(f, "w") as zipfp:
|
||||
zipfp.writestr('spam.txt', b'ababagalamaga')
|
||||
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for mode in 'U', 'rU':
|
||||
with self.assertWarns(DeprecationWarning):
|
||||
zipopen = zipfp.open('spam.txt', mode)
|
||||
zipopen.close()
|
||||
|
||||
def test_universal_readaheads(self):
|
||||
f = io.BytesIO()
|
||||
|
||||
|
@ -884,7 +899,7 @@ class OtherTests(unittest.TestCase):
|
|||
|
||||
data2 = b''
|
||||
with zipfile.ZipFile(f, 'r') as zipfp, \
|
||||
zipfp.open(TESTFN, 'rU') as zipopen:
|
||||
openU(zipfp, TESTFN) as zipopen:
|
||||
for line in zipopen:
|
||||
data2 += line
|
||||
|
||||
|
@ -1613,7 +1628,7 @@ class AbstractUniversalNewlineTests:
|
|||
# Read the ZIP archive
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for sep, fn in self.arcfiles.items():
|
||||
with zipfp.open(fn, "rU") as fp:
|
||||
with openU(zipfp, fn) as fp:
|
||||
zipdata = fp.read()
|
||||
self.assertEqual(self.arcdata[sep], zipdata)
|
||||
|
||||
|
@ -1627,7 +1642,7 @@ class AbstractUniversalNewlineTests:
|
|||
# Read the ZIP archive
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for sep, fn in self.arcfiles.items():
|
||||
with zipfp.open(fn, "rU") as zipopen:
|
||||
with openU(zipfp, fn) as zipopen:
|
||||
data = b''
|
||||
while True:
|
||||
read = zipopen.readline()
|
||||
|
@ -1652,7 +1667,7 @@ class AbstractUniversalNewlineTests:
|
|||
# Read the ZIP archive
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for sep, fn in self.arcfiles.items():
|
||||
with zipfp.open(fn, "rU") as zipopen:
|
||||
with openU(zipfp, fn) as zipopen:
|
||||
for line in self.line_gen:
|
||||
linedata = zipopen.readline()
|
||||
self.assertEqual(linedata, line + b'\n')
|
||||
|
@ -1667,7 +1682,7 @@ class AbstractUniversalNewlineTests:
|
|||
# Read the ZIP archive
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for sep, fn in self.arcfiles.items():
|
||||
with zipfp.open(fn, "rU") as fp:
|
||||
with openU(zipfp, fn) as fp:
|
||||
ziplines = fp.readlines()
|
||||
for line, zipline in zip(self.line_gen, ziplines):
|
||||
self.assertEqual(zipline, line + b'\n')
|
||||
|
@ -1682,7 +1697,7 @@ class AbstractUniversalNewlineTests:
|
|||
# Read the ZIP archive
|
||||
with zipfile.ZipFile(f, "r") as zipfp:
|
||||
for sep, fn in self.arcfiles.items():
|
||||
with zipfp.open(fn, "rU") as fp:
|
||||
with openU(zipfp, fn) as fp:
|
||||
for line, zipline in zip(self.line_gen, fp):
|
||||
self.assertEqual(zipline, line + b'\n')
|
||||
|
||||
|
|
Loading…
Reference in New Issue