summaryrefslogtreecommitdiff
path: root/jsonschema/tests/test_validators.py
diff options
context:
space:
mode:
Diffstat (limited to 'jsonschema/tests/test_validators.py')
-rw-r--r--jsonschema/tests/test_validators.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/jsonschema/tests/test_validators.py b/jsonschema/tests/test_validators.py
index 1457be5..5162f6f 100644
--- a/jsonschema/tests/test_validators.py
+++ b/jsonschema/tests/test_validators.py
@@ -9,11 +9,11 @@ from jsonschema.compat import PY3
from jsonschema.tests.compat import mock, unittest
from jsonschema.validators import (
RefResolutionError, UnknownType, ErrorTree, Draft3Validator,
- Draft4Validator, RefResolver, ValidatorMixin, create, validate,
+ Draft4Validator, RefResolver, ValidatorMixin, create, extend, validate,
)
-class TestCreate(unittest.TestCase):
+class TestCreateAndExtend(unittest.TestCase):
def setUp(self):
self.meta_schema = {"properties" : {"smelly" : {}}}
self.smelly = mock.MagicMock()
@@ -63,6 +63,17 @@ class TestCreate(unittest.TestCase):
create(meta_schema={"id" : "id"})
self.assertFalse(validates.called)
+ def test_extend(self):
+ validators = dict(self.Validator.VALIDATORS)
+ new = mock.Mock()
+
+ Extended = extend(self.Validator, validators={"a new one" : new})
+
+ validators.update([("a new one", new)])
+ self.assertEqual(Extended.VALIDATORS, validators)
+ self.assertEqual(Extended.META_SCHEMA, self.Validator.META_SCHEMA)
+ self.assertEqual(Extended.DEFAULT_TYPES, self.Validator.DEFAULT_TYPES)
+
class TestIterErrors(unittest.TestCase):
def setUp(self):