diff --git a/tests/test_tutorial/test_sql_databases/test_sql_databases.py b/tests/test_tutorial/test_sql_databases/test_sql_databases.py index d7b6e1b3a..69092889c 100644 --- a/tests/test_tutorial/test_sql_databases/test_sql_databases.py +++ b/tests/test_tutorial/test_sql_databases/test_sql_databases.py @@ -1,3 +1,4 @@ +import importlib from pathlib import Path import pytest @@ -283,13 +284,18 @@ openapi_schema = { @pytest.fixture(scope="module") def client(): + test_db = Path("./sql_app.db") + if test_db.is_file(): # pragma: nocover + test_db.unlink() # Import while creating the client to create the DB after starting the test session - from sql_databases.sql_app.main import app + from sql_databases.sql_app import main - test_db = Path("./sql_app.db") - with TestClient(app) as c: + # Ensure import side effects are re-executed + importlib.reload(main) + with TestClient(main.app) as c: yield c - test_db.unlink() + if test_db.is_file(): # pragma: nocover + test_db.unlink() def test_openapi_schema(client): diff --git a/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py b/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py index d26a442b7..6b4ed567e 100644 --- a/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py +++ b/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py @@ -1,3 +1,4 @@ +import importlib from pathlib import Path import pytest @@ -283,13 +284,19 @@ openapi_schema = { @pytest.fixture(scope="module") def client(): + test_db = Path("./sql_app.db") + if test_db.is_file(): # pragma: nocover + test_db.unlink() # Import while creating the client to create the DB after starting the test session - from sql_databases.sql_app.alt_main import app + from sql_databases.sql_app import alt_main - test_db = Path("./sql_app.db") - with TestClient(app) as c: + # Ensure import side effects are re-executed + importlib.reload(alt_main) + + with TestClient(alt_main.app) as c: yield c - test_db.unlink() + if test_db.is_file(): # pragma: nocover + test_db.unlink() def test_openapi_schema(client): diff --git a/tests/test_tutorial/test_sql_databases/test_testing_databases.py b/tests/test_tutorial/test_sql_databases/test_testing_databases.py index fae66d3b8..83a156b85 100644 --- a/tests/test_tutorial/test_sql_databases/test_testing_databases.py +++ b/tests/test_tutorial/test_sql_databases/test_testing_databases.py @@ -1,13 +1,16 @@ +import importlib from pathlib import Path def test_testing_dbs(): + test_db = Path("./test.db") + if test_db.is_file(): # pragma: nocover + test_db.unlink() # Import while creating the client to create the DB after starting the test session - from sql_databases.sql_app.tests.test_sql_app import test_create_user + from sql_databases.sql_app.tests import test_sql_app - test_db = Path("./test.db") - app_db = Path("./sql_app.db") - test_create_user() - test_db.unlink() - if app_db.is_file(): # pragma: nocover - app_db.unlink() + # Ensure import side effects are re-executed + importlib.reload(test_sql_app) + test_sql_app.test_create_user() + if test_db.is_file(): # pragma: nocover + test_db.unlink()