def test_with_mapping_already_matched(self): model = "core.property" mapping = MappingSchema([{ 'from': 1, 'to': True }, { 'from': 2, 'to': False }]) keys = { 'phone': MappingSchema(), 'description': MappingSchema(), 'pk': MappingSchema(), 'address': MappingSchema(), 'is_developer': mapping } values = [ '1234567890', 'Property Name', 7, '123 Property Street', False ] expected_result = { 'model': 'core.property', 'pk': 7, "fields": { 'phone': '1234567890', 'description': 'Property Name', 'address': '123 Property Street', 'is_developer': False } } create_fixture_item(model, keys, values) == expected_result
def test_simple_case_different_order(self): model="core.property" keys=['phone', 'description', 'pk', 'address'] values=['1234567890', 'Property Name', 7, '123 Property Street'] expected_result = { 'model': 'core.property', 'pk': 7, "fields": { 'phone': '1234567890', 'description': 'Property Name', 'address': '123 Property Street' } } create_fixture_item(model, keys, values) == expected_result
def test_with_mapping(self): model = "core.property" mapping = MappingSchema([{'from': 1, 'to': True}, {'from': 2, 'to': False}]) keys = {'phone': MappingSchema(), 'description': MappingSchema(), 'pk': MappingSchema(), 'address': MappingSchema(), 'can_swim': mapping} values = ['1234567890', 'Property Name', 7, '123 Property Street', 1] expected_result = { 'model': 'core.property', 'pk': 7, "fields": { 'phone': '1234567890', 'description': 'Property Name', 'address': '123 Property Street', 'can_swim': True } } create_fixture_item(model, keys, values) == expected_result
def test_no_pk(self): model="core.property" keys=['phone', 'description', 'address'] values=['1234567890', 'Property Name', '123 Property Street'] with pytest.raises(Exception): create_fixture_item(model, keys, values)