comparison Tests/Tests.py @ 279:31e1e49df380

starting tests for storage commitment
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 10 Mar 2020 13:22:34 +0100
parents b2d8582b9181
children 5daa3896981c
comparison
equal deleted inserted replaced
278:514785dacd6d 279:31e1e49df380
5293 '--study', '-k', 'QueryRetrieveLevel=SERIES', 5293 '--study', '-k', 'QueryRetrieveLevel=SERIES',
5294 '-k', 'StudyInstanceUID=%s' % study, 5294 '-k', 'StudyInstanceUID=%s' % study,
5295 '-k', 'SeriesInstanceUID=%s\\%s' % (series1, series2), 5295 '-k', 'SeriesInstanceUID=%s\\%s' % (series1, series2),
5296 ]))) 5296 ])))
5297 self.assertEqual(2, len(DoGet(_LOCAL, '/instances'))) 5297 self.assertEqual(2, len(DoGet(_LOCAL, '/instances')))
5298
5299
5300 def test_storage_commitment_api(self):
5301 # Storage commitment is available since Orthanc 1.6.0
5302 UploadInstance(_REMOTE, 'DummyCT.dcm')
5303 sopClassUid = '1.2.840.10008.5.1.4.1.1.4'
5304 sopInstanceUid = '1.2.840.113619.2.176.2025.1499492.7040.1171286242.109'
5305
5306 # Against self
5307 transaction = DoPost(_REMOTE, '/modalities/self/storage-commitment', [
5308 [ sopClassUid, sopInstanceUid ],
5309 ]) ['ID']
5310 self.assertTrue(transaction.startswith('2.25.'))
5311
5312 transaction = DoPost(_REMOTE, '/modalities/self/storage-commitment', [
5313 { 'SOPClassUID' : sopClassUid,
5314 'SOPInstanceUID' : sopInstanceUid },
5315 ]) ['ID']
5316 self.assertTrue(transaction.startswith('2.25.'))
5317
5318 transaction = DoPost(_REMOTE, '/modalities/self/storage-commitment', [
5319 [ 'nope', sopInstanceUid ],
5320 ]) ['ID']
5321 self.assertTrue(transaction.startswith('2.25.'))
5322
5323
5324 # Against Orthanc 0.8.6, that does not support storage commitment
5325 self.assertRaises(Exception, lambda:
5326 DoPost(_REMOTE, '/modalities/orthanctest/storage-commitment', [
5327 [ sopClassUid, sopInstanceUid ],
5328 ]))
5329
5330
5331
5332 def test_storage_commitment_store(self):
5333 # Storage commitment is available since Orthanc 1.6.0
5334 i = UploadInstance(_REMOTE, 'DummyCT.dcm')['ID']
5335 self.assertEqual(1, len(DoGet(_REMOTE, '/instances')))
5336 self.assertEqual(0, len(DoGet(_LOCAL, '/instances')))
5337
5338 # The Orthanc 0.8.6 from "_LOCAL" does not support storage commitment
5339 self.assertRaises(Exception, lambda: DoPost(_REMOTE, '/modalities/orthanctest/store', {
5340 'Resources' : [ i ],
5341 'StorageCommitment' : True,
5342 }))
5343
5344 j = DoPost(_REMOTE, '/modalities/orthanctest/store', {
5345 'Resources' : [ i ],
5346 'StorageCommitment' : False,
5347 })
5348 self.assertEqual(1, len(DoGet(_LOCAL, '/instances')))
5349
5350 j = DoPost(_REMOTE, '/modalities/self/store', {
5351 'Resources' : [ i ],
5352 'StorageCommitment' : True,
5353 })
5354
5355 transaction = j['StorageCommitmentTransactionUID']
5356 self.assertTrue(transaction.startswith('2.25.'))