comparison Tests/Tests.py @ 234:93cd4fdd4a67

test_anonymize_relationships_4
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 05 Apr 2019 17:04:37 +0200
parents ce0b19a2c807
children 9929e4af2b7a
comparison
equal deleted inserted replaced
233:ce0b19a2c807 234:93cd4fdd4a67
4607 UploadInstance(_REMOTE, 'Issue137.dcm') 4607 UploadInstance(_REMOTE, 'Issue137.dcm')
4608 i = CallFindScu([ '-k', '0008,0052=STUDY', '-k', '0010,0010', '-k', '0028,0010', '-k', '0040,0275' ]) 4608 i = CallFindScu([ '-k', '0008,0052=STUDY', '-k', '0010,0010', '-k', '0028,0010', '-k', '0040,0275' ])
4609 patientNames = re.findall('\(0010,0010\).*?\[(.*?)\]', i) 4609 patientNames = re.findall('\(0010,0010\).*?\[(.*?)\]', i)
4610 self.assertEqual(1, len(patientNames)) 4610 self.assertEqual(1, len(patientNames))
4611 self.assertEqual('John Doe', patientNames[0]) 4611 self.assertEqual('John Doe', patientNames[0])
4612
4613
4614 def test_anonymize_relationships_4(self):
4615 # https://groups.google.com/d/msg/orthanc-users/UkcsqyTpszE/bXUpzU0vAAAJ
4616 sr1 = UploadInstance(_REMOTE, 'HierarchicalAnonymization/2019-03-28/CR000000.dcm')['ID']
4617 mr1 = UploadInstance(_REMOTE, 'HierarchicalAnonymization/2019-03-28/PR000000.dcm')['ID']
4618 study = '0c923249-d52121a9-2b7167f7-6b85534f-0943697e'
4619
4620 anonymized = DoPost(_REMOTE, '/studies/%s/anonymize' % study, '{}',
4621 'application/json')['ID']
4622 series = DoGet(_REMOTE, '/studies/%s/series' % anonymized)
4623 self.assertEqual(2, len(series))
4624
4625 cr = list(filter(lambda x: x['MainDicomTags']['Modality'] == 'CR', series))
4626 pr = list(filter(lambda x: x['MainDicomTags']['Modality'] == 'PR', series))
4627 self.assertEqual(1, len(cr))
4628 self.assertEqual(1, len(pr))
4629 self.assertEqual(1, len(cr[0]['Instances']))
4630 self.assertEqual(1, len(pr[0]['Instances']))
4631
4632 crinstance = DoGet(_REMOTE, '/instances/%s' % cr[0]['Instances'][0])
4633 tags = DoGet(_REMOTE, '/instances/%s/tags?short' % pr[0]['Instances'][0])
4634
4635 self.assertEqual(tags['0008,1115'][0]['0008,1140'][0]['0008,1155'],
4636 crinstance['MainDicomTags']['SOPInstanceUID'])
4637 self.assertEqual(tags['0008,1115'][0]['0008,1140'][0]['0008,1150'],
4638 '1.2.840.10008.5.1.4.1.1.1') # SOP class for CR Image Storage
4639
4640 # This fails on Orthanc <= 1.5.6
4641 self.assertEqual(tags['0008,1115'][0]['0020,000e'],
4642 cr[0]['MainDicomTags']['SeriesInstanceUID'])