Skip to content

Commit e752ee4

Browse files
estebanx64tiangolo
andauthored
✅ Add setup and teardown database for tests (fastapi#626)
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
1 parent 05c0ccd commit e752ee4

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/backend/app/tests/conftest.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,27 @@
22

33
import pytest
44
from fastapi.testclient import TestClient
5-
from sqlmodel import Session
5+
from sqlmodel import Session, delete
66

77
from app.core.config import settings
88
from app.db.engine import engine
9+
from app.db.init_db import init_db
910
from app.main import app
11+
from app.models import Item, User
1012
from app.tests.utils.user import authentication_token_from_email
1113
from app.tests.utils.utils import get_superuser_token_headers
1214

1315

14-
@pytest.fixture(scope="session")
16+
@pytest.fixture(scope="session", autouse=True)
1517
def db() -> Generator:
1618
with Session(engine) as session:
19+
init_db(session)
1720
yield session
21+
statement = delete(Item)
22+
session.execute(statement)
23+
statement = delete(User)
24+
session.execute(statement)
25+
session.commit()
1826

1927

2028
@pytest.fixture(scope="module")

0 commit comments

Comments
 (0)