diff PerfsDb/Tests/UploadFile.py @ 161:27b3b0df5f90

2 upload tests
author am@osimis.io
date Fri, 17 Aug 2018 17:24:11 +0200
parents df1f9946571c
children dbc42a03ee75
line wrap: on
line diff
--- a/PerfsDb/Tests/UploadFile.py	Fri Aug 17 16:17:57 2018 +0200
+++ b/PerfsDb/Tests/UploadFile.py	Fri Aug 17 17:24:11 2018 +0200
@@ -1,8 +1,8 @@
 from Test import Test
 
-class TestUploadFile(Test):
+class TestUploadFirstPatientFile(Test):
 
-    def __init__(self, name:str = "UploadFile", filePath:str = "../Database/DummyCT.dcm"):
+    def __init__(self, name:str = "UploadFirstPatientFile", filePath:str = "../Database/DummyCT.dcm"):
         super().__init__(name)
         self._instanceId = None
         self._filePath = filePath
@@ -19,4 +19,58 @@
         self._orthanc.instances.delete(self._instanceId)
 
     def test(self):
-        self._orthanc.uploadDicom(self._dicomFileContent)
\ No newline at end of file
+        self._orthanc.uploadDicom(self._dicomFileContent)
+
+
+class TestUploadNextPatientFile(Test):
+
+    def __init__(self, name:str = "UploadNextPatientFile", filePath:str = "../Database/DummyCT.dcm"):
+        super().__init__(name)
+        self._instanceId = None
+        self._filePath = filePath
+        self._dicomFileContent = None
+        self._instanceIndex = 0
+
+    def beforeAll(self):
+        self._clear()
+
+        # upload a source file that we will modify
+        self._sourceInstanceId = self._orthanc.uploadDicomFile(self._filePath)
+        
+        # upload the first instance of this patient
+        self._dicomFileContent = self._modifyFile()
+        self._orthanc.uploadDicom(self._dicomFileContent)
+
+
+
+    def beforeEach(self):
+        self._dicomFileContent = self._modifyFile()
+
+    def test(self):
+        self._orthanc.uploadDicom(self._dicomFileContent)
+
+    def afterAll(self):
+        self._clear()
+
+    def _clear(self):
+        patient = self._orthanc.patients.find("UploadNextPatientFile")
+        if patient is not None:
+            self._orthanc.patients.delete(patient.id)
+
+    def _modifyFile(self):
+        self._instanceIndex += 1
+        return self._orthanc.instances.modify(
+            instanceId=self._sourceInstanceId,
+            replaceTags={
+                "PatientName": "UploadNextPatientFile",
+                "PatientID": "UploadNextPatientFile",
+                "StudyDescription": "UploadNextPatientFile",
+                "SeriesDescription": "UploadNextPatientFile",
+                "SOPInstanceUID": "999999.888888.777777.666666.555555.44444",
+                "StudyInstanceUID": "999999.888888.777777.666666",
+                "SeriesInstanceUID": "999999.888888.777777.666666.555555",
+                "SeriesNumber": "1",
+                "InstanceNumber": str(self._instanceIndex)
+            },
+            deleteOriginal=False
+        )
\ No newline at end of file