summaryrefslogtreecommitdiff
path: root/Lib/test
diff options
context:
space:
mode:
authorHugo van Kemenade <hugovk@users.noreply.github.com>2021-09-08 13:07:40 +0300
committerGitHub <noreply@github.com>2021-09-08 13:07:40 +0300
commitd003a5bd2505a7fa04f50504b68ba8fca67349cd (patch)
tree530dacbc66f083a0ecfcad123bab220cb6796bb5 /Lib/test
parentcb15afcccffc6c42cbfb7456ce8db89cd2f77512 (diff)
downloadcpython-git-d003a5bd2505a7fa04f50504b68ba8fca67349cd.tar.gz
bpo-45132 Remove deprecated __getitem__ methods (GH-28225)
Remove deprecated __getitem__ methods of xml.dom.pulldom.DOMEventStream, wsgiref.util.FileWrapper and fileinput.FileInput, deprecated since Python 3.9.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_fileinput.py39
-rw-r--r--Lib/test/test_pulldom.py7
-rw-r--r--Lib/test/test_wsgiref.py48
3 files changed, 12 insertions, 82 deletions
diff --git a/Lib/test/test_fileinput.py b/Lib/test/test_fileinput.py
index 31684aefdb..819200010a 100644
--- a/Lib/test/test_fileinput.py
+++ b/Lib/test/test_fileinput.py
@@ -29,7 +29,6 @@ from test.support import verbose
from test.support.os_helper import TESTFN
from test.support.os_helper import unlink as safe_unlink
from test.support import os_helper
-from test.support import warnings_helper
from test import support
from unittest import mock
@@ -357,44 +356,6 @@ class FileInputTests(BaseTests, unittest.TestCase):
with FileInput(files=[], encoding="utf-8") as fi:
self.assertEqual(fi._files, ('-',))
- @warnings_helper.ignore_warnings(category=DeprecationWarning)
- def test__getitem__(self):
- """Tests invoking FileInput.__getitem__() with the current
- line number"""
- t = self.writeTmp("line1\nline2\n")
- with FileInput(files=[t], encoding="utf-8") as fi:
- retval1 = fi[0]
- self.assertEqual(retval1, "line1\n")
- retval2 = fi[1]
- self.assertEqual(retval2, "line2\n")
-
- def test__getitem___deprecation(self):
- t = self.writeTmp("line1\nline2\n")
- with self.assertWarnsRegex(DeprecationWarning,
- r'Use iterator protocol instead'):
- with FileInput(files=[t]) as fi:
- self.assertEqual(fi[0], "line1\n")
-
- @warnings_helper.ignore_warnings(category=DeprecationWarning)
- def test__getitem__invalid_key(self):
- """Tests invoking FileInput.__getitem__() with an index unequal to
- the line number"""
- t = self.writeTmp("line1\nline2\n")
- with FileInput(files=[t], encoding="utf-8") as fi:
- with self.assertRaises(RuntimeError) as cm:
- fi[1]
- self.assertEqual(cm.exception.args, ("accessing lines out of order",))
-
- @warnings_helper.ignore_warnings(category=DeprecationWarning)
- def test__getitem__eof(self):
- """Tests invoking FileInput.__getitem__() with the line number but at
- end-of-input"""
- t = self.writeTmp('')
- with FileInput(files=[t], encoding="utf-8") as fi:
- with self.assertRaises(IndexError) as cm:
- fi[0]
- self.assertEqual(cm.exception.args, ("end of input reached",))
-
def test_nextfile_oserror_deleting_backup(self):
"""Tests invoking FileInput.nextfile() when the attempt to delete
the backup file would raise OSError. This error is expected to be
diff --git a/Lib/test/test_pulldom.py b/Lib/test/test_pulldom.py
index 4a1bad3442..6dc51e4371 100644
--- a/Lib/test/test_pulldom.py
+++ b/Lib/test/test_pulldom.py
@@ -160,13 +160,6 @@ class PullDOMTestCase(unittest.TestCase):
self.fail(
"Ran out of events, but should have received END_DOCUMENT")
- def test_getitem_deprecation(self):
- parser = pulldom.parseString(SMALL_SAMPLE)
- with self.assertWarnsRegex(DeprecationWarning,
- r'Use iterator protocol instead'):
- # This should have returned 'END_ELEMENT'.
- self.assertEqual(parser[-1][0], pulldom.START_DOCUMENT)
-
def test_external_ges_default(self):
parser = pulldom.parseString(SMALL_SAMPLE)
saxparser = parser.parser
diff --git a/Lib/test/test_wsgiref.py b/Lib/test/test_wsgiref.py
index 93ca6b99a9..cf40e5a5c8 100644
--- a/Lib/test/test_wsgiref.py
+++ b/Lib/test/test_wsgiref.py
@@ -1,7 +1,6 @@
from unittest import mock
from test import support
from test.support import socket_helper
-from test.support import warnings_helper
from test.test_httpservers import NoLogRequestHandler
from unittest import TestCase
from wsgiref.util import setup_testing_defaults
@@ -81,41 +80,26 @@ def run_amock(app=hello_app, data=b"GET / HTTP/1.0\n\n"):
return out.getvalue(), err.getvalue()
-def compare_generic_iter(make_it,match):
- """Utility to compare a generic 2.1/2.2+ iterator with an iterable
- If running under Python 2.2+, this tests the iterator using iter()/next(),
- as well as __getitem__. 'make_it' must be a function returning a fresh
+def compare_generic_iter(make_it, match):
+ """Utility to compare a generic iterator with an iterable
+
+ This tests the iterator using iter()/next().
+ 'make_it' must be a function returning a fresh
iterator to be tested (since this may test the iterator twice)."""
it = make_it()
- n = 0
+ if not iter(it) is it:
+ raise AssertionError
for item in match:
- if not it[n]==item: raise AssertionError
- n+=1
+ if not next(it) == item:
+ raise AssertionError
try:
- it[n]
- except IndexError:
+ next(it)
+ except StopIteration:
pass
else:
- raise AssertionError("Too many items from __getitem__",it)
-
- try:
- iter, StopIteration
- except NameError:
- pass
- else:
- # Only test iter mode under 2.2+
- it = make_it()
- if not iter(it) is it: raise AssertionError
- for item in match:
- if not next(it) == item: raise AssertionError
- try:
- next(it)
- except StopIteration:
- pass
- else:
- raise AssertionError("Too many items from .__next__()", it)
+ raise AssertionError("Too many items from .__next__()", it)
class IntegrationTests(TestCase):
@@ -340,7 +324,6 @@ class UtilityTests(TestCase):
util.setup_testing_defaults(kw)
self.assertEqual(util.request_uri(kw,query),uri)
- @warnings_helper.ignore_warnings(category=DeprecationWarning)
def checkFW(self,text,size,match):
def make_it(text=text,size=size):
@@ -359,13 +342,6 @@ class UtilityTests(TestCase):
it.close()
self.assertTrue(it.filelike.closed)
- def test_filewrapper_getitem_deprecation(self):
- wrapper = util.FileWrapper(StringIO('foobar'), 3)
- with self.assertWarnsRegex(DeprecationWarning,
- r'Use iterator protocol instead'):
- # This should have returned 'bar'.
- self.assertEqual(wrapper[1], 'foo')
-
def testSimpleShifts(self):
self.checkShift('','/', '', '/', '')
self.checkShift('','/x', 'x', '/x', '')