I try to test my Django app and confused about using test database.
# conftest.py
@pytest.fixture(scope="session")
def django_db_setup():
settings.DATABASES["default"] = {
"ENGINE": "django.db.backends.sqlite3",
"NAME": "db.sqlite3",
}
My test files look like this:
# tests.py
@pytest.mark.django_db
def test_mailing_detail(mailing_instance_one):
obj_link = mailing_detail(mailing_instance_one)
expected_link = reverse(
"api:admin_mailing_detail", args=[mailing_instance_one.id]
)
assert f"<a href='{expected_link}'>" in obj_link
Output:
django.db.utils.OperationalError: could not translate host name "app_db" to address: Temporary failure in name resolution
app_db is name from app settings file.
If I add print(f"{settings.DATABASES['default']}") to django_db_setup() I see correct db parameters.
How I can use test database?