def test_to_pdf(file_path): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) with pytest.raises(UnsupportedMimeType): manager.get_pdf_preview( file_path=file_path, force=True )
def test_to_pdf_one_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_0 = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=0, force=True) assert os.path.exists(path_0) is True assert os.path.getsize(path_0) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_0) path_1 = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=1, force=True) assert os.path.exists(path_1) is True assert os.path.getsize(path_1) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_1)
def test_to_pdf_one_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_0 = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=0, force=True) assert os.path.exists(path_0) is True assert os.path.getsize(path_0) > 0 assert path_0 == os.path.join(CACHE_DIR, PDF_FILE_HASH + "-page0.pdf") path_1 = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=1, force=True) assert os.path.exists(path_1) is True assert os.path.getsize(path_1) > 0 assert path_1 == os.path.join(CACHE_DIR, PDF_FILE_HASH + "-page1.pdf")
def test_to_pdf_no_extension_extension_forced() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH_NO_EXTENSION, file_ext=".xlsx") is True path_to_file = manager.get_pdf_preview( file_path=IMAGE_FILE_PATH_NO_EXTENSION, force=True, file_ext=".xlsx" ) assert os.path.exists(path_to_file) is True
def test_to_pdf_full_export(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=-1, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN__PDF, path_to_file)
def test_to_pdf_full_export(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, page=-1, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert path_to_file == (os.path.join(CACHE_DIR, PDF_FILE_HASH + ".pdf"))
def download_pdf_one(self, page_id, *args, **kwargs): file_id = int(tg.request.controller_state.routing_args.get('file_id')) page_id = int(page_id) # page_id = int(tg.request.controller_state.routing_args.get('page_id')) # For now it's done through database content # but soon it'll be with disk access user = tmpl_context.current_user content_api = ContentApi( user, show_archived=True, show_deleted=True, ) file_name = content_api.get_one(file_id, self._item_type).file_name cache_path = '/home/alexis/Pictures/cache/' preview_manager = PreviewManager(cache_path, create_folder=True) path = preview_manager.get_pdf_preview( file_path='/home/alexis/Pictures/cache/{}'.format(file_name), page=page_id, ) tg.response.headers['Content-Disposition'] = \ str('attachment; filename="{}"'.format(file_name)) with open(path, 'rb') as pdf: return pdf.read()
def test_to_pdf_no_extension() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) image_file_path = HTML_FILE_PATH_NO_EXTENSION assert manager.has_jpeg_preview(file_path=image_file_path) is True path_to_file = manager.get_pdf_preview(file_path=image_file_path, force=True) assert os.path.exists(path_to_file) is True
def test_to_pdf(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) image_file_path = IMAGE_FILE_PATH assert manager.has_jpeg_preview(file_path=image_file_path) is True path_to_file = manager.get_pdf_preview(file_path=image_file_path, force=True) assert os.path.exists(path_to_file) is True
def download_pdf_one(self, page_id: str, revision_id: str = None, *args, **kwargs): file_id = int(tg.request.controller_state.routing_args.get('file_id')) revision_id = int(revision_id) if revision_id != 'latest' else None page = int(page_id) cache_path = CFG.get_instance().PREVIEW_CACHE_DIR preview_manager = PreviewManager(cache_path, create_folder=True) user = tmpl_context.current_user content_api = ContentApi(user, show_archived=True, show_deleted=True) file = content_api.get_one(file_id, self._item_type) if revision_id: file_path = content_api.get_one_revision_filepath(revision_id) else: file = content_api.get_one(file_id, self._item_type) file_path = content_api.get_one_revision_filepath(file.revision_id) path = preview_manager.get_pdf_preview(file_path=file_path, page=page) file_suffix = '' if page > -1: file_suffix = '.page-{}'.format(page + 1) tg.response.headers['Content-Disposition'] = \ 'attachment; filename="{}{}.pdf"'.format( file.label, file_suffix, ) with open(path, 'rb') as pdf: return pdf.read()
def test_to_pdf(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) with pytest.raises(UnavailablePreviewType): path_to_file = manager.get_pdf_preview( file_path=IMAGE_FILE_PATH, force=True )
def download_pdf_one(self, page_id: str, revision_id: str=None, *args, **kwargs): file_id = int(tg.request.controller_state.routing_args.get('file_id')) revision_id = int(revision_id) if revision_id != 'latest' else None page = int(page_id) cache_path = CFG.get_instance().PREVIEW_CACHE_DIR preview_manager = PreviewManager(cache_path, create_folder=True) user = tmpl_context.current_user content_api = ContentApi(user, show_archived=True, show_deleted=True) file = content_api.get_one(file_id, self._item_type) if revision_id: file_path = content_api.get_one_revision_filepath(revision_id) else: file = content_api.get_one(file_id, self._item_type) file_path = content_api.get_one_revision_filepath(file.revision_id) path = preview_manager.get_pdf_preview(file_path=file_path, page=page) file_suffix = '' if page > -1: file_suffix = '.page-{}'.format(page + 1) tg.response.headers['Content-Disposition'] = \ 'attachment; filename="{}{}.pdf"'.format( file.label, file_suffix, ) with open(path, 'rb') as pdf: return pdf.read()
def test_to_pdf_one_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) path_0 = manager.get_pdf_preview(file_path=os.path.join( CURRENT_DIR, 'the_odt.odt'), page=0, force=True) assert os.path.exists(path_0) == True assert os.path.getsize(path_0) > 0 assert path_0 == '/tmp/preview-generator-tests/cache/565e100b2c2337222cf1a551f36c17e7-page0.pdf' # nopep8 path_1 = manager.get_pdf_preview(file_path=os.path.join( CURRENT_DIR, 'the_odt.odt'), page=1, force=True) assert os.path.exists(path_1) == True assert os.path.getsize(path_1) > 0 assert path_1 == '/tmp/preview-generator-tests/cache/565e100b2c2337222cf1a551f36c17e7-page1.pdf' # nopep8
def test_to_pdf_full_export(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) path_to_file = manager.get_pdf_preview(file_path=os.path.join( CURRENT_DIR, 'the_odt.odt'), page=-1, force=True) assert os.path.exists(path_to_file) == True assert os.path.getsize(path_to_file) > 0 assert path_to_file == '/tmp/preview-generator-tests/cache/565e100b2c2337222cf1a551f36c17e7.pdf' # nopep8
def test_to_pdf_no_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) path_to_file = manager.get_pdf_preview(file_path=os.path.join( CURRENT_DIR, 'the_odt.odt'), force=True) assert os.path.exists(path_to_file) == True assert os.path.getsize(path_to_file) > 0 assert path_to_file == '/tmp/preview-generator-tests/cache/565e100b2c2337222cf1a551f36c17e7.pdf' # nopep8 with WandImage(filename=path_to_file) as pdf: assert len(pdf.sequence) == 2
def test_to_pdf_no_page() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=ODP_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=ODP_FILE_PATH, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN__PDF, path_to_file) assert (PdfPreviewBuilderPopplerUtils().get_page_number( cache_path=CACHE_DIR, preview_name="test", file_path=path_to_file) == 5)
def test_to_pdf_no_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN__PDF, path_to_file) pdf = PdfFileReader(open(path_to_file, "rb")) assert pdf.getNumPages() == 2
def test_to_pdf_no_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert path_to_file == (os.path.join(CACHE_DIR, PDF_FILE_HASH + ".pdf")) try: with WandImage(filename=path_to_file) as pdf: assert len(pdf.sequence) == 2 except PolicyError: pytest.skip("You must update ImageMagic policy file to allow PDF files")
def test_to_pdf_one_page() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=ODT_FILE_PATH) is True path_0 = manager.get_pdf_preview(file_path=ODT_FILE_PATH, page=0, force=True) assert os.path.exists(path_0) is True assert os.path.getsize( path_0 ) > 1000 # verify if the size of the pdf refer to a normal content assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_0) pdf = PdfFileReader(open(path_0, "rb")) assert pdf.getNumPages() == 1 path_1 = manager.get_pdf_preview(file_path=ODT_FILE_PATH, page=1, force=True) assert os.path.exists(path_1) is True assert os.path.getsize( path_1 ) > 1000 # verify if the size of the pdf refer to a normal content assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_1) pdf = PdfFileReader(open(path_1, "rb")) assert pdf.getNumPages() == 1
def test_to_pdf_no_page(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH, ) is True path_to_file = manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, force=True) assert os.path.exists(path_to_file) is True assert os.path.getsize(path_to_file) > 0 assert re.match(test_utils.CACHE_FILE_PATH_PATTERN__PDF, path_to_file) try: with WandImage(filename=path_to_file) as pdf: assert len(pdf.sequence) == 2 except PolicyError: pytest.skip( 'You must update ImageMagic policy file to allow PDF files')
def test_to_pdf_one_page() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=ODT_FILE_PATH) is True path_0 = manager.get_pdf_preview(file_path=ODT_FILE_PATH, page=0, force=True) assert os.path.exists(path_0) is True assert os.path.getsize(path_0) > 1000 # verify if the size of the pdf refer to a normal content assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_0) assert ( PdfPreviewBuilderPopplerUtils().get_page_number( cache_path=CACHE_DIR, preview_name="test", file_path=path_0 ) == 1 ) path_1 = manager.get_pdf_preview(file_path=ODT_FILE_PATH, page=1, force=True) assert os.path.exists(path_1) is True assert os.path.getsize(path_1) > 1000 # verify if the size of the pdf refer to a normal content assert re.match(test_utils.CACHE_FILE_PATH_PATTERN_WITH_PAGE__PDF, path_1) assert ( PdfPreviewBuilderPopplerUtils().get_page_number( cache_path=CACHE_DIR, preview_name="test", file_path=path_0 ) == 1 )
def test_to_pdf_no_extension(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview( file_path=IMAGE_FILE_PATH_NO_EXTENSION, ) is False with pytest.raises(UnavailablePreviewType): manager.get_pdf_preview(file_path=IMAGE_FILE_PATH_NO_EXTENSION, )
def test_to_pdf() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is False with pytest.raises(UnavailablePreviewType): manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, force=True)
def test_to_pdf() -> None: manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=XLSX_FILE_PATH) is True path_to_file = manager.get_pdf_preview(file_path=XLSX_FILE_PATH, force=True) assert os.path.exists(path_to_file) is True
def test_to_pdf(): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) assert manager.has_pdf_preview(file_path=IMAGE_FILE_PATH) is True manager.get_pdf_preview(file_path=IMAGE_FILE_PATH, force=True)
def test_to_pdf__err_timeout() -> None: with pytest.raises(subprocess.TimeoutExpired): manager = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) manager.get_pdf_preview(file_path=ODT_FILE_PATH, force=True)
def get_docs_preview(file_id, path): cache_path = pathconst.TEMP manager = PreviewManager(cache_path, create_folder=True) path_to_pdf_preview = manager.get_pdf_preview(file_path=path) return path_to_pdf_preview
def test_dry_run_pdf() -> None: pm = PreviewManager(cache_folder_path=CACHE_DIR, create_folder=True) preview_path = pm.get_pdf_preview("/tmp/image.jpeg", dry_run=True) assert not os.path.exists(preview_path)