2015-07-22 02:59:25 -07:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
|
|
|
|
from subprocess import Popen, PIPE
|
|
|
|
import os
|
|
|
|
|
|
|
|
TESTS_ROOT = os.path.abspath(os.path.dirname(__file__))
|
|
|
|
PROJECT_ROOT = os.path.dirname(TESTS_ROOT)
|
|
|
|
OCRMYPDF = os.path.join(PROJECT_ROOT, 'OCRmyPDF.sh')
|
|
|
|
TEST_RESOURCES = os.path.join(PROJECT_ROOT, 'tests', 'resources')
|
2015-07-22 03:16:19 -07:00
|
|
|
TEST_OUTPUT = os.path.join(PROJECT_ROOT, 'tests', 'output')
|
2015-07-22 02:59:25 -07:00
|
|
|
|
|
|
|
|
2015-07-22 03:16:19 -07:00
|
|
|
def setup_module():
|
|
|
|
try:
|
|
|
|
os.mkdir(TEST_OUTPUT)
|
|
|
|
except FileExistsError:
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
def run_ocrmypdf(input_file, *args):
|
2015-07-22 02:59:25 -07:00
|
|
|
input_path = os.path.join(TEST_RESOURCES, input_file)
|
2015-07-22 03:16:19 -07:00
|
|
|
output_path = os.path.join(TEST_OUTPUT, input_file)
|
2015-07-22 02:59:25 -07:00
|
|
|
|
|
|
|
sh_args = ['sh', './OCRmyPDF.sh'] + list(args) + [input_path, output_path]
|
|
|
|
sh = Popen(
|
|
|
|
sh_args, close_fds=True, stdout=PIPE, stderr=PIPE,
|
|
|
|
universal_newlines=True)
|
|
|
|
out, err = sh.communicate()
|
|
|
|
return sh, out, err
|
|
|
|
|
|
|
|
|
2015-07-22 03:16:19 -07:00
|
|
|
def check_ocrmypdf(input_file, *args):
|
|
|
|
sh, _, err = run_ocrmypdf(input_file, *args)
|
2015-07-22 02:59:25 -07:00
|
|
|
assert sh.returncode == 0, err
|
|
|
|
|
|
|
|
|
|
|
|
def test_quick():
|
2015-07-22 03:16:19 -07:00
|
|
|
check_ocrmypdf('c02-22.pdf')
|