Mercurial > hg > orthanc-tests
comparison Plugins/WebDav/Run.py @ 342:bf8369ea3ff1
more tests of webdav
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 15 Oct 2020 17:34:01 +0200 |
parents | 60775134a406 |
children | 203af01474b6 |
comparison
equal
deleted
inserted
replaced
341:66a36befb208 | 342:bf8369ea3ff1 |
---|---|
156 self.assertEqual(1, len(patients)) | 156 self.assertEqual(1, len(patients)) |
157 self.assertEqual(patients[0].name, '/webdav/by-patients/') | 157 self.assertEqual(patients[0].name, '/webdav/by-patients/') |
158 self.assertEqual(0, patients[0].size) | 158 self.assertEqual(0, patients[0].size) |
159 self.assertEqual('', patients[0].contenttype) | 159 self.assertEqual('', patients[0].contenttype) |
160 | 160 |
161 self.assertRaises(Exception, lambda: WEBDAV.delete('/webdav/nope')) | |
162 self.assertRaises(Exception, lambda: WEBDAV.delete('/webdav/by-uids')) | |
163 | |
161 | 164 |
162 def test_upload(self): | 165 def test_upload(self): |
163 self.assertEqual(0, len(ListFiles('/webdav/uploads/', True))) | 166 self.assertEqual(0, len(ListFiles('/webdav/uploads/', True))) |
164 | 167 |
165 uploads = WEBDAV.ls('/webdav/uploads/') | 168 uploads = WEBDAV.ls('/webdav/uploads/') |
219 self.assertEqual(3, len(content)) | 222 self.assertEqual(3, len(content)) |
220 self.assertTrue(('/webdav/by-uids/%s/study.json' % studyUid) in content) | 223 self.assertTrue(('/webdav/by-uids/%s/study.json' % studyUid) in content) |
221 self.assertTrue(('/webdav/by-uids/%s/%s/series.json' % (studyUid, seriesUid)) in content) | 224 self.assertTrue(('/webdav/by-uids/%s/%s/series.json' % (studyUid, seriesUid)) in content) |
222 self.assertTrue(('/webdav/by-uids/%s/%s/%s.dcm' % (studyUid, seriesUid, sopUid)) in content) | 225 self.assertTrue(('/webdav/by-uids/%s/%s/%s.dcm' % (studyUid, seriesUid, sopUid)) in content) |
223 | 226 |
227 # Deleting the virtual files "study|series.json" has no | |
228 # effect, but is needed for recursive DELETE in some file explorers | |
229 WEBDAV.delete('/webdav/by-uids/%s/study.json' % studyUid) | |
230 WEBDAV.delete('/webdav/by-uids/%s/%s/series.json' % (studyUid, seriesUid)) | |
231 | |
224 info = GetFileInfo('/webdav/by-uids/%s/study.json' % studyUid) | 232 info = GetFileInfo('/webdav/by-uids/%s/study.json' % studyUid) |
225 self.assertEqual(info.contenttype, 'application/json') | 233 self.assertEqual(info.contenttype, 'application/json') |
226 | 234 |
227 info = GetFileInfo('/webdav/by-uids/%s/%s/series.json' % (studyUid, seriesUid)) | 235 info = GetFileInfo('/webdav/by-uids/%s/%s/series.json' % (studyUid, seriesUid)) |
228 self.assertEqual(info.contenttype, 'application/json') | 236 self.assertEqual(info.contenttype, 'application/json') |
375 self.assertEqual(1, len(DoGet(ORTHANC, '/instances'))) | 383 self.assertEqual(1, len(DoGet(ORTHANC, '/instances'))) |
376 WEBDAV.delete('%s/%s.dcm' % (folder, i)) | 384 WEBDAV.delete('%s/%s.dcm' % (folder, i)) |
377 self.assertEqual(0, len(DoGet(ORTHANC, '/instances'))) | 385 self.assertEqual(0, len(DoGet(ORTHANC, '/instances'))) |
378 self.assertEqual(0, len(ListFiles('/webdav/by-dates/', True))) | 386 self.assertEqual(0, len(ListFiles('/webdav/by-dates/', True))) |
379 | 387 |
388 | |
389 def test_delete_folder(self): | |
390 # These deletes should have no effect | |
391 UploadInstance(ORTHANC, 'DummyCT.dcm') | |
392 self.assertEqual(1, len(DoGet(ORTHANC, '/instances'))) | |
393 WEBDAV.delete('/webdav/by-uids/1.2.840.113619.2.176.2025.1499492.7391.1171285944.390/study.json') | |
394 WEBDAV.delete('/webdav/by-uids/1.2.840.113619.2.176.2025.1499492.7391.1171285944.390/1.2.840.113619.2.176.2025.1499492.7391.1171285944.394/series.json') | |
395 WEBDAV.delete('/webdav/by-dates/2007/2007-02') | |
396 WEBDAV.delete('/webdav/by-dates/2006') | |
397 self.assertEqual(1, len(DoGet(ORTHANC, '/instances'))) | |
398 | |
399 for path in [ | |
400 '/webdav/by-uids/1.2.840.113619.2.176.2025.1499492.7391.1171285944.390/1.2.840.113619.2.176.2025.1499492.7391.1171285944.394/1.2.840.113619.2.176.2025.1499492.7040.1171286242.109.dcm', | |
401 '/webdav/by-patients/ozp00SjY2xG - KNIX/20070101 - Knee (R)/MR - AX. FSE PD/66a662ce-7430e543-bad44d47-0dc5a943-ec7a538d.dcm', | |
402 '/webdav/by-studies/ozp00SjY2xG - KNIX - Knee (R)/MR - AX. FSE PD/66a662ce-7430e543-bad44d47-0dc5a943-ec7a538d.dcm', | |
403 '/webdav/by-dates/2007/2007-01/ozp00SjY2xG - KNIX - Knee (R)/MR - AX. FSE PD/66a662ce-7430e543-bad44d47-0dc5a943-ec7a538d.dcm', | |
404 ]: | |
405 tokens = path.split('/') | |
406 for i in range(4, len(tokens) + 1): | |
407 p = '/'.join(tokens[0:i]) | |
408 UploadInstance(ORTHANC, 'DummyCT.dcm') | |
409 self.assertEqual(1, len(DoGet(ORTHANC, '/instances'))) | |
410 WEBDAV.delete(p) | |
411 self.assertEqual(0, len(DoGet(ORTHANC, '/instances'))) | |
412 | |
380 | 413 |
381 try: | 414 try: |
382 print('\nStarting the tests...') | 415 print('\nStarting the tests...') |
383 unittest.main(argv = [ sys.argv[0] ] + args.options) | 416 unittest.main(argv = [ sys.argv[0] ] + args.options) |
384 | 417 |