diff options
author | INADA Naoki <songofacandy@gmail.com> | 2014-02-13 01:19:33 +0900 |
---|---|---|
committer | INADA Naoki <songofacandy@gmail.com> | 2014-02-13 01:19:33 +0900 |
commit | f322ed4e1bc3b9243b187df31af1f2d72876b9b6 (patch) | |
tree | ce030b07f18c8c09a5aaa354be7a172ac183f3a3 | |
parent | 7973cce554b94f4418c258fb723820ae5fffdd26 (diff) | |
parent | 77046b839da20feb528d303c8858ab6f34013ce7 (diff) | |
download | msgpack-python-f322ed4e1bc3b9243b187df31af1f2d72876b9b6.tar.gz |
Merge pull request #84 from wbolster/exception-type-cleanups
Always raise TypeError for wrong argument types
-rw-r--r-- | msgpack/_unpacker.pyx | 4 | ||||
-rw-r--r-- | msgpack/fallback.py | 14 | ||||
-rw-r--r-- | test/test_obj.py | 2 |
3 files changed, 10 insertions, 10 deletions
diff --git a/msgpack/_unpacker.pyx b/msgpack/_unpacker.pyx index a359507..732adef 100644 --- a/msgpack/_unpacker.pyx +++ b/msgpack/_unpacker.pyx @@ -52,7 +52,7 @@ cdef inline init_ctx(unpack_context *ctx, ctx.user.object_hook = ctx.user.list_hook = <PyObject*>NULL if object_hook is not None and object_pairs_hook is not None: - raise ValueError("object_pairs_hook and object_hook are mutually exclusive.") + raise TypeError("object_pairs_hook and object_hook are mutually exclusive.") if object_hook is not None: if not PyCallable_Check(object_hook): @@ -228,7 +228,7 @@ cdef class Unpacker(object): if file_like: self.file_like_read = file_like.read if not PyCallable_Check(self.file_like_read): - raise ValueError("`file_like.read` must be a callable.") + raise TypeError("`file_like.read` must be a callable.") if not max_buffer_size: max_buffer_size = INT_MAX if read_size > max_buffer_size: diff --git a/msgpack/fallback.py b/msgpack/fallback.py index bf5b1c2..cf61023 100644 --- a/msgpack/fallback.py +++ b/msgpack/fallback.py @@ -159,7 +159,7 @@ class Unpacker(object): self._fb_feeding = True else: if not callable(file_like.read): - raise ValueError("`file_like.read` must be callable") + raise TypeError("`file_like.read` must be callable") self.file_like = file_like self._fb_feeding = False self._fb_buffers = [] @@ -179,16 +179,16 @@ class Unpacker(object): self._ext_hook = ext_hook if list_hook is not None and not callable(list_hook): - raise ValueError('`list_hook` is not callable') + raise TypeError('`list_hook` is not callable') if object_hook is not None and not callable(object_hook): - raise ValueError('`object_hook` is not callable') + raise TypeError('`object_hook` is not callable') if object_pairs_hook is not None and not callable(object_pairs_hook): - raise ValueError('`object_pairs_hook` is not callable') + raise TypeError('`object_pairs_hook` is not callable') if object_hook is not None and object_pairs_hook is not None: - raise ValueError("object_pairs_hook and object_hook are mutually " - "exclusive") + raise TypeError("object_pairs_hook and object_hook are mutually " + "exclusive") if not callable(ext_hook): - raise ValueError("`ext_hook` is not callable") + raise TypeError("`ext_hook` is not callable") def feed(self, next_bytes): if isinstance(next_bytes, array.array): diff --git a/test/test_obj.py b/test/test_obj.py index 9083218..390c1b6 100644 --- a/test/test_obj.py +++ b/test/test_obj.py @@ -31,7 +31,7 @@ def test_decode_pairs_hook(): assert unpacked[1] == prod_sum def test_only_one_obj_hook(): - with raises(ValueError): + with raises(TypeError): unpackb(b'', object_hook=lambda x: x, object_pairs_hook=lambda x: x) def test_bad_hook(): |