diff --git a/tests/test_labelarray.py b/tests/test_labelarray.py index 4b001035..fc6673c9 100644 --- a/tests/test_labelarray.py +++ b/tests/test_labelarray.py @@ -153,7 +153,7 @@ class LabelArrayTestCase(ZiplineTestCase): lambda s: object(), ] ) - def test_map_requires_f_to_return_a_string(self, f): + def test_map_requires_f_to_return_a_string_or_none(self, f): la = LabelArray(self.strs, missing_value=None) with self.assertRaises(TypeError): diff --git a/zipline/lib/labelarray.py b/zipline/lib/labelarray.py index 68358d81..4db75672 100644 --- a/zipline/lib/labelarray.py +++ b/zipline/lib/labelarray.py @@ -591,8 +591,12 @@ class LabelArray(ndarray): if not isinstance(ret, otypes): raise TypeError( - "Expected f() to return a string. Got %s." % ( - type(ret).__name__ + "LabelArray.map expected function {f} to return a string" + " or None, but got {type} instead.\n" + "Value was {value}.".format( + f=f.__name__, + type=type(ret).__name__, + value=ret, ) )