Files
Ross dc479cafd0 feat: Add case review messaging system with feedback and query capabilities
- Introduced CaseReviewMessage model to handle feedback and queries for cases.
- Implemented views for displaying user and CID messages, including outstanding feedback.
- Created templates for collection feedback overview and user messages.
- Added functionality for acknowledging messages and sending feedback or queries.
- Enhanced collection detail view to show outstanding messages and user message statistics.
- Added tests for handling duplicate DICOM uploads without series.
2026-04-27 12:55:27 +01:00

35 lines
1.1 KiB
Python

from types import SimpleNamespace
from django.core.files.uploadedfile import SimpleUploadedFile
import atlas.api as atlas_api
from atlas.models import DuplicateDicom, SeriesImage
def test_upload_dicom_duplicate_series_image_without_series_does_not_500(
monkeypatch,
):
request = SimpleNamespace(user=SimpleNamespace(is_authenticated=True))
class DummyUncategorisedDicom:
def __init__(self, image, user):
self.image = image
self.user = user
self.image_blake3_hash = "hash123"
def save(self, *args, **kwargs):
raise DuplicateDicom(SeriesImage(series=None))
monkeypatch.setattr(atlas_api, "UncategorisedDicom", DummyUncategorisedDicom)
upload = SimpleUploadedFile(
"duplicate-no-series.dcm",
b"dicom-bytes",
content_type="application/dicom",
)
payload = atlas_api.upload_dicom(request, files=[upload])
assert payload["uploaded"] == []
assert payload["failed"] == []
assert payload["duplicate_series"] == []
assert payload["duplicates"] == [("duplicate-no-series.dcm", "hash123")]