Skip to content

Commit 2fc386c

Browse files
author
Ben Cipollini
committed
Add tests for rgba, clean code.
1 parent f542f36 commit 2fc386c

File tree

3 files changed

+27
-26
lines changed

3 files changed

+27
-26
lines changed

nibabel/gifti/gifti.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -153,11 +153,7 @@ def rgba(self, rgba):
153153
"""
154154
if len(rgba) != 4:
155155
raise ValueError('rgba must be length 4.')
156-
self.red = rgba[0]
157-
self.green = rgba[1]
158-
self.blue = rgba[2]
159-
self.alpha = rgba[3]
160-
156+
self.red, self.green, self.blue, self.alpha = rgba
161157

162158
def _arr2txt(arr, elem_fmt):
163159
arr = np.asarray(arr)
@@ -438,7 +434,7 @@ def meta(self, meta):
438434
if not isinstance(meta, GiftiMetaData):
439435
raise ValueError("Not a valid GiftiMetaData instance")
440436
self._meta = meta
441-
437+
442438
@np.deprecate_with_doc("Use the gifti_img.labeltable property instead.")
443439
def set_metadata(self, meta):
444440
self.meta = meta

nibabel/gifti/tests/test_gifti.py

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,13 @@
44

55
import numpy as np
66

7-
from .. import giftiio as gi
87
from ..gifti import (GiftiImage, GiftiDataArray, GiftiLabel, GiftiLabelTable,
98
GiftiMetaData)
109
from ...nifti1 import data_type_codes, intent_codes
1110

1211
from numpy.testing import (assert_array_almost_equal,
1312
assert_array_equal)
14-
from nose.tools import assert_true, assert_equal, assert_raises
13+
from nose.tools import (assert_true, assert_false, assert_equal, assert_raises)
1514
from ...testing import clear_and_catch_warnings
1615

1716

@@ -100,25 +99,31 @@ def test_gifti_label_rgba():
10099
rgba = np.random.rand(4)
101100
kwargs = dict(zip(['red', 'green', 'blue', 'alpha'], rgba))
102101

103-
gl = GiftiLabel(**kwargs)
104-
assert_equal(kwargs['red'], gl.rgba[0])
105-
assert_equal(kwargs['green'], gl.rgba[1])
106-
assert_equal(kwargs['blue'], gl.rgba[2])
107-
assert_equal(kwargs['alpha'], gl.rgba[3])
102+
gl1 = GiftiLabel(**kwargs)
103+
assert_array_equal(rgba, gl1.rgba)
108104

109-
gl = GiftiLabel()
110-
gl.rgba = rgba
111-
assert_equal(kwargs['red'], gl.rgba[0])
112-
assert_equal(kwargs['green'], gl.rgba[1])
113-
assert_equal(kwargs['blue'], gl.rgba[2])
114-
assert_equal(kwargs['alpha'], gl.rgba[3])
105+
gl1.red = 2 * gl1.red
106+
assert_false(np.allclose(rgba, gl1.rgba)) # don't just store the list!
115107

116-
def assign_rgba(val):
108+
gl2 = GiftiLabel()
109+
gl2.rgba = rgba
110+
assert_array_equal(rgba, gl2.rgba)
111+
112+
gl2.blue = 2 * gl2.blue
113+
assert_false(np.allclose(rgba, gl2.rgba)) # don't just store the list!
114+
115+
def assign_rgba(gl, val):
117116
gl.rgba = val
118-
assert_raises(ValueError, assign_rgba, rgba[:2])
119-
assert_raises(ValueError, assign_rgba, rgba.tolist() + rgba.tolist())
117+
gl3 = GiftiLabel(**kwargs)
118+
assert_raises(ValueError, assign_rgba, gl3, rgba[:2])
119+
assert_raises(ValueError, assign_rgba, gl3, rgba.tolist() + rgba.tolist())
120120

121121
# Test deprecation
122122
with clear_and_catch_warnings() as w:
123123
warnings.filterwarnings('once', category=DeprecationWarning)
124-
assert_equal(kwargs['red'], gl.get_rgba()[0])
124+
assert_equal(kwargs['red'], gl3.get_rgba()[0])
125+
126+
# Test default value
127+
gl4 = GiftiLabel()
128+
assert_equal(len(gl4.rgba), 4)
129+
assert_true(np.all([elem is None for elem in gl4.rgba]))

nibabel/gifti/tests/test_giftiio.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@
4141
DATA_FILE6 = pjoin(IO_DATA_PATH, 'rh.aparc.annot.gii')
4242

4343
datafiles = [DATA_FILE1, DATA_FILE2, DATA_FILE3, DATA_FILE4, DATA_FILE5, DATA_FILE6]
44-
numda = [2, 1, 1, 1, 2, 1]
45-
44+
numDA = [2, 1, 1, 1, 2, 1]
45+
4646
DATA_FILE1_darr1 = np.array(
4747
[[-16.07201 , -66.187515, 21.266994],
4848
[-16.705893, -66.054337, 21.232786],
@@ -113,7 +113,7 @@ def test_load_metadata():
113113
for i, dat in enumerate(datafiles):
114114
img = gi.read(dat)
115115
me = img.meta
116-
assert_equal(numda[i], img.numDA)
116+
assert_equal(numDA[i], img.numDA)
117117
assert_equal(img.version,'1.0')
118118

119119

0 commit comments

Comments
 (0)