classification
Title: unittest.TestLoader().loadTestsFromTestCase(...) fails when adding test cases with the expectedFailure decorator
Type: behavior Stage:
Components: Tests Versions: Python 2.7
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: Erasmus Cedernaes, ezio.melotti, kwarunek, michael.foord, rbcollins
Priority: normal Keywords:

Created on 2017-09-27 08:16 by Erasmus Cedernaes, last changed 2018-07-11 06:51 by serhiy.storchaka.

Files
File name Uploaded Description Edit
mwe.py Erasmus Cedernaes, 2017-09-27 08:16 Minimum working example
Messages (2)
msg303112 - (view) Author: Erasmus Cedernaes (Erasmus Cedernaes) Date: 2017-09-27 08:16
How to reproduce:
* Run the attached file with Python 2.7 without any modifications. This will produce an error, as described below.
* Uncomment line 2 (the decorator @unittest.expectedFailure) and run the file with Python 2.7. This will not produce an error.

Description:
Adding the decorator @unittest.expectedFailure to a unittest.TestCase causes the TestLoader().loadTestsFromTestCase(...) to fail with the following output:

===============================================================
$ python2.7 mwe.py
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "[...]/mwe.py", line 12, in <module>
    tests = unittest.TestLoader().loadTestsFromTestCase(TestClassThatFails)
  File "/usr/lib/python2.7/unittest/loader.py", line 50, in loadTestsFromTestCase
    if issubclass(testCaseClass, suite.TestSuite):
TypeError: issubclass() arg 1 must be a class
==============================================================

The error does only occur when adding the test manually to a test suite. Running unittest.main(), does not produce the error.
msg303282 - (view) Author: Krzysztof Warunek (kwarunek) * Date: 2017-09-28 21:53
AFAIK this helper is meant to be used with test function not the TestCases.
History
Date User Action Args
2018-07-11 06:51:31serhiy.storchakasettype: crash -> behavior
2017-11-04 09:25:27berker.peksagsetnosy: + rbcollins, ezio.melotti, michael.foord
2017-09-28 21:53:12kwaruneksetnosy: + kwarunek
messages: + msg303282
2017-09-27 08:16:44Erasmus Cedernaescreate