def test_dictof_key_choices(self): f = DictOf(ExampleResource, null=True, key_choices=( ('foo', 'Foo'), (None, 'None'), )) self.assertRaises(ValidationError, f.clean, {'eek': ExampleResource(name='foo')}) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': {'name': 'foo'}}))
def test_dictof_2(self): f = DictOf(ExampleResource, null=True) self.assertEqual(None, f.clean(None)) self.assertRaises(ValidationError, f.clean, 'abc') self.assertRaises(ValidationError, f.clean, 123) self.assertRaises(ValidationError, f.clean, []) self.assertRaises(ValidationError, f.clean, {'$': 'tests.test_composite_fields.ExampleResource'}) self.assertRaises(ValidationError, f.clean, {'abc': None}) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': {'name': 'foo'}})) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': { '$': 'tests.test_composite_fields.ExampleResource', 'name': 'foo'}}))
def test_dictof_3(self): f = DictOf(ExampleResource, empty=False) self.assertRaises(ValidationError, f.clean, None) self.assertRaises(ValidationError, f.clean, 'abc') self.assertRaises(ValidationError, f.clean, 123) self.assertRaises(ValidationError, f.clean, []) self.assertRaises(ValidationError, f.clean, {'$': 'tests.test_composite_fields.ExampleResource'}) self.assertRaises(ValidationError, f.clean, {'abc': None}) self.assertRaises(ValidationError, f.clean, {}) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': {'name': 'foo'}})) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': { '$': 'tests.test_composite_fields.ExampleResource', 'name': 'foo'}}))
def test_dictof_3(self): f = DictOf(ExampleResource, empty=False) pytest.raises(ValidationError, f.clean, None) pytest.raises(ValidationError, f.clean, 'abc') pytest.raises(ValidationError, f.clean, 123) pytest.raises(ValidationError, f.clean, []) pytest.raises(ValidationError, f.clean, {'$': 'tests.test_fields_composite.ExampleResource'}) pytest.raises(ValidationError, f.clean, {'abc': None}) pytest.raises(ValidationError, f.clean, {}) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': {'name': 'foo'}})) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': { '$': 'tests.test_fields_composite.ExampleResource', 'name': 'foo'}}))
def test_dictof_1(self): f = DictOf(ExampleResource) pytest.raises(ValidationError, f.clean, None) pytest.raises(ValidationError, f.clean, 'abc') pytest.raises(ValidationError, f.clean, 123) pytest.raises(ValidationError, f.clean, []) pytest.raises(ValidationError, f.clean, {'$': 'tests.test_fields_composite.ExampleResource'}) pytest.raises(ValidationError, f.clean, {'abc': None}) self.assertResourceDictEqual({}, f.clean({})) self.assertResourceDictEqual({'foo': ExampleResource(name='foo')}, f.clean({'foo': { 'name': 'foo' }})) self.assertResourceDictEqual( {'foo': ExampleResource(name='foo')}, f.clean({ 'foo': { '$': 'tests.test_fields_composite.ExampleResource', 'name': 'foo' } }))