diff --git a/tests.py b/tests.py index 844b6b4..0bb0a73 100644 --- a/tests.py +++ b/tests.py @@ -103,18 +103,22 @@ def in_memory_db() -> Generator[Engine]: Yields: The engine used to create the database. """ - from sqlmodel import SQLModel, create_engine engine = create_engine("sqlite:///:memory:") - SQLModel.metadata.create_all(engine) yield engine engine.dispose() +@pytest.fixture(name="app_db") +def database_ready_to_use(engine: Engine) -> Generator[Engine]: + SQLModel.metadata.create_all(engine) + yield engine + + @pytest.fixture(name="db_teilchen") -def teilchen_in_db(engine: Engine) -> Generator[Teilchen]: +def teilchen_in_db(app_db: Engine) -> Generator[Teilchen]: """Creates a new Teilchen and stores it in the database. Args: @@ -128,20 +132,20 @@ def teilchen_in_db(engine: Engine) -> Generator[Teilchen]: teilchen = Teilchen( id=uuid.uuid7(), name="TT", description="Test Teilchen", number=1, tags="", text="" ) - with Session(engine) as session: + with Session(app_db) as session: session.add(teilchen) session.commit() session.refresh(teilchen) yield teilchen - with Session(engine) as session: + with Session(app_db) as session: session.delete(teilchen) session.commit() -async def test_loadinitialdata_returns_expected_data(engine: Engine, db_teilchen: Teilchen): - all_data: Sequence[tuple] = await load_initial_data(engine) +async def test_loadinitialdata_returns_expected_data(app_db: Engine, db_teilchen: Teilchen): + all_data: Sequence[tuple] = await load_initial_data(app_db) assert len(all_data) == 1 fetched_data: tuple = all_data[0] @@ -159,14 +163,14 @@ async def test_loadinitialdata_returns_expected_data(engine: Engine, db_teilchen assert fetched_teilchen == db_teilchen -async def test_data_provided_to_addtodatabase_ends_up_in_database(engine: Engine): - all_data = await load_initial_data(engine) +async def test_data_provided_to_addtodatabase_ends_up_in_database(app_db: Engine): + all_data = await load_initial_data(app_db) assert len(all_data) == 0 teilchen = Teilchen( id=uuid.uuid7(), name="test", description="test", tags="#test", number=1, text="test" ) - db_teilchen = await add_to_database(teilchen, engine) + db_teilchen = await add_to_database(teilchen, app_db) assert teilchen == db_teilchen