diff --git a/.ci/build/apt.py b/.ci/build/apt.py index fd8d0ce8..000b13f7 100644 --- a/.ci/build/apt.py +++ b/.ci/build/apt.py @@ -1,6 +1,5 @@ import os import subprocess -import sys import tempfile import urllib.request @@ -14,16 +13,16 @@ repository = "https://iris-packages.s3.unistra.fr" try: - urllib.request.urlopen("{}/apt/dists/{}/Release".format(repository, codename)) + urllib.request.urlopen(f"{repository}/apt/dists/{codename}/Release") except urllib.request.HTTPError: pass else: with tempfile.NamedTemporaryFile() as fd: - fd.write(urllib.request.urlopen("{}/gpg.key".format(repository)).read()) + fd.write(urllib.request.urlopen(f"{repository}/gpg.key").read()) fd.flush() subprocess.check_call(["apt-key", "add", fd.name]) subprocess.check_call([ - "add-apt-repository", "deb {}/apt {} main".format(repository, codename)]) + "add-apt-repository", f"deb {repository}/apt {codename} main"]) subprocess.check_call(["apt-get", "update"]) subprocess.check_call([ diff --git a/.ci/build/build.py b/.ci/build/build.py index 142c4cba..796aaf79 100644 --- a/.ci/build/build.py +++ b/.ci/build/build.py @@ -1,6 +1,4 @@ -import multiprocessing import os -import re import subprocess import sys @@ -18,8 +16,8 @@ [ "cmake", "-G", "Ninja", - "-DPython_EXECUTABLE={}".format(sys.executable), - "-DCMAKE_INSTALL_PREFIX={}".format(install_dir), + f"-DPython_EXECUTABLE={sys.executable}", + f"-DCMAKE_INSTALL_PREFIX={install_dir}", workspace], cwd=build_dir) diff --git a/src/python/dicomifier/bruker_to_dicom/io/flat_dicom_writer.py b/src/python/dicomifier/bruker_to_dicom/io/flat_dicom_writer.py index a7ea6c80..2ee11319 100644 --- a/src/python/dicomifier/bruker_to_dicom/io/flat_dicom_writer.py +++ b/src/python/dicomifier/bruker_to_dicom/io/flat_dicom_writer.py @@ -26,7 +26,8 @@ def __call__(self, data_set): os.makedirs(self.root) if self.iso_9660: - filename = "{:08d}.dcm".format(1+len(self.files)) + count = 1 + len(self.files) + filename = f"{count:08}.dcm" else: filename = data_set[odil.registry.SOPInstanceUID][0].decode() diff --git a/src/python/dicomifier/bruker_to_dicom/io/nested_dicom_writer.py b/src/python/dicomifier/bruker_to_dicom/io/nested_dicom_writer.py index 66f03519..eb1350ef 100644 --- a/src/python/dicomifier/bruker_to_dicom/io/nested_dicom_writer.py +++ b/src/python/dicomifier/bruker_to_dicom/io/nested_dicom_writer.py @@ -30,7 +30,8 @@ def __call__(self, data_set): self._counts.setdefault(directory, 0) if self.iso_9660: - filename = "IM{:06d}".format(1+self._counts[directory]) + count = 1 + self._counts[directory] + filename = f"IM{count:06}" else: filename = data_set[odil.registry.SOPInstanceUID][0].decode() diff --git a/src/python/dicomifier/bruker_to_dicom/modules/image.py b/src/python/dicomifier/bruker_to_dicom/modules/image.py index e5e35401..69e7d20e 100644 --- a/src/python/dicomifier/bruker_to_dicom/modules/image.py +++ b/src/python/dicomifier/bruker_to_dicom/modules/image.py @@ -108,7 +108,7 @@ def get_frame_index(generator, frame_index): contribution = [ [fg[1], frame_index[i]] for i, fg in enumerate(generator.frame_groups) - if fg[1] != 'FG_SLICE'] + if fg[1] != "FG_SLICE"] return odil.DataSet( PurposeOfReferenceCodeSequence=[odil.DataSet( diff --git a/src/python/dicomifier/commands/search.py b/src/python/dicomifier/commands/search.py index 929a0c02..5e60953c 100644 --- a/src/python/dicomifier/commands/search.py +++ b/src/python/dicomifier/commands/search.py @@ -44,9 +44,9 @@ def __init__(self, argument): else: try: tag = int(items[0], 16) - except ValueError: + except ValueError as e: raise argparse.ArgumentTypeError( - f"Invalid DICOM tag '{items[0]}'") + f"Invalid DICOM tag '{items[0]}'") from e else: self.tag = odil.Tag(tag) diff --git a/src/python/dicomifier/dicom_to_nifti/convert.py b/src/python/dicomifier/dicom_to_nifti/convert.py index 93da1ac4..01fc12ca 100644 --- a/src/python/dicomifier/dicom_to_nifti/convert.py +++ b/src/python/dicomifier/dicom_to_nifti/convert.py @@ -126,7 +126,7 @@ def __init__(self, data_set): self.prefix = "{}: ".format(" / ".join(elements)) except Exception as e: - logger.debug("Series context configuration error: \"%s\"", e) + logger.debug('Series context configuration error: "%s"', e) self.prefix = "" def filter(self, record): @@ -215,11 +215,7 @@ def convert_series_data_sets(data_sets, dtype=None, extra_splitters=None): # Update progress information if len(stacks) > 1: - stack_info = "{}/{}".format(1 + stack_index, len(stacks)) - else: - stack_info = "" - if stack_info: - logger.debug("Converting stack %s", stack_info) + logger.debug(f"Converting stack {1 + stack_index}/{len(stacks)}") sort(key, stack) nifti_meta_data = meta_data.get_meta_data(stack, meta_data_cache) diff --git a/src/python/dicomifier/dicom_to_nifti/image.py b/src/python/dicomifier/dicom_to_nifti/image.py index 7eddcf1b..253bdddf 100644 --- a/src/python/dicomifier/dicom_to_nifti/image.py +++ b/src/python/dicomifier/dicom_to_nifti/image.py @@ -9,7 +9,6 @@ import math import re -import nibabel import numpy import odil @@ -40,7 +39,7 @@ def get_slice_image(data_set, shape, cache=None): siemens_data = siemens.parse_csa(item.get_memory_view().tobytes()) number_of_tiles = siemens_data["NumberOfImagesInMosaic"][0] - tiles_per_line = int(math.ceil(math.sqrt(number_of_tiles))) + tiles_per_line = math.ceil(math.sqrt(number_of_tiles)) # Re-arrange array so that tiles are contiguous array = array.reshape( @@ -107,7 +106,7 @@ def get_shape(stack): siemens_data = siemens.parse_csa(item.get_memory_view().tobytes()) number_of_tiles = siemens_data["NumberOfImagesInMosaic"][0] - tiles_per_line = int(math.ceil(math.sqrt(number_of_tiles))) + tiles_per_line = math.ceil(math.sqrt(number_of_tiles)) rows = data_set[odil.registry.Rows][0] // tiles_per_line cols = data_set[odil.registry.Columns][0] // tiles_per_line @@ -311,7 +310,7 @@ def get_geometry(stack): siemens_data = siemens.parse_csa(item.get_memory_view().tobytes()) number_of_tiles = siemens_data["NumberOfImagesInMosaic"][0] - tiles_per_line = int(math.ceil(math.sqrt(number_of_tiles))) + tiles_per_line = math.ceil(math.sqrt(number_of_tiles)) # Get the origin of the tiles (i.e. origin of the first tile), cf. # http://nipy.org/nibabel/dicom/dicom_mosaic.html diff --git a/src/python/dicomifier/dicom_to_nifti/io.py b/src/python/dicomifier/dicom_to_nifti/io.py index 6e9d3c14..b8e43403 100644 --- a/src/python/dicomifier/dicom_to_nifti/io.py +++ b/src/python/dicomifier/dicom_to_nifti/io.py @@ -62,16 +62,14 @@ def get_dicomdir_files(path): """ Return the list of files indexed in a DICOMDIR file. """ - dicom_files = [] dicomdir = odil.Reader.read_file(path)[1] - for record in dicomdir[odil.registry.DirectoryRecordSequence]: - if record[odil.registry.DirectoryRecordType][0] == b"IMAGE": - dicom_files.append( - os.path.join( - os.path.dirname(path), - *[x.decode() for x in record[odil.registry.ReferencedFileID]])) - - return dicom_files + return [ + os.path.join( + os.path.dirname(path), + *[x.decode() for x in record[odil.registry.ReferencedFileID]]) + for record in dicomdir[odil.registry.DirectoryRecordSequence] + if record[odil.registry.DirectoryRecordType][0] == b"IMAGE" + ] def write_nifti(nifti_data, destination, zip, series_directory=None): """ Write the NIfTI image and meta-data in the given destination. @@ -146,12 +144,12 @@ def get_first_item(item): # Patient directory: or or . patient_directory = None - if "PatientName" in meta_data and meta_data["PatientName"]: + if meta_data.get("PatientName"): patient_directory = get_first_item( meta_data["PatientName"])["Alphabetic"] - elif "PatientID" in meta_data and meta_data["PatientID"]: + elif meta_data.get("PatientID"): patient_directory = meta_data["PatientID"][0] - elif "StudyInstanceUID" in meta_data and meta_data["StudyInstanceUID"]: + elif meta_data.get("StudyInstanceUID"): patient_directory = meta_data["StudyInstanceUID"][0] else: raise Exception("Cannot determine patient directory") @@ -159,15 +157,15 @@ def get_first_item(item): # Study directory: _, both parts are # optional. If both tags are missing or empty, raise an exception study_directory = [] - if "StudyID" in meta_data and meta_data["StudyID"]: + if meta_data.get("StudyID"): study_directory.append( numpy.ravel([x for x in meta_data["StudyID"] if x])[0]) - if "StudyDescription" in meta_data and meta_data["StudyDescription"]: + if meta_data.get("StudyDescription"): study_directory.append( numpy.ravel([x for x in meta_data["StudyDescription"] if x])[0]) if not study_directory: - if "StudyInstanceUID" in meta_data and meta_data["StudyInstanceUID"]: + if meta_data.get("StudyInstanceUID"): study_directory = [meta_data["StudyInstanceUID"][0]] else: raise Exception("Cannot determine study directory") @@ -177,18 +175,18 @@ def get_first_item(item): # Study directory: _, both parts are # optional. If both tags are missing or empty, raise an exception series_directory = [] - if "SeriesNumber" in meta_data and meta_data["SeriesNumber"]: + if meta_data.get("SeriesNumber"): series_directory.append(str(get_series_number(meta_data))) - if "SeriesDescription" in meta_data and meta_data["SeriesDescription"]: + if meta_data.get("SeriesDescription"): series_directory.append( numpy.ravel( [x for x in meta_data["SeriesDescription"] if x])[0]) - elif "ProtocolName" in meta_data and meta_data["ProtocolName"]: + elif meta_data.get("ProtocolName"): series_directory.append( numpy.ravel([x for x in meta_data["ProtocolName"] if x])[0]) if not series_directory: - if "SeriesInstanceUID" in meta_data and meta_data["SeriesInstanceUID"]: + if meta_data.get("SeriesInstanceUID"): series_directory = [meta_data["SeriesInstanceUID"][0]] else: raise Exception("Cannot determine series directory") diff --git a/src/python/dicomifier/dicom_to_nifti/meta_data.py b/src/python/dicomifier/dicom_to_nifti/meta_data.py index eb568608..e8d061be 100644 --- a/src/python/dicomifier/dicom_to_nifti/meta_data.py +++ b/src/python/dicomifier/dicom_to_nifti/meta_data.py @@ -84,7 +84,7 @@ def get_meta_data(stack, cache=None): for i, (data_set, frame) in enumerate(stack): try: sop_instance_uid = data_set[odil.registry.SOPInstanceUID][0] - except Exception as e: + except Exception: raise # Fetch non-frame-specific elements from cache for tag, element in cache[sop_instance_uid].items(): @@ -170,7 +170,7 @@ def get_tag_name(tag): try: tag_name = tag.get_name() - except odil.Exception as e: + except odil.Exception: tag_name = str(tag) return tag_name @@ -182,9 +182,7 @@ def convert_element(element, specific_character_set): result = None # element can be None because a get is called above - if element is None: - result = None - elif element.empty(): + if element is None or element.empty(): result = None elif element.is_int() or element.is_real(): result = list(element) diff --git a/src/python/dicomifier/dicom_to_nifti/series/__init__.py b/src/python/dicomifier/dicom_to_nifti/series/__init__.py index ef19577b..350b9f00 100644 --- a/src/python/dicomifier/dicom_to_nifti/series/__init__.py +++ b/src/python/dicomifier/dicom_to_nifti/series/__init__.py @@ -21,8 +21,8 @@ def split_series(files): """ logger.info( - "Splitting %d DICOM file%s in series", - len(files), "s" if len(files) > 1 else "") + "Splitting {} DICOM file{} in series".format( + len(files), "s" if len(files) > 1 else "")) series = {} for file_ in files: @@ -31,7 +31,7 @@ def split_series(files): file_, halt_condition=lambda x: x>odil.registry.SeriesInstanceUID) except odil.Exception as e: - logger.warning("Could not read %s: %s" % (file_, e)) + logger.warning(f"Could not read {file_}: {e}") continue uncompressed_ts = [ @@ -43,7 +43,7 @@ def split_series(files): ]] if header[odil.registry.TransferSyntaxUID][0] not in uncompressed_ts: logger.warning( - "Could not read %s: compressed transfer syntax", file_) + f"Could not read {file_}: compressed transfer syntax") continue series_instance_uid = None @@ -55,13 +55,13 @@ def split_series(files): series_instance_uid = finder(data_set) except Exception as e: logger.warning( - "Could not run %s: %s" % (finder_class.__name__, e)) + f"Could not run {finder_class.__name__}: {e}") continue if series_instance_uid is not None: break if series_instance_uid is None: - logger.warning("Could not find a series for %s", file_) + logger.warning(f"Could not find a series for {file_}") continue series.setdefault(finder, []).append(file_) diff --git a/src/python/dicomifier/dicom_to_nifti/siemens.py b/src/python/dicomifier/dicom_to_nifti/siemens.py index 0861c504..826d33f3 100644 --- a/src/python/dicomifier/dicom_to_nifti/siemens.py +++ b/src/python/dicomifier/dicom_to_nifti/siemens.py @@ -48,7 +48,7 @@ def parse_value(value, name): if value.startswith(b"0x"): return int(value.split()[0], 16) - elif value.startswith(b"\""): + elif value.startswith(b'"'): return re.findall(br'""(.*)""', value)[0].decode() else: int_match = re.match(br"^[+-]?\d+$", value) @@ -138,9 +138,9 @@ def parse_item(csa, start): length = struct.unpack(format, csa[start:start+header_size]) format = ("<" # Little endian - "{0}s" # Content - "{1}s" # Padding (?) - ).format(length[1], (4-length[1]%4)%4) + f"{length[1]}s" # Content + f"{(4-length[1]%4)%4}s" # Padding (?) + ) content_size = struct.calcsize(format) content, padding = struct.unpack( format, csa[start+header_size:start+header_size+content_size]) @@ -206,7 +206,7 @@ def value_parser(type_, value): element) is_array, type_, name, index = match.groups() - full_name = "{}{}{}".format(is_array.decode(), type_.decode(), name.decode()) + full_name = f"{is_array.decode()}{type_.decode()}{name.decode()}" is_array = (is_array == b"a") if index: diff --git a/src/python/dicomifier/dicom_to_nifti/stacks.py b/src/python/dicomifier/dicom_to_nifti/stacks.py index a4a37a81..9a23fc91 100644 --- a/src/python/dicomifier/dicom_to_nifti/stacks.py +++ b/src/python/dicomifier/dicom_to_nifti/stacks.py @@ -91,10 +91,10 @@ def build_selector( # Normalize the keys so that all stacks have the same key fields key_items = set() - for key in stacks.keys(): + for key in stacks: key_items.update(x[0] for x in key) normalized_keys = {} - for key in stacks.keys(): + for key in stacks: normalized_keys[key] = list(key) for key_item in key_items: if key_item not in [x[0] for x in key]: @@ -559,7 +559,7 @@ def _find_private_creator(data_set, private_creator, group): tag = odil.Tag(group, 0x0000) private_group = None - for element in range(0, 256): + for element in range(256): tag.element = element # Get the content of the potential private creator. It may be stored as diff --git a/tests/diff/to_dicom.py b/tests/diff/to_dicom.py index 4206c273..3ed62b32 100755 --- a/tests/diff/to_dicom.py +++ b/tests/diff/to_dicom.py @@ -45,7 +45,7 @@ def main(): "to-dicom", "--dicomdir"] +arguments +[case_input, case_output]) - except subprocess.CalledProcessError as e: + except subprocess.CalledProcessError: return 1 different |= diff_directories(case_baseline, case_output) @@ -92,8 +92,8 @@ def diff_directories(baseline, test): for filename in filenames: if not os.path.isfile(os.path.join(baseline_pathname, filename)): different = True - print("{} missing in baseline".format( - os.path.join(relative_pathname, filename))) + relative_filename = os.path.join(relative_pathname, filename) + print(f"{relative_filename} missing in baseline") return different diff --git a/tests/diff/to_nifti.py b/tests/diff/to_nifti.py index 54f01909..ee3b30b8 100755 --- a/tests/diff/to_nifti.py +++ b/tests/diff/to_nifti.py @@ -1,5 +1,3 @@ -from __future__ import print_function - import base64 import json import os @@ -15,7 +13,7 @@ def main(): root = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "data")) - input_ = os.path.join(root, "baseline") + _input = os.path.join(root, "baseline") baseline = os.path.join(root, "baseline") inputs = [ @@ -26,12 +24,13 @@ def main(): "lb_140721.Bx1" ] - tests = [] - for path in inputs: - for suffix in ["", ".multi"]: - tests.append([ - os.path.join(baseline, f"{path}.dcm{suffix}"), - os.path.join(baseline, f"{path}.nii{suffix}")]) + tests = [ + [ + os.path.join(baseline, f"{path}.dcm{suffix}"), + os.path.join(baseline, f"{path}.nii{suffix}")] + for path in inputs + for suffix in ("", ".multi") + ] different = False for case_input, case_baseline in tests: @@ -45,7 +44,7 @@ def main(): # "-v", "debug", "to-nifti", case_input, case_output]) - except subprocess.CalledProcessError as e: + except subprocess.CalledProcessError: return 1 different = different or diff_directories(case_baseline, case_output) @@ -70,55 +69,53 @@ def diff_directories(baseline, test): if not os.path.isfile(os.path.join(test_pathname, filename)): print(f"{relative_filename} missing in test") - else: - if filename.endswith(".json"): - meta_data = [ - json.load(open(baseline_filename)), - json.load(open(test_filename))] - # Process EncapsulatedDocument separately - differences = diff.diff( - *meta_data, exclusions=["EncapsulatedDocument"]) + elif filename.endswith(".json"): + meta_data = [ + json.load(open(baseline_filename)), + json.load(open(test_filename))] + # Process EncapsulatedDocument separately + differences = diff.diff( + *meta_data, exclusions=["EncapsulatedDocument"]) + if differences: + different = True + print(f"Meta-data differences in {relative_filename}") + diff.print_differences(differences, 1) + + encapsulated_documents = [ + [ + json.loads(base64.b64decode(x).strip(b"\x00").decode()) + for x in m.get("EncapsulatedDocument", [])] + for m in meta_data] + for documents in zip(*encapsulated_documents): + differences = diff.diff(*documents) if differences: different = True - print(f"Meta-data differences in {relative_filename}") + print(f"Encapsulated document differences in {relative_filename}") diff.print_differences(differences, 1) - - encapsulated_documents = [ - [ - json.loads(base64.b64decode(x).strip(b"\x00").decode()) - for x in m.get("EncapsulatedDocument", [])] - for m in meta_data] - for documents in zip(*encapsulated_documents): - differences = diff.diff(*documents) - if differences: - different = True - print(f"Encapsulated document differences in {relative_filename}") - diff.print_differences(differences, 1) - elif filename.endswith(".nii") or filename.endswith(".nii.gz"): - images = [ - nibabel.load(x) - for x in [baseline_filename, test_filename]] - meta_data = [ - [x.affine.shape, x.affine.ravel().tolist(), x.shape] - for x in images] - differences = diff.diff(*meta_data) - if differences: - different = True - print(f"Geometry differences in {relative_filename}") - diff.print_differences(differences, 1) - pixel_data = [numpy.asanyarray(x.dataobj) for x in images] - if not numpy.allclose(*pixel_data): - different = True - print(f"Pixel data differences in {relative_filename}") - else: - try: - subprocess.check_output( - ["diff", baseline_filename, test_filename], - stderr=subprocess.STDOUT) - except subprocess.CalledProcessError as e: - different = True - print("Differences on {}".format( - os.path.join(relative_pathname, filename))) + elif filename.endswith((".nii", ".nii.gz")): + images = [ + nibabel.load(x) + for x in [baseline_filename, test_filename]] + meta_data = [ + [x.affine.shape, x.affine.ravel().tolist(), x.shape] + for x in images] + differences = diff.diff(*meta_data) + if differences: + different = True + print(f"Geometry differences in {relative_filename}") + diff.print_differences(differences, 1) + pixel_data = [numpy.asanyarray(x.dataobj) for x in images] + if not numpy.allclose(*pixel_data): + different = True + print(f"Pixel data differences in {relative_filename}") + else: + try: + subprocess.check_output( + ["diff", baseline_filename, test_filename], + stderr=subprocess.STDOUT) + except subprocess.CalledProcessError: + different = True + print(f"Differences on {relative_filename}") # Walk the test to find files missing in baseline (the difference between # files has already been tested). @@ -128,8 +125,8 @@ def diff_directories(baseline, test): for filename in filenames: if not os.path.isfile(os.path.join(baseline_pathname, filename)): different = True - print("{} missing in baseline".format( - os.path.join(relative_pathname, filename))) + relative_filename = os.path.join(relative_pathname, filename) + print(f"{relative_filename} missing in baseline") return different diff --git a/tests/python/bruker/test_dataset.py b/tests/python/bruker/test_dataset.py index 59b806a1..e5dfb054 100644 --- a/tests/python/bruker/test_dataset.py +++ b/tests/python/bruker/test_dataset.py @@ -36,7 +36,7 @@ def test_load(self): dataset.load(self.path) fields = [[name, value] for name, value in dataset.items()] - self.assertEqual([x[0] for x in fields], [x for x in dataset]) + self.assertEqual([x[0] for x in fields], list(dataset)) expected_fields = [ ["FieldName", [], ["1 Field Value"]], diff --git a/tests/python/bruker/test_grammar.py b/tests/python/bruker/test_grammar.py index e2b275d1..e1374112 100644 --- a/tests/python/bruker/test_grammar.py +++ b/tests/python/bruker/test_grammar.py @@ -1,7 +1,5 @@ import os -import pathlib import tempfile -import textwrap import unittest import dicomifier diff --git a/tests/python/bruker_to_dicom/test_convert.py b/tests/python/bruker_to_dicom/test_convert.py index f998041c..9a924def 100644 --- a/tests/python/bruker_to_dicom/test_convert.py +++ b/tests/python/bruker_to_dicom/test_convert.py @@ -1,7 +1,5 @@ import unittest -import numpy - import dicomifier import odil @@ -80,7 +78,7 @@ def test_convert_element_required(self): tag, odil.DataSet(), odil.registry.ImplicitVRLittleEndian) with self.assertRaises(Exception) as context: - val = dicomifier.bruker_to_dicom.convert.convert_element( + _ = dicomifier.bruker_to_dicom.convert.convert_element( bruker_data_set, dicom_data_set, "VisuSubjectName", "PatientName", 1, None, frame_index, generator, vr_finder_function diff --git a/tests/python/bruker_to_dicom/test_enhanced_mr_image_storage.py b/tests/python/bruker_to_dicom/test_enhanced_mr_image_storage.py index 81bd6c29..2fedf043 100644 --- a/tests/python/bruker_to_dicom/test_enhanced_mr_image_storage.py +++ b/tests/python/bruker_to_dicom/test_enhanced_mr_image_storage.py @@ -1,7 +1,5 @@ import unittest -import numpy - from dicomifier.bruker_to_dicom.iods.enhanced_mr_image_storage import merge_shared_groups import dicomifier import odil diff --git a/tests/python/bruker_to_dicom/test_frame_index_generator.py b/tests/python/bruker_to_dicom/test_frame_index_generator.py index a8244e5e..6481c767 100644 --- a/tests/python/bruker_to_dicom/test_frame_index_generator.py +++ b/tests/python/bruker_to_dicom/test_frame_index_generator.py @@ -1,7 +1,5 @@ import unittest -import numpy - import dicomifier class TestFrameIndexGenerator(unittest.TestCase): diff --git a/tests/python/dicom_to_nifti/series/test_default_series_finder.py b/tests/python/dicom_to_nifti/series/test_default_series_finder.py index 11872180..95930240 100644 --- a/tests/python/dicom_to_nifti/series/test_default_series_finder.py +++ b/tests/python/dicom_to_nifti/series/test_default_series_finder.py @@ -1,6 +1,5 @@ import unittest -import numpy import odil import dicomifier diff --git a/tests/python/dicom_to_nifti/series/test_siemens_xa_classic_2d_series_finder.py b/tests/python/dicom_to_nifti/series/test_siemens_xa_classic_2d_series_finder.py index ab9fe65f..c8be3051 100644 --- a/tests/python/dicom_to_nifti/series/test_siemens_xa_classic_2d_series_finder.py +++ b/tests/python/dicom_to_nifti/series/test_siemens_xa_classic_2d_series_finder.py @@ -1,6 +1,5 @@ import unittest -import numpy import odil import dicomifier diff --git a/tests/python/dicom_to_nifti/test_image.py b/tests/python/dicom_to_nifti/test_image.py index f8c18d54..76fac836 100644 --- a/tests/python/dicom_to_nifti/test_image.py +++ b/tests/python/dicom_to_nifti/test_image.py @@ -1,4 +1,3 @@ -import base64 import unittest import numpy diff --git a/tests/python/dicom_to_nifti/test_meta_data.py b/tests/python/dicom_to_nifti/test_meta_data.py index 9dbf1473..2d95bed9 100644 --- a/tests/python/dicom_to_nifti/test_meta_data.py +++ b/tests/python/dicom_to_nifti/test_meta_data.py @@ -1,8 +1,6 @@ import base64 import unittest -import numpy - import dicomifier import odil @@ -58,7 +56,7 @@ def test_convert_element(self): self.assertEqual( dicomifier.dicom_to_nifti.meta_data.convert_element( element, ["ISO_IR 126"]), - [{u"Alphabetic" : u"\x03\x91"}]) + [{"Alphabetic" : "\x03\x91"}]) element = odil.Element( [odil.Value.BinaryItem(b"\01\x02\x03\x04")], odil.VR.OB) diff --git a/tests/python/dicom_to_nifti/test_stacks.py b/tests/python/dicom_to_nifti/test_stacks.py index bc837367..c3205e83 100644 --- a/tests/python/dicom_to_nifti/test_stacks.py +++ b/tests/python/dicom_to_nifti/test_stacks.py @@ -1,6 +1,5 @@ import unittest -import numpy import odil import dicomifier diff --git a/tests/python/nifti/test_diffusion.py b/tests/python/nifti/test_diffusion.py index 52ce3b58..7cbf2a75 100644 --- a/tests/python/nifti/test_diffusion.py +++ b/tests/python/nifti/test_diffusion.py @@ -1,6 +1,5 @@ import io import json -import textwrap import unittest import dicomifier diff --git a/tests/python/test_exception.py b/tests/python/test_exception.py index de69cd37..fbb86cdc 100644 --- a/tests/python/test_exception.py +++ b/tests/python/test_exception.py @@ -5,11 +5,11 @@ class TestException(unittest.TestCase): def test_python_generic(self): with self.assertRaises(Exception): - raise dicomifier.Exception() + raise dicomifier.Exception def test_python_specific(self): with self.assertRaises(dicomifier.Exception): - raise dicomifier.Exception() + raise dicomifier.Exception def test_cpp_generic(self): with self.assertRaises(Exception): diff --git a/tests/python/test_meta_data.py b/tests/python/test_meta_data.py index 93938af8..df5dc023 100644 --- a/tests/python/test_meta_data.py +++ b/tests/python/test_meta_data.py @@ -1,7 +1,5 @@ import unittest -import numpy - import dicomifier class TestMetaData(unittest.TestCase): @@ -16,7 +14,7 @@ def test_expand_0d(self): value = meta_data.expand("ImageType", (2, 3)) self.assertEqual(value.shape, (2, 3, 2)) self.assertTrue( - all([all(x == ["ORIGINAL", "PRIMARY"]) for x in value.reshape(-1, 2)]) + all(all(x == ["ORIGINAL", "PRIMARY"]) for x in value.reshape(-1, 2)) ) def test_expand_1d(self):