Browse Source

move remove_group_names_from_regex() to __init__.py

Fabian Peter Hammerle 5 years ago
parent
commit
f7b5c8b5f1

+ 5 - 0
freesurfer_volume_reader/__init__.py

@@ -17,11 +17,16 @@ https://surfer.nmr.mgh.harvard.edu/fswiki/HippocampalSubfields
 
 import abc
 import os
+import re
 import typing
 
 import pandas
 
 
+def remove_group_names_from_regex(regex_pattern: str) -> str:
+    return re.sub(r'\?P<.+?>', '', regex_pattern)
+
+
 class VolumeFile(metaclass=abc.ABCMeta):
 
     FILENAME_REGEX = NotImplemented

+ 3 - 7
freesurfer_volume_reader/__main__.py

@@ -9,11 +9,7 @@ import re
 
 import pandas
 
-from freesurfer_volume_reader.freesurfer import HippocampalSubfieldsVolumeFile
-
-
-def remove_group_names_from_regex(regex_pattern: str) -> str:
-    return re.sub(r'\?P<.+?>', '', regex_pattern)
+from freesurfer_volume_reader import freesurfer, remove_group_names_from_regex
 
 
 def main():
@@ -21,7 +17,7 @@ def main():
                                         formatter_class=argparse.RawDescriptionHelpFormatter)
     argparser.add_argument('--filename-regex', type=re.compile,
                            default=remove_group_names_from_regex(
-                               HippocampalSubfieldsVolumeFile.FILENAME_PATTERN),
+                               freesurfer.HippocampalSubfieldsVolumeFile.FILENAME_PATTERN),
                            help='default: %(default)s')
     argparser.add_argument('--output-format', choices=['csv'], default='csv',
                            help='default: %(default)s')
@@ -33,7 +29,7 @@ def main():
                            help='default: $SUBJECTS_DIR ({})'.format(subjects_dir_path))
     args = argparser.parse_args()
     volume_files = [f for d in args.root_dir_paths
-                    for f in HippocampalSubfieldsVolumeFile.find(
+                    for f in freesurfer.HippocampalSubfieldsVolumeFile.find(
                         root_dir_path=d, filename_regex=args.filename_regex)]
     volume_frames = []
     for volume_file in volume_files:

+ 13 - 0
tests/init_test.py

@@ -0,0 +1,13 @@
+import pytest
+
+import freesurfer_volume_reader
+
+
+@pytest.mark.parametrize(('source_pattern', 'expected_pattern'), [
+    (r'^(?P<h>[lr])h\.hippoSfVolumes', r'^([lr])h\.hippoSfVolumes'),
+    (r'(?P<a>a(?P<b>b))', r'(a(b))'),
+])
+def test_remove_group_names_from_regex(source_pattern, expected_pattern):
+    assert expected_pattern == freesurfer_volume_reader.remove_group_names_from_regex(
+        regex_pattern=source_pattern,
+    )

+ 0 - 10
tests/main_test.py

@@ -12,16 +12,6 @@ import freesurfer_volume_reader.__main__
 from conftest import SUBJECTS_DIR, assert_volume_frames_equal
 
 
-@pytest.mark.parametrize(('source_pattern', 'expected_pattern'), [
-    (r'^(?P<h>[lr])h\.hippoSfVolumes', r'^([lr])h\.hippoSfVolumes'),
-    (r'(?P<a>a(?P<b>b))', r'(a(b))'),
-])
-def test_remove_group_names_from_regex(source_pattern, expected_pattern):
-    assert expected_pattern == freesurfer_volume_reader.__main__.remove_group_names_from_regex(
-        regex_pattern=source_pattern,
-    )
-
-
 def assert_main_volume_frame_equals(capsys, argv: list, expected_frame: pandas.DataFrame,
                                     subjects_dir: typing.Optional[str] = None):
     if subjects_dir: