diff options
-rw-r--r-- | msgpack/_msgpack.pyx | 2 | ||||
-rw-r--r-- | test/test_except.py | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/msgpack/_msgpack.pyx b/msgpack/_msgpack.pyx index eb83c85..61ae36b 100644 --- a/msgpack/_msgpack.pyx +++ b/msgpack/_msgpack.pyx @@ -71,7 +71,7 @@ cdef class Packer(object): def __dealloc__(self): free(self.pk.buf); - cdef int __pack(self, object o): + cdef int __pack(self, object o) except -1: cdef long long llval cdef unsigned long long ullval cdef long longval diff --git a/test/test_except.py b/test/test_except.py new file mode 100644 index 0000000..574728f --- /dev/null +++ b/test/test_except.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding: utf-8 + +from nose.tools import * +from msgpack import packs, unpacks + +import datetime + +def test_raise_on_find_unsupported_value(): + assert_raises(TypeError, packs, datetime.datetime.now()) + +if __name__ == '__main__': + from nose import main + main() |