https://github.com/python/cpython/commit/ed75160b73ee850103ccc55d4124b16424b9c002
commit: ed75160b73ee850103ccc55d4124b16424b9c002
branch: main
author: Cody Maloney <[email protected]>
committer: vstinner <[email protected]>
date: 2025-09-16T10:37:28+02:00
summary:

gh-138013: Remove load_tests in test_io.test_general (#138771)

Rely on default test discovery.

Validation:
```bash
 # Run before commit
./python -m test test_io -uall,walltime,largefile,cpu,extralargefile -M25G -o 
--fail-env-changed -j0 --list-cases | sort > old_cases.txt
 # Run after commit
./python -m test test_io -uall,walltime,largefile,cpu,extralargefile -M25G -o 
--fail-env-changed -j0 --list-cases | sort > new_cases.txt

diff new_cases.txt old_cases.
 # <outputs no changes in case list>
```

files:
M Lib/test/test_io/test_general.py

diff --git a/Lib/test/test_io/test_general.py b/Lib/test/test_io/test_general.py
index c450f957ab69b7..c2f0e1877a6901 100644
--- a/Lib/test/test_io/test_general.py
+++ b/Lib/test/test_io/test_general.py
@@ -49,7 +49,7 @@ def __index__(self):
         1/0
 
 
-class IOTest(unittest.TestCase):
+class IOTest:
 
     def setUp(self):
         os_helper.unlink(os_helper.TESTFN)
@@ -2535,7 +2535,7 @@ def test_decoder(self):
         self.assertEqual(d.decode(b'oiabcd'), '')
         self.assertEqual(d.decode(b'', 1), 'abcd.')
 
-class TextIOWrapperTest(unittest.TestCase):
+class TextIOWrapperTest:
 
     def setUp(self):
         self.testdata = b"AAA\r\nBBB\rCCC\r\nDDD\nEEE\r\n"
@@ -3893,7 +3893,7 @@ class PyTextIOWrapperTest(TextIOWrapperTest, PyTestCase):
     shutdown_error = "LookupError: unknown encoding: ascii"
 
 
-class IncrementalNewlineDecoderTest(unittest.TestCase):
+class IncrementalNewlineDecoderTest:
 
     def check_newline_decoding_utf8(self, decoder):
         # UTF-8 specific tests for a newline decoder
@@ -4010,7 +4010,7 @@ def test_translate(self):
         decoder = self.IncrementalNewlineDecoder(decoder, translate=0)
         self.assertEqual(decoder.decode(b"\r\r\n"), "\r\r\n")
 
-class CIncrementalNewlineDecoderTest(IncrementalNewlineDecoderTest):
+class CIncrementalNewlineDecoderTest(IncrementalNewlineDecoderTest, 
unittest.TestCase):
     IncrementalNewlineDecoder = io.IncrementalNewlineDecoder
 
     @support.cpython_only
@@ -4023,13 +4023,13 @@ def test_uninitialized(self):
         self.assertRaises(ValueError, uninitialized.reset)
 
 
-class PyIncrementalNewlineDecoderTest(IncrementalNewlineDecoderTest):
+class PyIncrementalNewlineDecoderTest(IncrementalNewlineDecoderTest, 
unittest.TestCase):
     IncrementalNewlineDecoder = pyio.IncrementalNewlineDecoder
 
 
 # XXX Tests for open()
 
-class MiscIOTest(unittest.TestCase):
+class MiscIOTest:
 
     # for test__all__, actual values are set in subclasses
     name_of_module = None
@@ -4465,7 +4465,7 @@ class PyMiscIOTest(MiscIOTest, PyTestCase):
 
 
 @unittest.skipIf(os.name == 'nt', 'POSIX signals required for this test.')
-class SignalsTest(unittest.TestCase):
+class SignalsTest:
 
     def setUp(self):
         self.oldalrm = signal.signal(signal.SIGALRM, self.alarm_interrupt)
@@ -4749,24 +4749,5 @@ def test_writer_subclass(self):
         self.assertNotIsSubclass(str, io.Writer)
 
 
-def load_tests(loader, tests, pattern):
-    tests = (CIOTest, PyIOTest, APIMismatchTest,
-             CBufferedReaderTest, PyBufferedReaderTest,
-             CBufferedWriterTest, PyBufferedWriterTest,
-             CBufferedRWPairTest, PyBufferedRWPairTest,
-             CBufferedRandomTest, PyBufferedRandomTest,
-             StatefulIncrementalDecoderTest,
-             CIncrementalNewlineDecoderTest, PyIncrementalNewlineDecoderTest,
-             CTextIOWrapperTest, PyTextIOWrapperTest,
-             CMiscIOTest, PyMiscIOTest,
-             CSignalsTest, PySignalsTest, TestIOCTypes,
-             ProtocolsTest,
-             )
-
-    suite = loader.suiteClass()
-    for test in tests:
-        suite.addTest(loader.loadTestsFromTestCase(test))
-    return suite
-
 if __name__ == "__main__":
     unittest.main()

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to