def test_to_source_empty_mapping(self): mapping = {} model = Mock() converter = DatabaseConverter(mapping, self.Schema, self.Model) result = converter.to_source(model) self.Schema.assert_called_once_with() assert_that(result, same_instance(self.db_row))
def test_to_source(self): value = 'value' mapping = {'db_field': 'model_field'} model = Mock() model.model_field = value converter = DatabaseConverter(mapping, self.Schema, self.Model) result = converter.to_source(model) self.Schema.assert_called_once_with(db_field=value) assert_that(result, same_instance(self.db_row))
def test_update_source(self): value = 'value' mapping = {'db_field': 'model_field'} db_row = Mock() model = Mock() model.model_field = value converter = DatabaseConverter(mapping, self.Schema, self.Model) converter.update_source(db_row, model) assert_that(db_row.db_field, equal_to(value))
def test_to_source_with_nonexistent_column(self): value = 'value' mapping = { 'db_field': 'model_field', 'does_not_exist': 'does_not_exist' } model = Mock() model.model_field = value del model.does_not_exist converter = DatabaseConverter(mapping, self.Schema, self.Model) self.assertRaises(ValueError, converter.to_source, model)
def test_to_model_with_nonexistent_column(self): value = 'value' mapping = { 'db_field': 'model_field', 'does_not_exist': 'does_not_exist', } db_row = Mock() db_row.db_field = value del db_row.does_not_exist converter = DatabaseConverter(mapping, self.Schema, self.Model) self.assertRaises(ValueError, converter.to_model, db_row)
] _RELATION = {} def __init__(self, *args, **kwargs): NewModel.__init__(self, *args, **kwargs) self._related_cels = [] def get_related_cels(self): return self._related_cels def add_related_cels(self, cel_ids): self._related_cels.extend(cel_ids) DB_TO_MODEL_MAPPING = { 'id': 'id', 'date': 'date', 'source_name': 'source_name', 'source_exten': 'source_exten', 'destination_name': 'destination_name', 'destination_exten': 'destination_exten', 'user_field': 'user_field', 'answered': 'answered', 'duration': 'duration', 'source_line_identity': 'source_line_identity', 'destination_line_identity': 'destination_line_identity', } db_converter = DatabaseConverter(DB_TO_MODEL_MAPPING, CallLogSchema, CallLog)