Skip to content

Commit be72d18

Browse files
committed
TEST: Update expected warnings, test new deprecations
1 parent f971a66 commit be72d18

File tree

2 files changed

+39
-24
lines changed

2 files changed

+39
-24
lines changed

nibabel/gifti/tests/test_gifti.py

+21-9
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ def test_gifti_image():
5757
# arguments.
5858
gi = GiftiImage()
5959
assert gi.darrays == []
60-
assert gi.meta.metadata == {}
60+
assert gi.meta == {}
6161
assert gi.labeltable.labels == []
6262
arr = np.zeros((2, 3))
6363
gi.darrays.append(arr)
@@ -125,7 +125,7 @@ def test_dataarray_empty():
125125
assert null_da.coordsys.xformspace == 0
126126
assert_array_equal(null_da.coordsys.xform, np.eye(4))
127127
assert null_da.ind_ord == 1
128-
assert null_da.meta.metadata == {}
128+
assert null_da.meta == {}
129129
assert null_da.ext_fname == ''
130130
assert null_da.ext_offset == 0
131131

@@ -174,9 +174,9 @@ def test_dataarray_init():
174174
pytest.raises(KeyError, gda, ordering='not an ordering')
175175
# metadata
176176
meta_dict=dict(one=1, two=2)
177-
assert gda(meta=GiftiMetaData.from_dict(meta_dict)).meta.metadata == meta_dict
178-
assert gda(meta=meta_dict).meta.metadata == meta_dict
179-
assert gda(meta=None).meta.metadata == {}
177+
assert gda(meta=GiftiMetaData(meta_dict)).meta == meta_dict
178+
assert gda(meta=meta_dict).meta == meta_dict
179+
assert gda(meta=None).meta == {}
180180
# ext_fname and ext_offset
181181
assert gda(ext_fname='foo').ext_fname == 'foo'
182182
assert gda(ext_offset=12).ext_offset == 12
@@ -246,17 +246,29 @@ def test_labeltable():
246246

247247

248248
def test_metadata():
249+
md = GiftiMetaData(key='value')
250+
# Old initialization methods
249251
nvpair = GiftiNVPairs('key', 'value')
250-
md = GiftiMetaData(nvpair=nvpair)
251-
assert md.data[0].name == 'key'
252-
assert md.data[0].value == 'value'
252+
with pytest.warns(FutureWarning) as w:
253+
md2 = GiftiMetaData(nvpair=nvpair)
254+
assert len(w) == 1
255+
with pytest.warns(DeprecationWarning) as w:
256+
md3 = GiftiMetaData.from_dict({'key': 'value'})
257+
assert md == md2 == md3 == {'key': 'value'}
258+
# .data as a list of NVPairs is going away
259+
with pytest.warns(FutureWarning) as w:
260+
assert md.data[0].name == 'key'
261+
assert md.data[0].value == 'value'
262+
assert len(w) == 2
253263
# Test deprecation
254264
with clear_and_catch_warnings() as w:
255265
warnings.filterwarnings('always', category=DeprecationWarning)
256266
assert md.get_metadata() == dict(key='value')
257267
assert len(w) == 1
258-
assert len(GiftiDataArray().get_metadata()) == 0
268+
assert md.metadata == dict(key='value')
259269
assert len(w) == 2
270+
assert len(GiftiDataArray().get_metadata()) == 0
271+
assert len(w) == 3
260272

261273

262274
def test_gifti_label_rgba():

nibabel/gifti/tests/test_parse_gifti_fast.py

+18-15
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
from numpy.testing import assert_array_almost_equal
2727

2828
import pytest
29-
from ...testing import clear_and_catch_warnings
29+
from ...testing import clear_and_catch_warnings, suppress_warnings
3030

3131

3232
IO_DATA_PATH = pjoin(dirname(__file__), 'data')
@@ -126,11 +126,13 @@
126126
def assert_default_types(loaded):
127127
default = loaded.__class__()
128128
for attr in dir(default):
129-
defaulttype = type(getattr(default, attr))
129+
with suppress_warnings():
130+
defaulttype = type(getattr(default, attr))
130131
# Optional elements may have default of None
131132
if defaulttype is type(None):
132133
continue
133-
loadedtype = type(getattr(loaded, attr))
134+
with suppress_warnings():
135+
loadedtype = type(getattr(loaded, attr))
134136
assert loadedtype == defaulttype, (
135137
f"Type mismatch for attribute: {attr} ({loadedtype} != {defaulttype})")
136138

@@ -143,9 +145,10 @@ def test_default_types():
143145
assert_default_types(img)
144146
# GiftiMetaData
145147
assert_default_types(img.meta)
146-
# GiftiNVPairs
147-
for nvpair in img.meta.data:
148-
assert_default_types(nvpair)
148+
# GiftiNVPairs - Remove in NIB6
149+
with pytest.warns(FutureWarning):
150+
for nvpair in img.meta.data:
151+
assert_default_types(nvpair)
149152
# GiftiLabelTable
150153
assert_default_types(img.labeltable)
151154
# GiftiLabel elements can be None or float; skip
@@ -156,9 +159,10 @@ def test_default_types():
156159
assert_default_types(darray.coordsys)
157160
# GiftiMetaData
158161
assert_default_types(darray.meta)
159-
# GiftiNVPairs
160-
for nvpair in darray.meta.data:
161-
assert_default_types(nvpair)
162+
# GiftiNVPairs - Remove in NIB6
163+
with pytest.warns(FutureWarning):
164+
for nvpair in darray.meta.data:
165+
assert_default_types(nvpair)
162166

163167

164168
def test_read_ordering():
@@ -204,7 +208,7 @@ def test_load_dataarray1():
204208
for img in (img1, bimg):
205209
assert_array_almost_equal(img.darrays[0].data, DATA_FILE1_darr1)
206210
assert_array_almost_equal(img.darrays[1].data, DATA_FILE1_darr2)
207-
me = img.darrays[0].meta.metadata
211+
me = img.darrays[0].meta
208212
assert 'AnatomicalStructurePrimary' in me
209213
assert 'AnatomicalStructureSecondary' in me
210214
me['AnatomicalStructurePrimary'] == 'CortexLeft'
@@ -301,14 +305,13 @@ def test_modify_darray():
301305

302306
def test_write_newmetadata():
303307
img = gi.GiftiImage()
304-
attr = gi.GiftiNVPairs(name='mykey', value='val1')
305-
newmeta = gi.GiftiMetaData(attr)
308+
newmeta = gi.GiftiMetaData(mykey='val1')
306309
img.meta = newmeta
307-
myme = img.meta.metadata
310+
myme = img.meta
308311
assert 'mykey' in myme
309-
newmeta = gi.GiftiMetaData.from_dict({'mykey1': 'val2'})
312+
newmeta = gi.GiftiMetaData({'mykey1': 'val2'})
310313
img.meta = newmeta
311-
myme = img.meta.metadata
314+
myme = img.meta
312315
assert 'mykey1' in myme
313316
assert 'mykey' not in myme
314317

0 commit comments

Comments
 (0)