Skip to content

Commit

Permalink
Merge pull request #17 from ZviBaratz/isort
Browse files Browse the repository at this point in the history
isort integration
  • Loading branch information
ZviBaratz committed Jan 27, 2021
2 parents e76a37c + 7654b96 commit 880c454
Show file tree
Hide file tree
Showing 30 changed files with 100 additions and 109 deletions.
7 changes: 4 additions & 3 deletions dicom_parser/data_element.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
Definition of the :class:`DataElement` class.
"""

import pandas as pd
import re
from typing import Any

import pandas as pd
from pydicom.dataelem import DataElement as PydicomDataElement

from dicom_parser.utils.parse_tag import parse_tag
from dicom_parser.utils.value_representation import ValueRepresentation
from pydicom.dataelem import DataElement as PydicomDataElement
from typing import Any


class DataElement:
Expand Down
12 changes: 4 additions & 8 deletions dicom_parser/data_elements/code_string.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,13 @@
"""

import warnings
from enum import Enum

from dicom_parser.data_element import DataElement
from dicom_parser.utils.code_strings import (
Modality,
Sex,
PatientPosition,
ScanningSequence,
SequenceVariant,
)
from dicom_parser.utils.code_strings import (Modality, PatientPosition,
ScanningSequence, SequenceVariant,
Sex)
from dicom_parser.utils.value_representation import ValueRepresentation
from enum import Enum


class CodeString(DataElement):
Expand Down
1 change: 1 addition & 0 deletions dicom_parser/data_elements/date.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
"""

from datetime import datetime

from dicom_parser.data_element import DataElement
from dicom_parser.data_elements.messages import DATE_PARSING_FAILURE
from dicom_parser.utils.value_representation import ValueRepresentation
Expand Down
3 changes: 2 additions & 1 deletion dicom_parser/data_elements/person_name.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
element.
"""

from pydicom.valuerep import PersonName as PydicomPersonName

from dicom_parser.data_element import DataElement
from dicom_parser.utils.value_representation import ValueRepresentation
from pydicom.valuerep import PersonName as PydicomPersonName


class PersonName(DataElement):
Expand Down
18 changes: 8 additions & 10 deletions dicom_parser/data_elements/private_data_element.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,17 @@
data element.
"""

from types import FunctionType
from typing import Any

from pydicom.dataelem import DataElement as PydicomDataElement

from dicom_parser.data_element import DataElement
from dicom_parser.utils.siemens.private_tags import (
parse_siemens_b_matrix,
parse_siemens_bandwith_per_pixel_phase_encode,
parse_siemens_csa_header,
parse_siemens_gradient_direction,
parse_siemens_number_of_slices_in_mosaic,
parse_siemens_slice_timing,
)
parse_siemens_b_matrix, parse_siemens_bandwith_per_pixel_phase_encode,
parse_siemens_csa_header, parse_siemens_gradient_direction,
parse_siemens_number_of_slices_in_mosaic, parse_siemens_slice_timing)
from dicom_parser.utils.value_representation import ValueRepresentation
from pydicom.dataelem import DataElement as PydicomDataElement
from types import FunctionType
from typing import Any

#: A dictionary matching private data elements to their appropriate parsing
#: method.
Expand Down
2 changes: 1 addition & 1 deletion dicom_parser/data_elements/sequence_of_items.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
"""

import pandas as pd
from pydicom.dataset import Dataset as PydicomDataset

from dicom_parser.data_element import DataElement
from dicom_parser.data_elements.messages import INVALID_SEQUENCE_PARSING
from dicom_parser.utils.format_header_df import format_header_df
from dicom_parser.utils.value_representation import ValueRepresentation
from pydicom.dataset import Dataset as PydicomDataset


class SequenceOfItems(DataElement):
Expand Down
1 change: 1 addition & 0 deletions dicom_parser/data_elements/time.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
"""

from datetime import datetime

from dicom_parser.data_element import DataElement
from dicom_parser.data_elements.messages import TIME_PARSING_FAILURE
from dicom_parser.utils.value_representation import ValueRepresentation
Expand Down
18 changes: 9 additions & 9 deletions dicom_parser/header.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@
"""
import json
from collections.abc import KeysView
from pathlib import Path
from types import GeneratorType
from typing import Any, Union

import pandas as pd
from pydicom.dataelem import DataElement as PydicomDataElement
from pydicom.dataset import FileDataset

