--- a/tests/__init__.py +++ b/tests/__init__.py @@ -7,6 +7,8 @@ import tempfile from unittest.mock import patch +import pytest + from ipykernel.kernelspec import install pjoin = os.path.join @@ -15,7 +17,8 @@ patchers: list = [] -def setup(): +@pytest.fixture(autouse=True) +def _global_setup(): """setup temporary env for tests""" global tmp tmp = tempfile.mkdtemp() @@ -34,9 +37,7 @@ # install IPython in the temp home: install(user=True) - - -def teardown(): + yield for p in patchers: p.stop() --- a/tests/test_async.py +++ b/tests/test_async.py @@ -8,14 +8,13 @@ KC = KM = None -def setup_function(): +@pytest.fixture(autouse=True) +def _setup_env(): """start the global kernel (if it isn't running) and return its client""" global KM, KC KM, KC = start_new_kernel() flush_channels(KC) - - -def teardown_function(): + yield assert KC is not None assert KM is not None KC.stop_channels() --- a/tests/test_eventloop.py +++ b/tests/test_eventloop.py @@ -42,14 +42,13 @@ _get_qt_vers() -def setup(): +@pytest.fixture(autouse=True) +def _setup_env(): """start the global kernel (if it isn't running) and return its client""" global KM, KC KM, KC = start_new_kernel() flush_channels(KC) - - -def teardown(): + yield assert KM is not None assert KC is not None KC.stop_channels() --- a/tests/test_message_spec.py +++ b/tests/test_message_spec.py @@ -21,7 +21,8 @@ KC: BlockingKernelClient = None # type:ignore -def setup(): +@pytest.fixture(autouse=True) +def _setup_env(): global KC KC = start_global_kernel()