Rémi Lapeyre <[email protected]> added the comment:
I checked and FunctionTestCase seems to completely break the loader. The tests
for FunctionTestCase in the standard library instantiate the class from inside
the method of a TestCase so the loader never see them but even the simple test
file I attached completely breaks:
✗ python3 -m unittest
E
======================================================================
Traceback (most recent call last):
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/runpy.py",
line 193, in _run_module_as_main
return _run_code(code, main_globals, None,
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/runpy.py",
line 86, in _run_code
exec(code, run_globals)
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/__main__.py",
line 18, in <module>
main(module=None)
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/main.py",
line 101, in __init__
self.runTests()
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/main.py",
line 271, in runTests
self.result = testRunner.run(self.test)
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/runner.py",
line 183, in run
result.printErrors()
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/runner.py",
line 109, in printErrors
self.printErrorList('ERROR', self.errors)
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/runner.py",
line 115, in printErrorList
self.stream.writeln("%s: %s" % (flavour,self.getDescription(test)))
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/runner.py",
line 47, in getDescription
return '\n'.join((str(test), doc_first_line))
File
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/unittest/case.py",
line 1472, in __str__
self._testFunc.__name__)
AttributeError: 'str' object has no attribute '__name__'
I look at plenty of usages of FunctionTestCase on Github and all of them seemed
to be false positive, they were copies of the
unittest/test/test_functiontestcase.py file
The patch in the attached PR is not correct thought, it only fixes one of the
loader and all of them suffer from the same issue.
----------
versions: +Python 3.10
Added file: https://bugs.python.org/file49196/test_functiontest.py
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue40690>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com