From ad11e1f4ea4dd81ac233dca5aea520b35258a6d4 Mon Sep 17 00:00:00 2001 From: Anirudh Sengar Date: Sat, 15 Nov 2025 12:22:55 +0400 Subject: [PATCH 1/2] Migrate test_extensions to pytest --- tests/test_extensions/test_functions.py | 69 +++++++++++++------------ 1 file changed, 36 insertions(+), 33 deletions(-) diff --git a/tests/test_extensions/test_functions.py b/tests/test_extensions/test_functions.py index ac4610a15..f2158187e 100644 --- a/tests/test_extensions/test_functions.py +++ b/tests/test_extensions/test_functions.py @@ -5,7 +5,7 @@ import pytest -import openml.testing +import openml from openml.extensions import get_extension_by_flow, get_extension_by_model, register_extension @@ -59,35 +59,38 @@ def _unregister(): break -class TestInit(openml.testing.TestBase): - def setUp(self): - super().setUp() - _unregister() - - def test_get_extension_by_flow(self): - assert get_extension_by_flow(DummyFlow()) is None - with pytest.raises(ValueError, match="No extension registered which can handle flow:"): - get_extension_by_flow(DummyFlow(), raise_if_no_extension=True) - register_extension(DummyExtension1) - assert isinstance(get_extension_by_flow(DummyFlow()), DummyExtension1) - register_extension(DummyExtension2) - assert isinstance(get_extension_by_flow(DummyFlow()), DummyExtension1) - register_extension(DummyExtension1) - with pytest.raises( - ValueError, match="Multiple extensions registered which can handle flow:" - ): - get_extension_by_flow(DummyFlow()) - - def test_get_extension_by_model(self): - assert get_extension_by_model(DummyModel()) is None - with pytest.raises(ValueError, match="No extension registered which can handle model:"): - get_extension_by_model(DummyModel(), raise_if_no_extension=True) - register_extension(DummyExtension1) - assert isinstance(get_extension_by_model(DummyModel()), DummyExtension1) - register_extension(DummyExtension2) - assert isinstance(get_extension_by_model(DummyModel()), DummyExtension1) - register_extension(DummyExtension1) - with pytest.raises( - ValueError, match="Multiple extensions registered which can handle model:" - ): - get_extension_by_model(DummyModel()) +@pytest.fixture() +def clean_test_extensions(): + _unregister() + yield + _unregister() + + +def test_get_extension_by_flow(clean_test_extensions): + assert get_extension_by_flow(DummyFlow()) is None + with pytest.raises(ValueError, match="No extension registered which can handle flow:"): + get_extension_by_flow(DummyFlow(), raise_if_no_extension=True) + register_extension(DummyExtension1) + assert isinstance(get_extension_by_flow(DummyFlow()), DummyExtension1) + register_extension(DummyExtension2) + assert isinstance(get_extension_by_flow(DummyFlow()), DummyExtension1) + register_extension(DummyExtension1) + with pytest.raises( + ValueError, match="Multiple extensions registered which can handle flow:" + ): + get_extension_by_flow(DummyFlow()) + + +def test_get_extension_by_model(clean_test_extensions): + assert get_extension_by_model(DummyModel()) is None + with pytest.raises(ValueError, match="No extension registered which can handle model:"): + get_extension_by_model(DummyModel(), raise_if_no_extension=True) + register_extension(DummyExtension1) + assert isinstance(get_extension_by_model(DummyModel()), DummyExtension1) + register_extension(DummyExtension2) + assert isinstance(get_extension_by_model(DummyModel()), DummyExtension1) + register_extension(DummyExtension1) + with pytest.raises( + ValueError, match="Multiple extensions registered which can handle model:" + ): + get_extension_by_model(DummyModel()) From 02050885edd3308f7810da3cf10e1632b133e7a9 Mon Sep 17 00:00:00 2001 From: PGijsbers Date: Tue, 20 Oct 2026 11:14:48 +0300 Subject: [PATCH 2/2] convert unregister fixture to autouse --- tests/test_extensions/test_functions.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_extensions/test_functions.py b/tests/test_extensions/test_functions.py index f2158187e..9fbaa0678 100644 --- a/tests/test_extensions/test_functions.py +++ b/tests/test_extensions/test_functions.py @@ -59,14 +59,14 @@ def _unregister(): break -@pytest.fixture() +@pytest.fixture(autouse=True) def clean_test_extensions(): _unregister() yield _unregister() -def test_get_extension_by_flow(clean_test_extensions): +def test_get_extension_by_flow(): assert get_extension_by_flow(DummyFlow()) is None with pytest.raises(ValueError, match="No extension registered which can handle flow:"): get_extension_by_flow(DummyFlow(), raise_if_no_extension=True) @@ -81,7 +81,7 @@ def test_get_extension_by_flow(clean_test_extensions): get_extension_by_flow(DummyFlow()) -def test_get_extension_by_model(clean_test_extensions): +def test_get_extension_by_model(): assert get_extension_by_model(DummyModel()) is None with pytest.raises(ValueError, match="No extension registered which can handle model:"): get_extension_by_model(DummyModel(), raise_if_no_extension=True)