11import json
2- from operator import add
32import xml .etree .ElementTree as ET
43from io import BytesIO
54from http import HTTPStatus
@@ -137,18 +136,24 @@ def test_search_for_studies(httpserver, client, cache_dir):
137136 )
138137
139138
140- def test_search_for_studies_with_additional_params (httpserver , client , cache_dir ):
139+ def test_search_for_studies_with_additional_params (
140+ httpserver ,
141+ client ,
142+ cache_dir
143+ ):
141144 cache_filename = str (cache_dir .joinpath ('search_for_studies.json' ))
142145 with open (cache_filename , 'r' ) as f :
143146 content = f .read ()
144147 parsed_content = json .loads (content )
145148 headers = {'content-type' : 'application/dicom+json' }
146149 httpserver .serve_content (content = content , code = 200 , headers = headers )
147- params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
150+ params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
148151 assert client .search_for_studies (additional_params = params ) == parsed_content
149152 request = httpserver .requests [0 ]
150153 assert request .path == '/studies'
151- assert request .query_string .decode () == 'key1=value1&key1=value2&key2=value3'
154+ assert request .query_string .decode () == (
155+ 'key1=value1&key1=value2&key2=value3'
156+ )
152157 assert all (
153158 mime [0 ] in ('application/json' , 'application/dicom+json' )
154159 for mime in request .accept_mimetypes
@@ -236,18 +241,24 @@ def test_search_for_series(httpserver, client, cache_dir):
236241 )
237242
238243
239- def test_search_for_series_with_additional_params (httpserver , client , cache_dir ):
244+ def test_search_for_series_with_additional_params (
245+ httpserver ,
246+ client ,
247+ cache_dir
248+ ):
240249 cache_filename = str (cache_dir .joinpath ('search_for_series.json' ))
241250 with open (cache_filename , 'r' ) as f :
242251 content = f .read ()
243252 parsed_content = json .loads (content )
244253 headers = {'content-type' : 'application/dicom+json' }
245254 httpserver .serve_content (content = content , code = 200 , headers = headers )
246- params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
255+ params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
247256 assert client .search_for_series (additional_params = params ) == parsed_content
248257 request = httpserver .requests [0 ]
249258 assert request .path == '/series'
250- assert request .query_string .decode () == 'key1=value1&key1=value2&key2=value3'
259+ assert request .query_string .decode () == (
260+ 'key1=value1&key1=value2&key2=value3'
261+ )
251262 assert all (
252263 mime [0 ] in ('application/json' , 'application/dicom+json' )
253264 for mime in request .accept_mimetypes
@@ -325,18 +336,26 @@ def test_search_for_instances(httpserver, client, cache_dir):
325336 )
326337
327338
328- def test_search_for_instances_with_additional_params (httpserver , client , cache_dir ):
339+ def test_search_for_instances_with_additional_params (
340+ httpserver ,
341+ client ,
342+ cache_dir
343+ ):
329344 cache_filename = str (cache_dir .joinpath ('search_for_instances.json' ))
330345 with open (cache_filename , 'r' ) as f :
331346 content = f .read ()
332347 parsed_content = json .loads (content )
333348 headers = {'content-type' : 'application/dicom+json' }
334349 httpserver .serve_content (content = content , code = 200 , headers = headers )
335- params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
336- assert client .search_for_instances (additional_params = params ) == parsed_content
350+ params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
351+ assert client .search_for_instances (
352+ additional_params = params
353+ ) == parsed_content
337354 request = httpserver .requests [0 ]
338355 assert request .path == '/instances'
339- assert request .query_string .decode () == 'key1=value1&key1=value2&key2=value3'
356+ assert request .query_string .decode () == (
357+ 'key1=value1&key1=value2&key2=value3'
358+ )
340359 assert all (
341360 mime [0 ] in ('application/json' , 'application/dicom+json' )
342361 for mime in request .accept_mimetypes
@@ -435,23 +454,32 @@ def test_retrieve_instance_metadata(httpserver, client, cache_dir):
435454 )
436455
437456
438- def test_retrieve_instance_metadata_with_additional_params (httpserver , client , cache_dir ):
457+ def test_retrieve_instance_metadata_with_additional_params (
458+ httpserver ,
459+ client ,
460+ cache_dir
461+ ):
439462 cache_filename = str (cache_dir .joinpath ('retrieve_instance_metadata.json' ))
440463 with open (cache_filename , 'r' ) as f :
441464 content = f .read ()
442465 parsed_content = json .loads (content )
443466 headers = {'content-type' : 'application/dicom+json' }
444467 httpserver .serve_content (content = content , code = 200 , headers = headers )
445- params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
468+ params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
446469 study_instance_uid = '1.2.3'
447470 series_instance_uid = '1.2.4'
448471 sop_instance_uid = '1.2.5'
449472 result = client .retrieve_instance_metadata (
450- study_instance_uid , series_instance_uid , sop_instance_uid , additional_params = params
473+ study_instance_uid ,
474+ series_instance_uid ,
475+ sop_instance_uid ,
476+ additional_params = params
451477 )
452478 assert result == parsed_content [0 ]
453479 request = httpserver .requests [0 ]
454- assert request .query_string .decode () == 'key1=value1&key1=value2&key2=value3'
480+ assert request .query_string .decode () == (
481+ 'key1=value1&key1=value2&key2=value3'
482+ )
455483 expected_path = (
456484 f'/studies/{ study_instance_uid } '
457485 f'/series/{ series_instance_uid } '
@@ -603,7 +631,12 @@ def test_retrieve_instance(httpserver, client, cache_dir):
603631 assert request .path == expected_path
604632 assert request .accept_mimetypes [0 ][0 ][:43 ] == headers ['content-type' ][:43 ]
605633
606- def test_retrieve_instance_with_additional_params (httpserver , client , cache_dir ):
634+
635+ def test_retrieve_instance_with_additional_params (
636+ httpserver ,
637+ client ,
638+ cache_dir
639+ ):
607640 cache_filename = str (cache_dir .joinpath ('file.dcm' ))
608641 with open (cache_filename , 'rb' ) as f :
609642 data = f .read ()
@@ -621,19 +654,24 @@ def test_retrieve_instance_with_additional_params(httpserver, client, cache_dir)
621654 content_type = headers ['content-type' ]
622655 )
623656 httpserver .serve_content (content = message , code = 200 , headers = headers )
624- params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
657+ params = {"key1" : ["value1" , "value2" ], "key2" : "value3" }
625658 study_instance_uid = '1.2.3'
626659 series_instance_uid = '1.2.4'
627660 sop_instance_uid = '1.2.5'
628661 response = client .retrieve_instance (
629- study_instance_uid , series_instance_uid , sop_instance_uid , additional_params = params
662+ study_instance_uid ,
663+ series_instance_uid ,
664+ sop_instance_uid ,
665+ additional_params = params
630666 )
631667 with BytesIO () as fp :
632668 pydicom .dcmwrite (fp , response )
633669 raw_result = fp .getvalue ()
634670 assert raw_result == data
635671 request = httpserver .requests [0 ]
636- assert request .query_string .decode () == 'key1=value1&key1=value2&key2=value3'
672+ assert request .query_string .decode () == (
673+ 'key1=value1&key1=value2&key2=value3'
674+ )
637675 expected_path = (
638676 f'/studies/{ study_instance_uid } '
639677 f'/series/{ series_instance_uid } '
0 commit comments