Example #1
0
 def test_deconstruct(self):
     messages = {"missing_keys": "Foobar"}
     validator = KeysValidator(keys=["a", "b"], strict=True, messages=messages)
     path, args, kwargs = validator.deconstruct()
     self.assertEqual(path, "django.contrib.postgres.validators.KeysValidator")
     self.assertEqual(args, ())
     self.assertEqual(kwargs, {"keys": ["a", "b"], "strict": True, "messages": messages})
Example #2
0
 def test_deconstruct(self):
     messages = {
         'missing_keys': 'Foobar',
     }
     validator = KeysValidator(keys=['a', 'b'], strict=True, messages=messages)
     path, args, kwargs = validator.deconstruct()
     self.assertEqual(path, 'django.contrib.postgres.validators.KeysValidator')
     self.assertEqual(args, ())
     self.assertEqual(kwargs, {'keys': ['a', 'b'], 'strict': True, 'messages': messages})
Example #3
0
 def test_deconstruct(self):
     messages = {
         'missing_keys': 'Foobar',
     }
     validator = KeysValidator(keys=['a', 'b'], strict=True, messages=messages)
     path, args, kwargs = validator.deconstruct()
     self.assertEqual(path, 'django.contrib.postgres.validators.KeysValidator')
     self.assertEqual(args, ())
     self.assertEqual(kwargs, {'keys': ['a', 'b'], 'strict': True, 'messages': messages})
Example #4
0
 def test_deconstruct(self):
     messages = {
         "missing_keys": "Foobar",
     }
     validator = KeysValidator(keys=["a", "b"], strict=True, messages=messages)
     path, args, kwargs = validator.deconstruct()
     self.assertEqual(path, "django.contrib.postgres.validators.KeysValidator")
     self.assertEqual(args, ())
     self.assertEqual(
         kwargs, {"keys": ["a", "b"], "strict": True, "messages": messages}
     )
Example #5
0
 def test_extra_keys(self):
     validator = KeysValidator(keys=['a', 'b'], strict=True)
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({'a': 'foo', 'b': 'bar', 'c': 'baz'})
     self.assertEqual(cm.exception.messages[0],
                      'Some unknown keys were provided: c')
     self.assertEqual(cm.exception.code, 'extra_keys')
Example #6
0
 def test_custom_messages(self):
     messages = {
         'missing_keys': 'Foobar',
     }
     validator = KeysValidator(keys=['a', 'b'], strict=True, messages=messages)
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({'a': 'foo', 'c': 'baz'})
     self.assertEqual(cm.exception.messages[0], 'Foobar')
     self.assertEqual(cm.exception.code, 'missing_keys')
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({'a': 'foo', 'b': 'bar', 'c': 'baz'})
     self.assertEqual(cm.exception.messages[0], 'Some unknown keys were provided: c')
     self.assertEqual(cm.exception.code, 'extra_keys')
Example #7
0
 def test_custom_messages(self):
     messages = {
         "missing_keys": "Foobar",
     }
     validator = KeysValidator(keys=["a", "b"], strict=True, messages=messages)
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({"a": "foo", "c": "baz"})
     self.assertEqual(cm.exception.messages[0], "Foobar")
     self.assertEqual(cm.exception.code, "missing_keys")
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({"a": "foo", "b": "bar", "c": "baz"})
     self.assertEqual(cm.exception.messages[0], "Some unknown keys were provided: c")
     self.assertEqual(cm.exception.code, "extra_keys")
Example #8
0
 def test_strict_valid(self):
     validator = KeysValidator(keys=['a', 'b'], strict=True)
     validator({'a': 'foo', 'b': 'bar'})
Example #9
0
 def test_missing_keys(self):
     validator = KeysValidator(keys=['a', 'b'])
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({'a': 'foo', 'c': 'baz'})
     self.assertEqual(cm.exception.messages[0], 'Some keys were missing: b')
     self.assertEqual(cm.exception.code, 'missing_keys')
Example #10
0
 def test_simple_valid(self):
     validator = KeysValidator(keys=['a', 'b'])
     validator({'a': 'foo', 'b': 'bar', 'c': 'baz'})
Example #11
0
 def test_extra_keys(self):
     validator = KeysValidator(keys=["a", "b"], strict=True)
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({"a": "foo", "b": "bar", "c": "baz"})
     self.assertEqual(cm.exception.messages[0], "Some unknown keys were provided: c")
     self.assertEqual(cm.exception.code, "extra_keys")
Example #12
0
 def test_strict_valid(self):
     validator = KeysValidator(keys=["a", "b"], strict=True)
     validator({"a": "foo", "b": "bar"})
Example #13
0
 def test_missing_keys(self):
     validator = KeysValidator(keys=["a", "b"])
     with self.assertRaises(exceptions.ValidationError) as cm:
         validator({"a": "foo", "c": "baz"})
     self.assertEqual(cm.exception.messages[0], "Some keys were missing: b")
     self.assertEqual(cm.exception.code, "missing_keys")
Example #14
0
 def test_simple_valid(self):
     validator = KeysValidator(keys=["a", "b"])
     validator({"a": "foo", "b": "bar", "c": "baz"})
Example #15
0
 def clean(self):
     KeysValidator(
         keys=self.product.attributes,
         strict=True,
     )(self.attributes)