comparison Tests/Tests.py @ 144:7809fdf8056f

testing metadata?expand
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 12 Jul 2018 17:54:05 +0200
parents 28d50ffac07d
children 69fecf5a3ff6
comparison
equal deleted inserted replaced
143:28d50ffac07d 144:7809fdf8056f
3721 self.assertNotEqual(a, c) # Anonymized DICOM 3721 self.assertNotEqual(a, c) # Anonymized DICOM
3722 3722
3723 3723
3724 def test_metadata_origin(self): 3724 def test_metadata_origin(self):
3725 # Upload using the REST API 3725 # Upload using the REST API
3726 i = UploadInstance(_REMOTE, 'DummyCT.dcm')['ID'] 3726 i = UploadInstance(_REMOTE, 'Knee/T1/IM-0001-0001.dcm')['ID']
3727 self.assertEqual('RestApi', DoGet(_REMOTE, '/instances/%s/metadata/Origin' % i)) 3727 self.assertEqual('RestApi', DoGet(_REMOTE, '/instances/%s/metadata/Origin' % i))
3728 self.assertEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteAET' % i)) 3728 self.assertEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteAET' % i))
3729 self.assertNotEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteIP' % i)) 3729 self.assertNotEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteIP' % i))
3730 self.assertRaises(Exception, lambda: DoGet(_REMOTE, '/instances/%s/metadata/CalledAET' % i)) 3730 self.assertRaises(Exception, lambda: DoGet(_REMOTE, '/instances/%s/metadata/CalledAET' % i))
3731 self.assertEqual('alice', DoGet(_REMOTE, '/instances/%s/metadata/HttpUsername' % i)) 3731 self.assertEqual('alice', DoGet(_REMOTE, '/instances/%s/metadata/HttpUsername' % i))
3732 3732
3733 m = DoGet(_REMOTE, '/instances/%s/metadata?expand' % i)
3734 self.assertEqual('RestApi', m['Origin'])
3735 self.assertEqual('', m['RemoteAET'])
3736 self.assertNotEqual('', m['RemoteIP'])
3737 self.assertFalse('CalledAET' in m)
3738 self.assertEqual('alice', m['HttpUsername'])
3739
3740 self.assertEqual('1.2.840.10008.1.2.4.91', m['TransferSyntax'])
3741 self.assertEqual('1.2.840.10008.5.1.4.1.1.4', m['SopClassUid'])
3742 self.assertEqual('1', m['IndexInSeries'])
3743 self.assertTrue('ReceptionDate' in m)
3744
3733 DoDelete(_REMOTE, '/instances/%s' % i) 3745 DoDelete(_REMOTE, '/instances/%s' % i)
3734 3746
3735 # Upload using the DICOM protocol 3747 # Upload using the DICOM protocol
3736 subprocess.check_call([ FindExecutable('storescu'), 3748 subprocess.check_call([ FindExecutable('storescu'),
3737 _REMOTE['Server'], str(_REMOTE['DicomPort']), 3749 _REMOTE['Server'], str(_REMOTE['DicomPort']),
3738 GetDatabasePath('DummyCT.dcm') ]) 3750 GetDatabasePath('Knee/T1/IM-0001-0001.dcm'),
3751 '-xw' ]) # Propose JPEG2000
3739 self.assertEqual('DicomProtocol', DoGet(_REMOTE, '/instances/%s/metadata/Origin' % i)) 3752 self.assertEqual('DicomProtocol', DoGet(_REMOTE, '/instances/%s/metadata/Origin' % i))
3740 self.assertEqual('STORESCU', DoGet(_REMOTE, '/instances/%s/metadata/RemoteAET' % i)) 3753 self.assertEqual('STORESCU', DoGet(_REMOTE, '/instances/%s/metadata/RemoteAET' % i))
3741 self.assertNotEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteIP' % i)) 3754 self.assertNotEqual('', DoGet(_REMOTE, '/instances/%s/metadata/RemoteIP' % i))
3742 self.assertEqual('ANY-SCP', DoGet(_REMOTE, '/instances/%s/metadata/CalledAET' % i)) 3755 self.assertEqual('ANY-SCP', DoGet(_REMOTE, '/instances/%s/metadata/CalledAET' % i))
3743 self.assertRaises(Exception, lambda: DoGet(_REMOTE, '/instances/%s/metadata/HttpUsername' % i)) 3756 self.assertRaises(Exception, lambda: DoGet(_REMOTE, '/instances/%s/metadata/HttpUsername' % i))
3757
3758 m = DoGet(_REMOTE, '/instances/%s/metadata?expand' % i)
3759 self.assertEqual('DicomProtocol', m['Origin'])
3760 self.assertEqual('STORESCU', m['RemoteAET'])
3761 self.assertNotEqual('', m['RemoteIP'])
3762 self.assertEqual('ANY-SCP', m['CalledAET'])
3763 self.assertFalse('HttpUsername' in m)
3764
3765 self.assertEqual('1.2.840.10008.1.2.4.91', m['TransferSyntax'])
3766 self.assertEqual('1.2.840.10008.5.1.4.1.1.4', m['SopClassUid'])
3767 self.assertEqual('1', m['IndexInSeries'])
3768 self.assertTrue('ReceptionDate' in m)