comparison Plugins/WSI/Run.py @ 570:9d41b7f18be8

WSI: added test_iiif_radiology
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 13 Jul 2023 16:51:42 +0200
parents 201e69006cff
children e6cee85fe421
comparison
equal deleted inserted replaced
569:201e69006cff 570:9d41b7f18be8
524 self.assertEqual(512, body['height']) 524 self.assertEqual(512, body['height'])
525 self.assertEqual('level0', body['service'][0]['profile']) 525 self.assertEqual('level0', body['service'][0]['profile'])
526 self.assertEqual('ImageService3', body['service'][0]['type']) 526 self.assertEqual('ImageService3', body['service'][0]['type'])
527 self.assertEqual('http://localhost:8042%s' % uri, body['service'][0]['id']) 527 self.assertEqual('http://localhost:8042%s' % uri, body['service'][0]['id'])
528 528
529 def test_iiif_radiology(self):
530 a = UploadInstance(ORTHANC, 'ColorTestMalaterre.dcm') ['ID']
531 b = UploadInstance(ORTHANC, 'Multiframe.dcm') ['ID']
532 c = UploadInstance(ORTHANC, 'Brainix/Epi/IM-0001-0001.dcm') ['ID']
533 d = UploadInstance(ORTHANC, 'Brainix/Epi/IM-0001-0002.dcm') ['ID']
534
535 s1 = DoGet(ORTHANC, '/instances/%s/series' % a) ['ID']
536 s2 = DoGet(ORTHANC, '/instances/%s/series' % b) ['ID']
537 s3 = DoGet(ORTHANC, '/instances/%s/series' % c) ['ID']
538
539 manifest = DoGet(ORTHANC, '/wsi/iiif/series/%s/manifest.json' % s1)
540 self.assertEqual(1, len(manifest['items']))
541
542 manifest = DoGet(ORTHANC, '/wsi/iiif/series/%s/manifest.json' % s2)
543 self.assertEqual(76, len(manifest['items']))
544
545 manifest = DoGet(ORTHANC, '/wsi/iiif/series/%s/manifest.json' % s3)
546 self.assertEqual(2, len(manifest['items']))
547
548 for (i, width, height) in [ (a, 41, 41),
549 (b, 512, 512),
550 (c, 256, 256),
551 (d, 256, 256) ]:
552 uri = '/wsi/iiif/frames/%s/0' % i
553 info = DoGet(ORTHANC, uri + '/info.json')
554 self.assertEqual(8, len(info))
555 self.assertEqual('http://iiif.io/api/image/3/context.json', info['@context'])
556 self.assertEqual('http://iiif.io/api/image', info['protocol'])
557 self.assertEqual('http://localhost:8042%s' % uri, info['id'])
558 self.assertEqual('level0', info['profile'])
559 self.assertEqual('ImageService3', info['type'])
560 self.assertEqual(width, info['width'])
561 self.assertEqual(height, info['height'])
562 self.assertEqual(1, len(info['tiles']))
563 self.assertEqual(3, len(info['tiles'][0]))
564 self.assertEqual(width, info['tiles'][0]['width'])
565 self.assertEqual(height, info['tiles'][0]['height'])
566 self.assertEqual([ 1 ], info['tiles'][0]['scaleFactors'])
529 567
530 try: 568 try:
531 print('\nStarting the tests...') 569 print('\nStarting the tests...')
532 unittest.main(argv = [ sys.argv[0] ] + args.options) 570 unittest.main(argv = [ sys.argv[0] ] + args.options)
533 571