from collections.abc import KeysView
from dicom_parser.data_element import DataElement
from dicom_parser.utils.format_header_df import format_header_df
from dicom_parser.utils.private_tags import PRIVATE_TAGS
from dicom_parser.utils.read_file import read_file
from dicom_parser.utils.sequence_detector.sequence_detector import (
SequenceDetector,
)
from dicom_parser.utils.sequence_detector.sequence_detector import \
SequenceDetector
from dicom_parser.utils.value_representation import ValueRepresentation
from dicom_parser.utils.vr_to_data_element import get_data_element_class
from pathlib import Path
from pydicom.dataelem import DataElement as PydicomDataElement
from pydicom.dataset import FileDataset
from types import GeneratorType
from typing import Any, Union


class Header:
Expand Down
9 changes: 5 additions & 4 deletions dicom_parser/image.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,17 @@
"""

import numpy as np
import warnings
from pathlib import Path
from typing import Union

import numpy as np
from pydicom.dataset import FileDataset

from dicom_parser import messages
from dicom_parser.header import Header
from dicom_parser.utils.read_file import read_file
from dicom_parser.utils.siemens.mosaic import Mosaic
from pathlib import Path
from pydicom.dataset import FileDataset
from typing import Union


class Image:
Expand Down
8 changes: 3 additions & 5 deletions dicom_parser/series.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,9 @@
import numpy as np

from dicom_parser.image import Image
from dicom_parser.messages import (
EMPTY_SERIES_DIRECTORY,
INVALID_INDEXING_OPERATOR,
INVALID_SERIES_DIRECTORY,
)
from dicom_parser.messages import (EMPTY_SERIES_DIRECTORY,
INVALID_INDEXING_OPERATOR,
INVALID_SERIES_DIRECTORY)
from dicom_parser.utils.mime_generator import generate_by_mime
from dicom_parser.utils.peek import peek

Expand Down
2 changes: 1 addition & 1 deletion dicom_parser/utils/code_strings/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
from dicom_parser.utils.code_strings.modality import Modality
from dicom_parser.utils.code_strings.patient_position import PatientPosition
from dicom_parser.utils.code_strings.scanning_sequence import ScanningSequence
from dicom_parser.utils.code_strings.sex import Sex
from dicom_parser.utils.code_strings.sequence_variant import SequenceVariant
from dicom_parser.utils.code_strings.sex import Sex
1 change: 1 addition & 0 deletions dicom_parser/utils/format_header_df.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"""

import functools

import pandas as pd


Expand Down
1 change: 0 additions & 1 deletion dicom_parser/utils/peek.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
"""

import itertools

from types import GeneratorType


Expand Down
7 changes: 4 additions & 3 deletions dicom_parser/utils/read_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@
Definition of the :func:`read_file` function.
"""

from pathlib import Path
from typing import Union

import pydicom
from pydicom.dataset import FileDataset

from dicom_parser.utils.messages import BAD_FILE_INPUT
from pathlib import Path
from pydicom.dataset import FileDataset
from typing import Union


