Subject: python-autopep8 fails its test suite

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 26 Jun 2020 12:09:04 -0400

Hello,

I've seen this with a frehsly pulled Guix (commit
93ff6a40e4f4c7f5d7b8af558a537732b919d0ec):

======================================================================
FAIL: test_e501_experimental_decorator (test.test_autopep8.ExperimentalSystemTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-autopep8-1.3.5.drv-0/autopep8-1.3.5/test/test_autopep8.py", line 5847, in test_e501_experimental_decorator
    self.assertEqual(fixed, result)
AssertionError: "\n\n@foo(('xxxxxxxxxxxxxxxxxxxxxxxxxx', u[123 chars]))\n" != "@foo(('xxxxxxxxxxxxxxxxxxxxxxxxxx', users[119 chars]))\n"
- 
- 
  @foo(('xxxxxxxxxxxxxxxxxxxxxxxxxx', users.xxxxxxxxxxxxxxxxxxxxxxxxxx),
       ('yyyyyyyyyyyy', users.yyyyyyyyyyyy),
       ('zzzzzzzzzzzzzz', users.zzzzzzzzzzzzzz))

======================================================================
FAIL: test_e501_experimental_with_function_should_not_break_on_colon (test.test_autopep8.ExperimentalSystemTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-autopep8-1.3.5.drv-0/autopep8-1.3.5/test/test_autopep8.py", line 5451, in test_e501_experimental_with_function_should_not_break_on_colon
    self.assertEqual(fixed, result)
AssertionError: '\ncl[112 chars]et or(\n                widget.__class__ == Wi[88 chars]se\n' != '\ncl[112 chars]et or (\n                widget.__class__ == W[89 chars]se\n'
  
  class Useless(object):
  
      def _table_field_is_plain_widget(self, widget):
-         if widget.__class__ == Widget or(
+         if widget.__class__ == Widget or (
?                                         +
                  widget.__class__ == WidgetMeta and Widget in widget.__bases__):
              return True
  
          return False

======================================================================
FAIL: test_e501_more_aggressive_with_def (test.test_autopep8.SystemTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-autopep8-1.3.5.drv-0/autopep8-1.3.5/test/test_autopep8.py", line 3429, in test_e501_more_aggressive_with_def
    self.assertEqual(fixed, result)
AssertionError: '\n\ndef foobar(\n        sldfkjlsdfsdf,\n[179 chars]ss\n' != 'def foobar(\n        sldfkjlsdfsdf,\n    [175 chars]ss\n'
- 
- 
  def foobar(
          sldfkjlsdfsdf,
          kksdfsdfsf,
          sdfsdfsdf,
          sdfsdfkdk,
          szdfsdfsdf,
          sdfsdfsdfsdlkfjsdlf,
          sdfsdfddf,
          sdfsdfsfd,
          sdfsdfdsf):
      pass

----------------------------------------------------------------------
Ran 505 tests in 18.107s

FAILED (failures=3, skipped=4)
Test failed: <unittest.runner.TextTestResult run=505 errors=0 failures=3>
error: Test failed: <unittest.runner.TextTestResult run=505 errors=0 failures=3>
command "python" "-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "test" failed with status 1

Maxim