Skip to content

Commit 72d7986

Browse files
committed
Fix: Codacy static analysis
1 parent 2de1ea0 commit 72d7986

File tree

4 files changed

+36
-30
lines changed

4 files changed

+36
-30
lines changed

MRdataset/tests/conftest.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,19 @@
55

66
import pydicom
77
import pytest
8+
from hypothesis import strategies as st
9+
from hypothesis.strategies import SearchStrategy
10+
811
from MRdataset.dicom import DicomDataset
912
from MRdataset.tests.simulate import make_compliant_test_dataset, \
1013
make_vertical_test_dataset
11-
from hypothesis import strategies as st
12-
from hypothesis.strategies import SearchStrategy
1314

1415
THIS_DIR = Path(__file__).parent.resolve()
1516

1617
@pytest.fixture
17-
def sample_dicom_object(tmp_path='/tmp'):
18+
def sample_dicom_object(tmp_path=None):
19+
if tmp_path is None:
20+
tmp_path = tempfile.gettempdir()
1821
dicom_file = Path(tmp_path) / "sample_dicom.dcm"
1922
sample_dicom = pydicom.Dataset()
2023
sample_dicom.PatientName = "CITIZEN^Joan"

MRdataset/tests/test_bids.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,10 @@ def rename_folders(directory):
7979

8080
rename_folders(fake_ds_dir)
8181
with pytest.raises(TypeError):
82-
mrd = import_dataset(fake_ds_dir,
83-
config_path=THIS_DIR / 'resources/bids-config.json',
84-
output_dir=1, name='test_dataset',
85-
ds_format='bids')
82+
import_dataset(fake_ds_dir,
83+
config_path=THIS_DIR / 'resources/bids-config.json',
84+
output_dir=1, name='test_dataset',
85+
ds_format='bids')
8686

8787

8888
def test_empty_folders():

MRdataset/tests/test_dicom.py

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
THIS_DIR = Path(__file__).parent.resolve()
1818

1919

20-
@settings(suppress_health_check=[HealthCheck.too_slow], max_examples=50, deadline=None)
20+
@settings(suppress_health_check=[HealthCheck.too_slow], max_examples=50,
21+
deadline=None)
2122
@given(st.integers(min_value=1, max_value=10),
2223
st.floats(allow_nan=False,
2324
allow_infinity=False),
@@ -32,23 +33,16 @@ def test_parse_compliant_dataset(num_subjects,
3233
repetition_time,
3334
echo_train_length,
3435
flip_angle)
35-
mrd = import_dataset(fake_ds_dir, config_path=THIS_DIR / 'resources/mri-config.json',
36+
mrd = import_dataset(fake_ds_dir,
37+
config_path=THIS_DIR / 'resources/mri-config.json',
3638
output_dir=fake_ds_dir, name='test_dataset')
37-
seq_ids = mrd.get_sequence_ids()
38-
39-
for seq_id in seq_ids:
40-
mrd_num_subjects = set()
41-
for subject, session, run, seq in mrd.traverse_horizontal(seq_id):
42-
mrd_num_subjects.add(subject)
43-
assert seq['RepetitionTime'].get_value() == repetition_time
44-
assert seq['EchoTrainLength'].get_value() == echo_train_length
45-
assert seq['FlipAngle'].get_value() == flip_angle
46-
assert set(mrd.get_subject_ids(seq_id)) == mrd_num_subjects
39+
set_parameters(mrd, repetition_time, echo_train_length, flip_angle)
4740
shutil.rmtree(fake_ds_dir)
4841
return
4942

5043

51-
@settings(suppress_health_check=[HealthCheck.too_slow], max_examples=50, deadline=None)
44+
@settings(suppress_health_check=[HealthCheck.too_slow], max_examples=50,
45+
deadline=None)
5246
@given(st.integers(min_value=4, max_value=10),
5347
st.floats(allow_nan=False,
5448
allow_infinity=False),
@@ -63,8 +57,14 @@ def test_parse_dataset_no_echo_numbers(num_subjects,
6357
repetition_time,
6458
echo_train_length,
6559
flip_angle)
66-
mrd = import_dataset(fake_ds_dir, config_path=THIS_DIR / 'resources/mri-config-2.json',
60+
mrd = import_dataset(fake_ds_dir,
61+
config_path=THIS_DIR / 'resources/mri-config-2.json',
6762
output_dir=fake_ds_dir, name='test_dataset')
63+
set_parameters(mrd, repetition_time, echo_train_length, flip_angle)
64+
return
65+
66+
67+
def set_parameters(mrd, repetition_time, echo_train_length, flip_angle):
6868
seq_ids = mrd.get_sequence_ids()
6969

7070
for seq_id in seq_ids:
@@ -75,8 +75,6 @@ def test_parse_dataset_no_echo_numbers(num_subjects,
7575
assert seq['EchoTrainLength'].get_value() == echo_train_length
7676
assert seq['FlipAngle'].get_value() == flip_angle
7777
assert set(mrd.get_subject_ids(seq_id)) == mrd_num_subjects
78-
shutil.rmtree(fake_ds_dir)
79-
return
8078

8179

8280
def test_config_dict():
@@ -94,18 +92,19 @@ def test_empty_folders():
9492
filepath = subfolder / "test.dcm"
9593
filepath.touch()
9694

97-
mrd = import_dataset(folder_path, config_path=THIS_DIR / 'resources/mri-config.json',
95+
mrd = import_dataset(folder_path,
96+
config_path=THIS_DIR / 'resources/mri-config.json',
9897
output_dir=folder_path, name='test_dataset')
9998
assert len(mrd.get_sequence_ids()) == 0
10099

101100

102101
def test_invalid_output_dir():
103102
fake_ds_dir = make_compliant_test_dataset(1, 1, 1, 1)
104103
with pytest.raises(TypeError):
105-
mrd = import_dataset(fake_ds_dir,
106-
config_path=THIS_DIR / 'resources/bids-config.json',
107-
output_dir=1, name='test_dataset',
108-
ds_format='dicom')
104+
import_dataset(fake_ds_dir,
105+
config_path=THIS_DIR / 'resources/bids-config.json',
106+
output_dir=1, name='test_dataset',
107+
ds_format='dicom')
109108

110109
# def get_csa_props_test():
111110
# "CSA header looks funny in Pitt 7T (20221130)"

MRdataset/tests/test_utils.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
folders_with_min_files # Import your function from the correct module
1717

1818

19-
def test_valid_dicom_file(tmp_path='/tmp'):
19+
def test_valid_dicom_file(tmp_path=None):
20+
if tmp_path is None:
21+
tmp_path = tempfile.gettempdir()
2022
# Create a temporary DICOM file
2123
dicom_file = Path(tmp_path) / "valid_dicom.dcm"
2224
with open(dicom_file, 'wb') as file_stream:
@@ -26,7 +28,9 @@ def test_valid_dicom_file(tmp_path='/tmp'):
2628
assert is_dicom_file(str(dicom_file)) is True
2729

2830

29-
def test_invalid_dicom_file(tmp_path='/tmp'):
31+
def test_invalid_dicom_file(tmp_path=None):
32+
if tmp_path is None:
33+
tmp_path = tempfile.gettempdir()
3034
# Create a temporary file that is not a DICOM file
3135
non_dicom_file = Path(tmp_path) / "non_dicom.txt"
3236
with open(non_dicom_file, 'w') as file_stream:

0 commit comments

Comments
 (0)