def read_file(
Expand Down
5 changes: 2 additions & 3 deletions dicom_parser/utils/sequence_detector/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
from dicom_parser.utils.sequence_detector.sequence_detector import (
SequenceDetector,
)
from dicom_parser.utils.sequence_detector.sequence_detector import \
SequenceDetector
4 changes: 1 addition & 3 deletions dicom_parser/utils/sequence_detector/sequence_detector.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,7 @@
"""

from dicom_parser.utils.sequence_detector.messages import (
INVALID_MODALITY,
WRONG_DEFINITION_TYPE,
)
INVALID_MODALITY, WRONG_DEFINITION_TYPE)
from dicom_parser.utils.sequence_detector.sequences import SEQUENCES


Expand Down
28 changes: 11 additions & 17 deletions dicom_parser/utils/vr_to_data_element.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,21 @@
:class:`dicom_parser.data_element.DataElement` subclass.
"""

from dicom_parser.data_element import DataElement
from dicom_parser.data_elements.age_string import AgeString
from dicom_parser.data_elements.application_entity import ApplicationEntity
from dicom_parser.data_elements.attribute_tag import AttributeTag
from dicom_parser.data_elements.code_string import CodeString
from dicom_parser.data_elements.date import Date
from dicom_parser.data_elements.date_time import DateTime
from dicom_parser.data_elements.decimal_string import DecimalString
from dicom_parser.data_elements.floating_point_double import (
FloatingPointDouble,
)
from dicom_parser.data_elements.floating_point_single import (
FloatingPointSingle,
)
from dicom_parser.data_elements.floating_point_double import \
FloatingPointDouble
from dicom_parser.data_elements.floating_point_single import \
FloatingPointSingle
from dicom_parser.data_elements.integer_string import IntegerString
from dicom_parser.data_elements.long_string import LongString
from dicom_parser.data_elements.long_text import LongText
from dicom_parser.data_element import DataElement
from dicom_parser.data_elements.other_64bit_very_long import Other64bitVeryLong
from dicom_parser.data_elements.other_byte import OtherByte
from dicom_parser.data_elements.other_double import OtherDouble
Expand All @@ -31,25 +29,21 @@
from dicom_parser.data_elements.sequence_of_items import SequenceOfItems
from dicom_parser.data_elements.short_string import ShortString
from dicom_parser.data_elements.short_text import ShortText
from dicom_parser.data_elements.signed_64bit_very_long import (
Signed64bitVeryLong,
)
from dicom_parser.data_elements.signed_64bit_very_long import \
Signed64bitVeryLong
from dicom_parser.data_elements.signed_long import SignedLong
from dicom_parser.data_elements.signed_short import SignedShort
from dicom_parser.data_elements.time import Time
from dicom_parser.data_elements.unique_identifier import UniqueIdentifer
from dicom_parser.data_elements.unlimited_characters import UnlimitedCharacters
from dicom_parser.data_elements.unlimited_text import UnlimitedText
from dicom_parser.data_elements.unsigned_64bit_very_long import (
Unsigned64bitVeryLong,
)
from dicom_parser.data_elements.unsigned_64bit_very_long import \
Unsigned64bitVeryLong
from dicom_parser.data_elements.unsigned_long import UnsignedLong
from dicom_parser.data_elements.unsigned_short import UnsignedShort
from dicom_parser.data_elements.url import Url
from dicom_parser.utils.value_representation import (
ValueRepresentation,
get_value_representation,
)
from dicom_parser.utils.value_representation import (ValueRepresentation,
get_value_representation)

#: A dictionary associating the various value representations with their
#: appropriate :class:`dicom_parser.data_element.DataElement` subclasses.
Expand Down
4 changes: 4 additions & 0 deletions docs/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@ Release Notes
-----

* Lots of documentation updates and linting fixes.
* Integrated `isort`_.
* Changed invalid integer strings ("IS" data elements) to return *None* (see
:class:`~dicom_parser.data_elements.integer_string.IntegerString`).
* Added `mime` option to :class:`~dicom_parser.series.Series`.
* Updated development status classifier to beta.

0.1.5
-----
Expand Down Expand Up @@ -99,6 +102,7 @@ First release!
.. _CSA Headers: https://nipy.org/nibabel/dicom/siemens_csa.html
.. _dcm2niix: https://github.com/rordenlab/dcm2niix
.. _django_dicom: https://github.com/TheLabbingProject/django_dicom
.. _isort: https://pycqa.github.io/isort/
.. _NIfTI: https://nifti.nimh.nih.gov/
.. _pydicom: https://github.com/pydicom/pydicom
.. _Siemens mosaic: https://nipy.org/nibabel/dicom/dicom_mosaic.html
Expand Down
1 change: 1 addition & 0 deletions requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ coverage-badge~=1.0
doc8~=0.8
flake8~=3.7
ipython~=7.19
isort~=5.7
pytest~=5.3
sphinx~=3.3
sphinx-rtd-theme~=0.4
Expand Down
3 changes: 2 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import os

from setuptools import find_packages, setup

with open("README.md", "r") as fh:
Expand Down Expand Up @@ -30,7 +31,7 @@
install_requires=requirements,
extras_require={"dev": dev_requirements},
classifiers=[
"Development Status :: 3 - Alpha",
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Affero General Public License v3",
"Operating System :: OS Independent",
Expand Down
2 changes: 1 addition & 1 deletion tests/fixtures.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import os

from datetime import datetime

from dicom_parser.utils.choice_enum import ChoiceEnum

TESTS_DIRECTORY = os.path.dirname(os.path.realpath(__file__))
Expand Down
14 changes: 6 additions & 8 deletions tests/test_header.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
import pydicom
import warnings
from pathlib import Path
from unittest import TestCase

import pydicom

from dicom_parser.header import Header
from dicom_parser.utils.sequence_detector import SequenceDetector
from pathlib import Path
from tests.fixtures import (
TEST_IMAGE_PATH,
TEST_STUDY_FIELDS,
TEST_GE_LOCALIZER_PATH,
)
from unittest import TestCase
from tests.fixtures import (TEST_GE_LOCALIZER_PATH, TEST_IMAGE_PATH,
TEST_STUDY_FIELDS)


class HeaderTestCase(TestCase):
Expand Down
5 changes: 3 additions & 2 deletions tests/test_image.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
from pathlib import Path
from unittest import TestCase

import numpy as np
import pydicom

from dicom_parser.header import Header
from dicom_parser.image import Image
from pathlib import Path
from tests.fixtures import TEST_IMAGE_PATH, TEST_RSFMRI_IMAGE_PATH
from unittest import TestCase


class ImageTestCase(TestCase):
Expand Down

0 comments on commit 880c454

Please sign in to comment.