diff options
author | Bruno Oliveira <nicoddemus@gmail.com> | 2019-01-31 20:24:11 -0200 |
---|---|---|
committer | Bruno Oliveira <nicoddemus@gmail.com> | 2019-01-31 20:24:11 -0200 |
commit | c3d734054241f69220070ce6d4cb00db4acc50c6 (patch) | |
tree | cf1b97739d61d9b3666ddd6a2bc89e2fa2196e21 /testing/example_scripts | |
parent | 7dcd9bf5add337686ec6f2ee81b24e8424319dba (diff) | |
download | pytest-c3d734054241f69220070ce6d4cb00db4acc50c6.tar.gz |
Fix setUpClass being called in subclasses that were skipped
Fix #4700
Diffstat (limited to 'testing/example_scripts')
3 files changed, 39 insertions, 0 deletions
diff --git a/testing/example_scripts/unittest/test_setup_skip.py b/testing/example_scripts/unittest/test_setup_skip.py new file mode 100644 index 000000000..93f79bb3b --- /dev/null +++ b/testing/example_scripts/unittest/test_setup_skip.py @@ -0,0 +1,13 @@ +"""Skipping an entire subclass with unittest.skip() should *not* call setUp from a base class.""" +import unittest + + +class Base(unittest.TestCase): + def setUp(self): + assert 0 + + +@unittest.skip("skip all tests") +class Test(Base): + def test_foo(self): + assert 0 diff --git a/testing/example_scripts/unittest/test_setup_skip_class.py b/testing/example_scripts/unittest/test_setup_skip_class.py new file mode 100644 index 000000000..4f251dcba --- /dev/null +++ b/testing/example_scripts/unittest/test_setup_skip_class.py @@ -0,0 +1,14 @@ +"""Skipping an entire subclass with unittest.skip() should *not* call setUpClass from a base class.""" +import unittest + + +class Base(unittest.TestCase): + @classmethod + def setUpClass(cls): + assert 0 + + +@unittest.skip("skip all tests") +class Test(Base): + def test_foo(self): + assert 0 diff --git a/testing/example_scripts/unittest/test_setup_skip_module.py b/testing/example_scripts/unittest/test_setup_skip_module.py new file mode 100644 index 000000000..98befbe51 --- /dev/null +++ b/testing/example_scripts/unittest/test_setup_skip_module.py @@ -0,0 +1,12 @@ +"""setUpModule is always called, even if all tests in the module are skipped""" +import unittest + + +def setUpModule(): + assert 0 + + +@unittest.skip("skip all tests") +class Base(unittest.TestCase): + def test(self): + assert 0 |