class PaperFileSchema(mm.SQLAlchemyAutoSchema): icon = Function(lambda paper_file: icon_from_mimetype(paper_file.content_type)) download_url = Function(lambda paper_file: url_for('papers.download_file', paper_file)) class Meta: model = PaperFile fields = ('id', 'revision_id', 'content_type', 'filename', 'icon', 'download_url')
def test_icon_from_mimetype_case_insensitive(): assert icon_from_mimetype('IMAGE/gif', default_icon='default_icon') == 'icon-file-image'
def test_icon_from_mimetype(mimetype, expected_icon): assert icon_from_mimetype(mimetype, default_icon='default_icon') == expected_icon