Closed
Description
I've created a simple test case to reproduce this behavior https://github.com/ekiro/case_pytest/blob/master/app/tests.py which fails after second test using live_server fixture.
MyModel objects are created in migration, using RunPython. It seems like after any test with live_server, every row from the database is truncated. Both, postgresql and sqlite3 was tested.
EDIT:
Tests
"""
MyModel objects are created in migration
Test results:
app/tests.py::test_no_live_server PASSED
app/tests.py::test_live_server PASSED
app/tests.py::test_live_server2 FAILED
app/tests.py::test_no_live_server_after_live_server FAILED
"""
import pytest
from .models import MyModel
@pytest.mark.django_db()
def test_no_live_server():
"""Passed"""
assert MyModel.objects.count() == 10
@pytest.mark.django_db()
def test_live_server(live_server):
"""Passed"""
assert MyModel.objects.count() == 10
@pytest.mark.django_db()
def test_live_server2(live_server):
"""Failed, because count() returns 0"""
assert MyModel.objects.count() == 10
@pytest.mark.django_db()
def test_no_live_server_after_live_server():
"""Failed, because count() returns 0"""
assert MyModel.objects.count() == 10
Metadata
Metadata
Assignees
Labels
No labels