byroot / pysrt

Python parser for SubRip (srt) files
GNU General Public License v3.0
446 stars 67 forks source link

pysrt fails to build with Python 3.11.0a1 #89

Closed jorti closed 2 years ago

jorti commented 2 years ago

When running the tests with Python 3.11.0a1, some of them fail. See the original bug report in Fedora:

https://bugzilla.redhat.com/show_bug.cgi?id=2019401

======================================================================
ERROR: test_junk_after_timestamp (tests.test_srtitem.TestSerialAndParsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtitem.py", line 210, in test_junk_after_timestamp
    self.assertEquals(item, self.item)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestSerialAndParsing' object has no attribute 'assertEquals'

======================================================================
ERROR: test_no_index (tests.test_srtitem.TestSerialAndParsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtitem.py", line 205, in test_no_index
    self.assertEquals(item.index, None)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestSerialAndParsing' object has no attribute 'assertEquals'

======================================================================
ERROR: test_string_index (tests.test_srtitem.TestSerialAndParsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtitem.py", line 200, in test_string_index
    self.assertEquals(item.index, 'foo')
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestSerialAndParsing' object has no attribute 'assertEquals'

======================================================================
ERROR: test_missing_indexes (tests.test_srtfile.TestIntegration)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtfile.py", line 254, in test_missing_indexes
    self.assertEquals(len(items), 7)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestIntegration' object has no attribute 'assertEquals'

======================================================================
ERROR: test_at (tests.test_srtfile.TestSlice)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtfile.py", line 120, in test_at
    self.assertEquals(len(self.file.at((0, 0, 31, 0))), 1)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestSlice' object has no attribute 'assertEquals'

======================================================================
ERROR: test_multiple_item (tests.test_srtfile.TestText)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtfile.py", line 147, in test_multiple_item
    self.assertEquals(srt_file.text, 'Hello\nWorld !')
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestText' object has no attribute 'assertEquals'

======================================================================
ERROR: test_single_item (tests.test_srtfile.TestText)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/pysrt-1.1.2/tests/test_srtfile.py", line 140, in test_single_item
    self.assertEquals(srt_file.text, 'Hello')
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestText' object has no attribute 'assertEquals'

----------------------------------------------------------------------
Ran 75 tests in 0.442s

FAILED (errors=7)
Test failed: <unittest.runner.TextTestResult run=75 errors=7 failures=0>
error: Test failed: <unittest.runner.TextTestResult run=75 errors=7 failures=0>

Removed many old deprecated unittest features: TestCase method aliases failUnlessEqual, failIfEqual, failUnless, failIf, failUnlessRaises, failUnlessAlmostEqual, failIfAlmostEqual (deprecated in Python 3.1), assertEquals, assertNotEquals, assert_, assertAlmostEquals, assertNotAlmostEquals, assertRegexpMatches, assertRaisesRegexp (deprecated in Python 3.2), and assertNotRegexpMatches (deprecated in Python 3.5).

https://bugs.python.org/issue45162 https://docs.python.org/3.11/whatsnew/3.11.html