Skip to content

Commit b916324

Browse files
committed
TST: add Freesurfer files to data tests
Add Freesurfer files to git submodule to run Freesurfer tests on travis.
1 parent b0a8006 commit b916324

File tree

3 files changed

+25
-14
lines changed

3 files changed

+25
-14
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,6 @@
77
[submodule "nipy-ecattest"]
88
path = nibabel-data/nipy-ecattest
99
url = https://github.com/freec84/nipy-ecattest
10+
[submodule "nibabel-data/nitest-freesurfer"]
11+
path = nibabel-data/nitest-freesurfer
12+
url = https://bitbucket.org/nipy/nitest-freesurfer.git

nibabel-data/nitest-freesurfer

Submodule nitest-freesurfer added at 0110860

nibabel/freesurfer/tests/test_io.py

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,38 @@
11
from __future__ import division, print_function, absolute_import
22
import os
3-
from os.path import join as pjoin
3+
from os.path import join as pjoin, isdir
44
import getpass
55
import time
66

77
from ...tmpdirs import InTemporaryDirectory
88

99
from nose.tools import assert_true
1010
import numpy as np
11-
from numpy.testing import assert_equal
11+
from numpy.testing import assert_equal, dec
1212

13-
from .. import read_geometry, read_morph_data, read_annot, read_label, \
14-
write_geometry, write_annot
13+
from .. import (read_geometry, read_morph_data, read_annot, read_label,
14+
write_geometry, write_annot)
1515

16+
from ...tests.nibabel_data import get_nibabel_data
1617

17-
have_freesurfer = True
18-
if 'SUBJECTS_DIR' not in os.environ:
19-
# Test suite relies on the definition of SUBJECTS_DIR
20-
have_freesurfer = False
2118

22-
freesurfer_test = np.testing.dec.skipif(not have_freesurfer,
23-
'SUBJECTS_DIR not set')
19+
DATA_SDIR = 'fsaverage'
2420

25-
if have_freesurfer:
26-
subj_dir = os.environ["SUBJECTS_DIR"]
27-
subject_id = 'fsaverage'
28-
data_path = pjoin(subj_dir, subject_id)
21+
have_freesurfer = False
22+
if 'SUBJECTS_DIR' in os.environ:
23+
# May have Freesurfer installed with data
24+
data_path = pjoin(os.environ["SUBJECTS_DIR"], DATA_SDIR)
25+
have_freesurfer = isdir(data_path)
26+
else:
27+
# May have nibabel test data submodule checked out
28+
nib_data = get_nibabel_data()
29+
if nib_data != '':
30+
data_path = pjoin(nib_data, 'nitest-freesurfer', DATA_SDIR)
31+
have_freesurfer = isdir(data_path)
32+
33+
freesurfer_test = dec.skipif(
34+
not have_freesurfer,
35+
'cannot find freesurfer {0} directory'.format(DATA_SDIR))
2936

3037

3138
@freesurfer_test

0 commit comments

Comments
 (0)