Mercurial > hg > orthanc-tests
comparison Tests/Tests.py @ 573:31ab8bb2ac5a
merge
author | Alain Mazy <am@osimis.io> |
---|---|
date | Thu, 20 Jul 2023 10:57:39 +0200 |
parents | 3a5260cc6d55 855c3720902a |
children | 615201c822d8 |
comparison
equal
deleted
inserted
replaced
572:3a5260cc6d55 | 573:31ab8bb2ac5a |
---|---|
2883 }, | 2883 }, |
2884 'Content' : 'data:application/pdf;base64,' + base64.b64encode(pdf) | 2884 'Content' : 'data:application/pdf;base64,' + base64.b64encode(pdf) |
2885 })) | 2885 })) |
2886 | 2886 |
2887 self.assertEqual('Jodogne', DoGet(_REMOTE, '/instances/%s/content/PatientName' % i['ID']).strip()) | 2887 self.assertEqual('Jodogne', DoGet(_REMOTE, '/instances/%s/content/PatientName' % i['ID']).strip()) |
2888 self.assertEqual('1.2.840.10008.5.1.4.1.1.104.1', DoGet(_REMOTE, '/instances/%s/content/SOPClassUID' % i['ID']).strip('\x00')) | |
2889 self.assertEqual('WSD', DoGet(_REMOTE, '/instances/%s/content/ConversionType' % i['ID']).strip()) | |
2890 self.assertEqual('application/pdf', DoGet(_REMOTE, '/instances/%s/content/MIMETypeOfEncapsulatedDocument' % i['ID']).strip()) | |
2891 | |
2888 # In Orthanc <= 1.9.7, the "CT" would have been replaced by "OT" | 2892 # In Orthanc <= 1.9.7, the "CT" would have been replaced by "OT" |
2889 # https://groups.google.com/g/orthanc-users/c/eNSddNrQDtM/m/wc1HahimAAAJ | 2893 # https://groups.google.com/g/orthanc-users/c/eNSddNrQDtM/m/wc1HahimAAAJ |
2890 self.assertEqual('CT', DoGet(_REMOTE, '/instances/%s/content/Modality' % i['ID']).strip()) | 2894 self.assertEqual('CT', DoGet(_REMOTE, '/instances/%s/content/Modality' % i['ID']).strip()) |
2891 | 2895 |
2892 b = DoGet(_REMOTE, '/instances/%s/content/0042-0011' % i['ID']) | 2896 b = DoGet(_REMOTE, '/instances/%s/content/0042-0011' % i['ID']) |
2907 'Tags' : { 'StudyDescription' : 'PDF^Patient' }, | 2911 'Tags' : { 'StudyDescription' : 'PDF^Patient' }, |
2908 'Content' : 'data:application/pdf;base64,' + base64.b64encode(pdf) | 2912 'Content' : 'data:application/pdf;base64,' + base64.b64encode(pdf) |
2909 })) | 2913 })) |
2910 | 2914 |
2911 self.assertEqual(brainixPatient, DoGet(_REMOTE, '/instances/%s/patient' % i['ID'])['ID']) | 2915 self.assertEqual(brainixPatient, DoGet(_REMOTE, '/instances/%s/patient' % i['ID'])['ID']) |
2916 self.assertEqual('1.2.840.10008.5.1.4.1.1.104.1', DoGet(_REMOTE, '/instances/%s/content/SOPClassUID' % i['ID']).strip('\x00')) | |
2917 self.assertEqual('OT', DoGet(_REMOTE, '/instances/%s/content/Modality' % i['ID']).strip('\x00')) | |
2918 self.assertEqual('WSD', DoGet(_REMOTE, '/instances/%s/content/ConversionType' % i['ID']).strip()) | |
2919 self.assertEqual('application/pdf', DoGet(_REMOTE, '/instances/%s/content/MIMETypeOfEncapsulatedDocument' % i['ID']).strip()) | |
2912 | 2920 |
2913 i = DoPost(_REMOTE, '/tools/create-dicom', | 2921 i = DoPost(_REMOTE, '/tools/create-dicom', |
2914 json.dumps({ | 2922 json.dumps({ |
2915 'Parent' : brainixStudy, | 2923 'Parent' : brainixStudy, |
2916 'Tags' : { 'SeriesDescription' : 'PDF^Study' }, | 2924 'Tags' : { 'SeriesDescription' : 'PDF^Study' }, |
9836 Check('TransferSyntaxes/1.2.840.10008.1.2.1.dcm', True, False, 'OB') # Explicit Little Endian, 8bpp | 9844 Check('TransferSyntaxes/1.2.840.10008.1.2.1.dcm', True, False, 'OB') # Explicit Little Endian, 8bpp |
9837 Check('Phenix/IM-0001-0001.dcm', True, False, 'OW') # Explicit Little Endian, 16bpp | 9845 Check('Phenix/IM-0001-0001.dcm', True, False, 'OW') # Explicit Little Endian, 16bpp |
9838 Check('TransferSyntaxes/1.2.840.10008.1.2.2.dcm', True, False, 'OB') # Explicit Big Endian, 8bpp | 9846 Check('TransferSyntaxes/1.2.840.10008.1.2.2.dcm', True, False, 'OB') # Explicit Big Endian, 8bpp |
9839 Check('TransferSyntaxes/1.2.840.10008.1.2.4.50.dcm', True, False, 'OB') # JPEG | 9847 Check('TransferSyntaxes/1.2.840.10008.1.2.4.50.dcm', True, False, 'OB') # JPEG |
9840 Check('Knee/T1/IM-0001-0001.dcm', True, False, 'OB') # JPEG2k | 9848 Check('Knee/T1/IM-0001-0001.dcm', True, False, 'OB') # JPEG2k |
9849 | |
9850 def test_encapsulate_stl(self): | |
9851 if IsOrthancVersionAbove(_REMOTE, 1, 12, 1): | |
9852 stl = b'Hello, world' | |
9853 | |
9854 i = DoPost(_REMOTE, '/tools/create-dicom', json.dumps({ | |
9855 'Content' : 'data:model/stl;base64,%s' % base64.b64encode(stl).decode(), | |
9856 'Force' : True, | |
9857 'Tags' : { | |
9858 'PatientName' : 'Jodogne' | |
9859 } | |
9860 })) ['ID'] | |
9861 | |
9862 tags = DoGet(_REMOTE, '/instances/%s/tags?simplify' % i) | |
9863 self.assertEqual('Jodogne', tags['PatientName']) | |
9864 self.assertEqual('M3D', tags['Modality']) | |
9865 self.assertEqual('model/stl', tags['MIMETypeOfEncapsulatedDocument']) | |
9866 self.assertEqual('1.2.840.10008.5.1.4.1.1.104.3', tags['SOPClassUID']) | |
9867 | |
9868 i = DoPost(_REMOTE, '/tools/create-dicom', json.dumps({ | |
9869 'Content' : 'data:model/mtl;base64,%s' % base64.b64encode(stl).decode(), | |
9870 'Tags' : {} | |
9871 })) ['ID'] | |
9872 | |
9873 tags = DoGet(_REMOTE, '/instances/%s/tags?simplify' % i) | |
9874 self.assertFalse('PatientName' in tags) | |
9875 self.assertEqual('M3D', tags['Modality']) | |
9876 self.assertEqual('model/mtl', tags['MIMETypeOfEncapsulatedDocument']) | |
9877 self.assertEqual('1.2.840.10008.5.1.4.1.1.104.5', tags['SOPClassUID']) | |
9878 | |
9879 i = DoPost(_REMOTE, '/tools/create-dicom', json.dumps({ | |
9880 'Content' : 'data:model/obj;base64,%s' % base64.b64encode(stl).decode(), | |
9881 'Tags' : {} | |
9882 })) ['ID'] | |
9883 | |
9884 tags = DoGet(_REMOTE, '/instances/%s/tags?simplify' % i) | |
9885 self.assertFalse('PatientName' in tags) | |
9886 self.assertEqual('M3D', tags['Modality']) | |
9887 self.assertEqual('model/obj', tags['MIMETypeOfEncapsulatedDocument']) | |
9888 self.assertEqual('1.2.840.10008.5.1.4.1.1.104.4', tags['SOPClassUID']) |