msgpack-python/test/test_except.py

39 lines
1,014 B
Python

#!/usr/bin/env python
# coding: utf-8
from nose.tools import *
from msgpack import packb, unpackb
import datetime
class DummyException(Exception):
pass
def test_raise_on_find_unsupported_value():
assert_raises(TypeError, packb, datetime.datetime.now())
def test_raise_from_object_hook():
def hook(obj):
raise DummyException
assert_raises(DummyException, unpackb, packb({}), object_hook=hook)
assert_raises(DummyException, unpackb, packb({'fizz': 'buzz'}),
object_hook=hook)
assert_raises(DummyException, unpackb, packb({'fizz': 'buzz'}),
object_pairs_hook=hook)
assert_raises(DummyException, unpackb, packb({'fizz': {'buzz': 'spam'}}),
object_hook=hook)
assert_raises(DummyException, unpackb, packb({'fizz': {'buzz': 'spam'}}),
object_pairs_hook=hook)
@raises(ValueError)
def test_invalidvalue():
unpackb(b'\xd9\x97#DL_')
if __name__ == '__main__':
from nose import main
main()