Skip to content

Commit 3d2dcaf

Browse files
author
sprenger
committed
handle single-value labels and adding tests
1 parent fc948a6 commit 3d2dcaf

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

nixio/data_array.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,11 @@ def append_set_dimension(self, labels=None):
9191
index = len(self.dimensions) + 1
9292
setdim = SetDimension.create_new(self, index)
9393
if labels is not None:
94-
if not isinstance(labels, (list, str)):
94+
if not hasattr(labels, '__iter__'):
95+
labels = str(labels)
96+
if isinstance(labels, str):
97+
labels = [labels]
98+
if not isinstance(labels, list):
9599
labels = list(labels)
96100
setdim.labels = labels
97101
if self.file.auto_update_timestamps:

nixio/test/test_dimensions.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,11 +153,21 @@ def test_set_dim_label_resize(self):
153153
setdim.labels = newlabels
154154
assert tuple(newlabels) == setdim.labels
155155

156-
def test_set_dim_label_array(self):
156+
def test_set_dim_labels_array(self):
157157
labels = np.array(["A", "B"])
158158
setdim = self.array.append_set_dimension(labels)
159159
assert tuple(labels) == setdim.labels
160160

161+
def test_set_dim_labels_single_string(self):
162+
labels = 'Sample 1'
163+
setdim = self.array.append_set_dimension(labels)
164+
assert tuple([labels]) == setdim.labels
165+
166+
def test_set_dim_labels_single_float(self):
167+
labels = 1000
168+
setdim = self.array.append_set_dimension(labels)
169+
assert tuple([str(labels)]) == setdim.labels
170+
161171
def test_range_dim_ticks_resize(self):
162172
rangedim = self.array.append_range_dimension([1, 2, 100])
163173
ticks = [1, 1, 30]

0 commit comments

Comments
 (0)