summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Berman <Julian@GrayVines.com>2019-02-16 11:36:46 -0500
committerJulian Berman <Julian@GrayVines.com>2019-02-16 11:36:46 -0500
commitb38a010563b2203cd9ec1d2217b31f17205d01df (patch)
treea5e7b514ad81290ac7a0f08336bc69caf5ec9867
parentbe0d0981a47ddd4ad76e5a05acaa4a3498154b3c (diff)
downloadjsonschema-type-checker-default-types.tar.gz
At least a failing test.type-checker-default-types
-rw-r--r--jsonschema/tests/test_validators.py33
-rw-r--r--jsonschema/validators.py6
2 files changed, 36 insertions, 3 deletions
diff --git a/jsonschema/tests/test_validators.py b/jsonschema/tests/test_validators.py
index f8f982c..8af568d 100644
--- a/jsonschema/tests/test_validators.py
+++ b/jsonschema/tests/test_validators.py
@@ -179,7 +179,38 @@ class TestLegacyTypeChecking(SynchronousTestCase):
u"integer",
u"null",
u"number",
- u"object", u"string",
+ u"object",
+ u"string",
+ },
+ )
+ self.flushWarnings()
+
+ def test_default_types_with_provided_custom_type_checker(self):
+ type_checker = TypeChecker(
+ {
+ u"Here": lambda foo: False,
+ u"we": lambda foo: False,
+ u"go": lambda foo: False,
+ u"mistaking": lambda foo: False,
+ u"clouds": lambda foo: False,
+ u"for": lambda foo: False,
+ u"mountains": lambda foo: False,
+ },
+ )
+ Validator = validators.create(
+ meta_schema={},
+ validators=(),
+ type_checker=type_checker,
+ )
+ self.assertEqual(
+ set(Validator.DEFAULT_TYPES), {
+ u"Here",
+ u"we",
+ u"go",
+ u"mistaking",
+ u"clouds",
+ u"for",
+ u"mountains",
},
)
self.flushWarnings()
diff --git a/jsonschema/validators.py b/jsonschema/validators.py
index 650b5d1..4ad8992 100644
--- a/jsonschema/validators.py
+++ b/jsonschema/validators.py
@@ -213,12 +213,14 @@ def create(
type_checkers=_generate_legacy_type_checks(default_types),
)
else:
- default_types = _DEPRECATED_DEFAULT_TYPES
_created_with_default_types = False
if type_checker is None:
type_checker = _types.TypeChecker(
- type_checkers=_generate_legacy_type_checks(default_types),
+ type_checkers=_generate_legacy_type_checks(
+ _DEPRECATED_DEFAULT_TYPES,
+ ),
)
+ default_types = type_checker._type_checkers
@add_metaclass(_DefaultTypesDeprecatingMetaClass)
class Validator(object):