Skip to content

Commit

Permalink
Test for problem with the format
Browse files Browse the repository at this point in the history
  • Loading branch information
hgrecco committed Jan 28, 2016
1 parent bb8122f commit 31b7f18
Showing 1 changed file with 22 additions and 2 deletions.
24 changes: 22 additions & 2 deletions serialize/testsuite/test_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
from unittest import TestCase, skipIf

from serialize import register_class, loads, dumps, load, dump
from serialize.all import FORMATS, UNAVAILABLE_FORMATS, _get_format_from_ext
from serialize.all import (FORMATS, UNAVAILABLE_FORMATS, _get_format_from_ext,
register_format)


class X:
Expand Down Expand Up @@ -38,13 +39,28 @@ def from_builtin(content):

register_class(X, to_builtin, from_builtin)

register_format('_test')


class TestAvailable(TestCase):

@skipIf(os.environ.get('EXTRAS', None) == 'N', 'Extras not installed')
def test_available(self):
self.assertFalse(UNAVAILABLE_FORMATS)

def test_unknown_format(self):
self.assertRaises(ValueError, dumps, 'hello', 'dummy_format')
self.assertRaises(ValueError, _get_format_from_ext, 'dummy_format')

def test_no_replace(self):
self.assertRaises(ValueError, register_format, '_test')

def test_no_dumper_no_loader(self):
self.assertRaises(ValueError, dumps, 'hello', '_test')
self.assertRaises(ValueError, loads, 'hello', '_test')
buf = io.BytesIO()
self.assertRaises(ValueError, dump, 'hello', buf, 'test')
self.assertRaises(ValueError, load, buf, 'test')

NESTED_DICT = {
"level1_1": {
Expand Down Expand Up @@ -140,12 +156,16 @@ def test_raise_from_ext(self):


for key in FORMATS.keys():
name = "TestEncoderDecoder_%s" % key
if key.startswith('_test'):
continue
name = "TestEncoderDecoder_%s" % key.replace(':', '_')
globals()[name] = type(name,
(_TestEncoderDecoder, TestCase),
dict(FMT=key))

for key in UNAVAILABLE_FORMATS.keys():
if key.startswith('_test'):
continue
name = "TestEncoderDecoder_%s" % key
globals()[name] = type(name,
(_TestUnavailable, TestCase),
Expand Down

0 comments on commit 31b7f18

Please sign in to comment.