6
6
import pytest
7
7
import nipype .interfaces .fsl .model as fsl
8
8
from nipype .interfaces .fsl import no_fsl
9
+ from pathlib import Path
9
10
10
11
11
12
@pytest .mark .skipif (no_fsl (), reason = "fsl is not installed" )
12
13
def test_MultipleRegressDesign (tmpdir ):
13
- tmpdir .chdir ()
14
14
foo = fsl .MultipleRegressDesign ()
15
15
foo .inputs .regressors = dict (
16
16
voice_stenght = [1 , 1 , 1 ], age = [0.2 , 0.4 , 0.5 ], BMI = [1 , - 1 , 2 ]
17
17
)
18
18
con1 = ["voice_and_age" , "T" , ["age" , "voice_stenght" ], [0.5 , 0.5 ]]
19
19
con2 = ["just_BMI" , "T" , ["BMI" ], [1 ]]
20
- foo .inputs .contrasts = [con1 , con2 , ["con3" , "F" , [con1 , con2 ]]]
20
+ foo .inputs .contrasts = [con1 , con2 , ["con3" , "F" , [con1 , con2 ]], [ "con4" , "F" , [ con2 ]] ]
21
21
res = foo .run ()
22
22
23
23
for ii in ["mat" , "con" , "fts" , "grp" ]:
24
24
assert (
25
- getattr ( res .outputs , " design_" + ii ) == tmpdir . join ( "design." + ii ). strpath
25
+ os . path . exists ( eval ( ' res.outputs. design_' + ii ))
26
26
)
27
27
28
28
design_mat_expected_content = """/NumWaves 3
@@ -48,10 +48,11 @@ def test_MultipleRegressDesign(tmpdir):
48
48
"""
49
49
50
50
design_fts_expected_content = """/NumWaves 2
51
- /NumContrasts 1
51
+ /NumContrasts 2
52
52
53
53
/Matrix
54
54
1 1
55
+ 0 1
55
56
"""
56
57
57
58
design_grp_expected_content = """/NumWaves 1
@@ -63,6 +64,4 @@ def test_MultipleRegressDesign(tmpdir):
63
64
1
64
65
"""
65
66
for ii in ["mat" , "con" , "fts" , "grp" ]:
66
- assert tmpdir .join ("design." + ii ).read () == eval (
67
- "design_" + ii + "_expected_content"
68
- )
67
+ assert Path (eval ('res.outputs.design_' + ii )).read_text () in eval ( "design_" + ii + "_expected_content" )
0 commit comments