Mercurial > hg > orthanc-tests
comparison Tests/Tests.py @ 254:05b77ade5e1d
test generation of sopinstanceuid in split/merge
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 28 Aug 2019 16:50:36 +0200 |
parents | 1abdab0ba0e6 |
children | 02c3d91b155c |
comparison
equal
deleted
inserted
replaced
253:74c693e093ce | 254:05b77ade5e1d |
---|---|
4005 | 4005 |
4006 | 4006 |
4007 def test_split(self): | 4007 def test_split(self): |
4008 UploadInstance(_REMOTE, 'Knee/T1/IM-0001-0001.dcm') | 4008 UploadInstance(_REMOTE, 'Knee/T1/IM-0001-0001.dcm') |
4009 UploadInstance(_REMOTE, 'Knee/T2/IM-0001-0001.dcm') | 4009 UploadInstance(_REMOTE, 'Knee/T2/IM-0001-0001.dcm') |
4010 knee1Sop = '1.3.46.670589.11.17521.5.0.3124.2008081908590448738' | |
4011 knee2Sop = '1.3.46.670589.11.17521.5.0.3124.2008081909113806560' | |
4010 study = '0a9b3153-2512774b-2d9580de-1fc3dcf6-3bd83918' | 4012 study = '0a9b3153-2512774b-2d9580de-1fc3dcf6-3bd83918' |
4011 t1 = '6de73705-c4e65c1b-9d9ea1b5-cabcd8e7-f15e4285' | 4013 t1 = '6de73705-c4e65c1b-9d9ea1b5-cabcd8e7-f15e4285' |
4012 t2 = 'bbf7a453-0d34251a-03663b55-46bb31b9-ffd74c59' | 4014 t2 = 'bbf7a453-0d34251a-03663b55-46bb31b9-ffd74c59' |
4013 | 4015 |
4014 self.assertEqual(1, len(DoGet(_REMOTE, '/studies'))) | 4016 self.assertEqual(1, len(DoGet(_REMOTE, '/studies'))) |
4041 | 4043 |
4042 info = DoGet(_REMOTE, '/studies/%s' % study2) | 4044 info = DoGet(_REMOTE, '/studies/%s' % study2) |
4043 self.assertTrue('Hello', info['PatientMainDicomTags']['PatientName']) | 4045 self.assertTrue('Hello', info['PatientMainDicomTags']['PatientName']) |
4044 self.assertFalse('ReferringPhysicianName' in info['MainDicomTags']) | 4046 self.assertFalse('ReferringPhysicianName' in info['MainDicomTags']) |
4045 | 4047 |
4048 sopInstanceUids = set() | |
4049 for i in DoGet(_REMOTE, '/instances?expand'): | |
4050 sopInstanceUids.add(i['MainDicomTags']['SOPInstanceUID']) | |
4051 | |
4052 self.assertTrue(knee1Sop in sopInstanceUids) | |
4053 | |
4054 # Fails if Orthanc <= 1.5.7 | |
4055 self.assertFalse(knee2Sop in sopInstanceUids) # Because "KeepSource" is False | |
4056 | |
4057 # One original instance is kept, another one is added because of the split | |
4058 self.assertEqual(2, len(sopInstanceUids)) | |
4059 | |
4046 | 4060 |
4047 def test_merge(self): | 4061 def test_merge(self): |
4048 UploadInstance(_REMOTE, 'Knee/T1/IM-0001-0001.dcm') | 4062 UploadInstance(_REMOTE, 'Knee/T1/IM-0001-0001.dcm') |
4049 UploadInstance(_REMOTE, 'Brainix/Flair/IM-0001-0001.dcm')['ID'] | 4063 UploadInstance(_REMOTE, 'Brainix/Flair/IM-0001-0001.dcm') |
4064 kneeSop = '1.3.46.670589.11.17521.5.0.3124.2008081908590448738' | |
4065 brainixSop = '1.3.46.670589.11.0.0.11.4.2.0.8743.5.5396.2006120114314079549' | |
4050 knee = '0a9b3153-2512774b-2d9580de-1fc3dcf6-3bd83918' | 4066 knee = '0a9b3153-2512774b-2d9580de-1fc3dcf6-3bd83918' |
4051 t1 = '6de73705-c4e65c1b-9d9ea1b5-cabcd8e7-f15e4285' | 4067 t1 = '6de73705-c4e65c1b-9d9ea1b5-cabcd8e7-f15e4285' |
4052 brainix = '27f7126f-4f66fb14-03f4081b-f9341db2-53925988' | 4068 brainix = '27f7126f-4f66fb14-03f4081b-f9341db2-53925988' |
4053 flair = '1e2c125c-411b8e86-3f4fe68e-a7584dd3-c6da78f0' | 4069 flair = '1e2c125c-411b8e86-3f4fe68e-a7584dd3-c6da78f0' |
4054 | 4070 |
4099 'RequestingPhysician', | 4115 'RequestingPhysician', |
4100 'RequestedProcedureDescription', ]): | 4116 'RequestedProcedureDescription', ]): |
4101 self.assertEqual(a[key], merged[key]) | 4117 self.assertEqual(a[key], merged[key]) |
4102 if (key in b): | 4118 if (key in b): |
4103 self.assertNotEqual(a[key], b[key]) | 4119 self.assertNotEqual(a[key], b[key]) |
4120 | |
4121 sopInstanceUids = set() | |
4122 for i in DoGet(_REMOTE, '/instances?expand'): | |
4123 sopInstanceUids.add(i['MainDicomTags']['SOPInstanceUID']) | |
4124 | |
4125 self.assertTrue(kneeSop in sopInstanceUids) | |
4126 self.assertTrue(brainixSop in sopInstanceUids) | |
4127 | |
4128 # Fails if Orthanc <= 1.5.7 | |
4129 # The 2 original instances are kept, another one is added because of the merge | |
4130 self.assertEqual(3, len(sopInstanceUids)) | |
4104 | 4131 |
4105 | 4132 |
4106 def test_async_archive(self): | 4133 def test_async_archive(self): |
4107 # Testing the asynchronous generation of archives/medias (new | 4134 # Testing the asynchronous generation of archives/medias (new |
4108 # in Orthanc 1.4.3) | 4135 # in Orthanc 1.4.3) |