import pytest from django.core.files.uploadedfile import SimpleUploadedFile pytestmark = pytest.mark.django_db def test_upload_rejects_empty_oversized_and_unsupported_files(workspace, settings): _, _, client, *_ = workspace settings.MAX_UPLOAD_BYTES = 4 assert ( client.post("/api/datasets", data={"file": SimpleUploadedFile("empty.csv", b"")}).status_code == 400 ) assert ( client.post("/api/datasets", data={"file": SimpleUploadedFile("large.csv", b"12345")}).status_code == 400 ) settings.MAX_UPLOAD_BYTES = 1024 response = client.post("/api/datasets", data={"file": SimpleUploadedFile("invalid.txt", b"abc")}) assert response.status_code == 400