Skip to content

Commit d4318d4

Browse files
committed
BF+TST: fix / test saving of PAR into NIfTI header
We weren't saving the PAR header when asked to; fix and test.
1 parent b3afe29 commit d4318d4

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

bin/parrec2nii

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,12 +182,11 @@ def proc_file(infile, opts):
182182

183183
# container for potential NIfTI1 header extensions
184184
if opts.store_header:
185-
exts = nifti1.Nifti1Extensions()
186185
# dump the full PAR header content into an extension
187186
with open(infile, 'r') as fobj:
188187
hdr_dump = fobj.read()
189188
dump_ext = nifti1.Nifti1Extension('comment', hdr_dump)
190-
exts.append(dump_ext)
189+
nhdr.extensions.append(dump_ext)
191190

192191
verbose('Writing %s' % outfilename)
193192
nibabel.save(nimg, outfilename)

nibabel/tests/test_scripts.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,8 @@ def test_parrec2nii():
129129
data = img.get_data()
130130
assert_data_similar(data, eg_dict)
131131
assert_almost_equal(img.header.get_zooms(), eg_dict['zooms'])
132+
# Standard save does not save extensions
133+
assert_equal(len(img.header.extensions), 0)
132134
# Does not overwrite unless option given
133135
code, stdout, stderr = run_command(
134136
['parrec2nii', fname], check_code=False)
@@ -149,6 +151,10 @@ def test_parrec2nii():
149151
check_conversion(base_cmd + ['--scaling=off'],
150152
pr_img.dataobj.get_unscaled(),
151153
out_froot)
154+
# Save extensions
155+
run_command(base_cmd + ['--store-header'])
156+
img = load(out_froot)
157+
assert_equal(len(img.header.extensions), 1)
152158

153159

154160
@script_test

0 commit comments

Comments
 (0)