def test_hstore_model_field_validation(self): d = SerializedDataBag() with self.assertRaises(ValidationError): d.full_clean() d.data = 'test' with self.assertRaises(ValidationError): d.full_clean() d.data = '["test"]' with self.assertRaises(ValidationError): d.full_clean() d.data = ["test"] with self.assertRaises(ValidationError): d.full_clean() d.data = { 'a': 1, 'b': 2.2, 'c': ['a', 'b'], 'd': {'test': 'test'} } with self.assertRaises(ValidationError): d.full_clean()
def test_hstore_model_field_validation(self): d = SerializedDataBag() with self.assertRaises(ValidationError): d.full_clean() d.data = 'test' with self.assertRaises(ValidationError): d.full_clean() d.data = '["test"]' with self.assertRaises(ValidationError): d.full_clean() d.data = ["test"] with self.assertRaises(ValidationError): d.full_clean() d.data = {'a': 1, 'b': 2.2, 'c': ['a', 'b'], 'd': {'test': 'test'}} with self.assertRaises(ValidationError): d.full_clean()
def test_properties_hstore(self): """ Make sure the hstore field does what it is supposed to. """ instance = SerializedDataBag() test_props = {'foo': 'bar', 'size': '3'} instance.name = "foo" instance.data = test_props instance.save() self.assertIsInstance(instance.data, dict) self.assertEqual(instance.data, test_props) instance = SerializedDataBag.objects.get(pk=instance.pk) self.assertIsInstance(instance.data, dict) self.assertEqual(instance.data, test_props) self.assertEqual(instance.data['size'], '3') self.assertIn('foo', instance.data)