19
19
BOLD_PATH = 'ds054/sub-100185/func/sub-100185_task-machinegame_run-01_bold.nii.gz'
20
20
21
21
22
- @pytest .mark .parametrize ('space, size, units, xcodes, zipped, fixed' , [
23
- ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (2 , 2 ), True , [False ]),
24
- ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ]),
25
- ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ]),
26
- ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , None ), (2 , 2 ), True , [True ]),
27
- ('T1w' , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ]),
28
- ('T1w' , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ]),
29
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (4 , 4 ), True , [False ]),
30
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ]),
31
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ]),
32
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , None ), (4 , 4 ), True , [True ]),
33
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ]),
34
- ('MNI152Lin' , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ]),
35
- (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (1 , 1 ), True , [False ]),
36
- (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ]),
37
- (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ]),
38
- (None , (30 , 30 , 30 , 10 ), ('mm' , None ), (1 , 1 ), True , [True ]),
39
- (None , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ]),
40
- (None , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ]),
41
- (None , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), False , [True ]),
22
+ @pytest .mark .parametrize ('space, size, units, xcodes, zipped, fixed, data_dtype ' , [
23
+ ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (2 , 2 ), True , [False ], None ),
24
+ ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ], None ),
25
+ ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ], '<i4' ),
26
+ ('T1w' , (30 , 30 , 30 , 10 ), ('mm' , None ), (2 , 2 ), True , [True ], '<f4' ),
27
+ ('T1w' , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ], None ),
28
+ ('T1w' , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ], None ),
29
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (4 , 4 ), True , [False ], None ),
30
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ], None ),
31
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ], None ),
32
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), ('mm' , None ), (4 , 4 ), True , [True ], None ),
33
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ], None ),
34
+ ('MNI152Lin' , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ], None ),
35
+ (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (1 , 1 ), True , [False ], None ),
36
+ (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 0 ), True , [True ], None ),
37
+ (None , (30 , 30 , 30 , 10 ), ('mm' , 'sec' ), (0 , 2 ), True , [True ], None ),
38
+ (None , (30 , 30 , 30 , 10 ), ('mm' , None ), (1 , 1 ), True , [True ], None ),
39
+ (None , (30 , 30 , 30 , 10 ), (None , None ), (0 , 2 ), True , [True ], None ),
40
+ (None , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), True , [True ], None ),
41
+ (None , (30 , 30 , 30 , 10 ), (None , 'sec' ), (0 , 0 ), False , [True ], None ),
42
42
])
43
- def test_DerivativesDataSink_bold (tmp_path , space , size , units , xcodes , zipped , fixed ):
43
+ def test_DerivativesDataSink_bold (tmp_path , space , size , units , xcodes , zipped , fixed , data_dtype ):
44
44
fname = str (tmp_path / 'source.nii' ) + ('.gz' if zipped else '' )
45
45
46
46
hdr = nb .Nifti1Header ()
@@ -53,6 +53,7 @@ def test_DerivativesDataSink_bold(tmp_path, space, size, units, xcodes, zipped,
53
53
dds = bintfs .DerivativesDataSink (
54
54
base_directory = str (tmp_path ),
55
55
keep_dtype = True ,
56
+ data_dtype = data_dtype or Undefined ,
56
57
desc = 'preproc' ,
57
58
source_file = BOLD_PATH ,
58
59
space = space or Undefined ,
@@ -61,6 +62,8 @@ def test_DerivativesDataSink_bold(tmp_path, space, size, units, xcodes, zipped,
61
62
62
63
nii = nb .load (dds .outputs .out_file )
63
64
assert dds .outputs .fixed_hdr == fixed
65
+ if data_dtype :
66
+ assert nii .get_data_dtype () == np .dtype (data_dtype )
64
67
assert int (nii .header ['qform_code' ]) == XFORM_CODES [space ]
65
68
assert int (nii .header ['sform_code' ]) == XFORM_CODES [space ]
66
69
assert nii .header .get_xyzt_units () == ('mm' , 'sec' )
0 commit comments