24 lines
816 B
Python
24 lines
816 B
Python
import os
|
|
import shutil
|
|
import pytest
|
|
from django.conf import settings
|
|
|
|
@pytest.fixture(scope="session", autouse=True)
|
|
def cleanup_test_media():
|
|
"""
|
|
Session-scoped fixture to automatically clean up temporary media files
|
|
generated during the test run.
|
|
"""
|
|
yield
|
|
# Clean up settings.MEDIA_ROOT
|
|
media_root = getattr(settings, "MEDIA_ROOT", None)
|
|
if media_root and os.path.exists(media_root) and "media_test" in media_root:
|
|
shutil.rmtree(media_root, ignore_errors=True)
|
|
|
|
# Also clean up any legacy directories created due to missing trailing slash
|
|
base_dir = getattr(settings, "BASE_DIR", None)
|
|
if base_dir:
|
|
legacy_dir = os.path.join(base_dir, "media_testlongs")
|
|
if os.path.exists(legacy_dir):
|
|
shutil.rmtree(legacy_dir, ignore_errors=True)
|