From 325cc0beca8f268744779f5aa5e17061626e440f Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Fri, 26 Aug 2016 15:23:26 -0700 Subject: [PATCH] Allow test cases to run without installing first As @spwhitton found: The test suite needs to call "python3 -m ocrmypdf.main" instead of just "ocrmypdf" because this /usr/bin/ocrmypdf script has not yet been generated when dh runs the test suite. --- Seems reasonable to perform in-place testing independent of installation. Source: https://sources.debian.net/src/ocrmypdf/4.2.1%2Bgit.20160824.1.5d67cc7-1/debian/patches/0001-patch-test-suite-executable.patch/ --- tests/test_main.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/test_main.py b/tests/test_main.py index b4ff4f84..d5d8de6e 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -27,6 +27,7 @@ TEST_RESOURCES = os.path.join(PROJECT_ROOT, 'tests', 'resources') TEST_OUTPUT = os.environ.get( 'OCRMYPDF_TEST_OUTPUT', default=os.path.join(PROJECT_ROOT, 'tests', 'output', 'main')) +OCRMYPDF = [sys.executable, '-m', 'ocrmypdf.main'] def running_in_docker(): @@ -54,6 +55,7 @@ def _outfile(output_basename): def check_ocrmypdf(input_basename, output_basename, *args, env=None): + "Run ocrmypdf and confirmed that a valid file was created" input_file = _infile(input_basename) output_file = _outfile(output_basename) @@ -70,13 +72,14 @@ def check_ocrmypdf(input_basename, output_basename, *args, env=None): def run_ocrmypdf(input_basename, output_basename, *args, env=None): + "Run ocrmypdf and let caller deal with results" input_file = _infile(input_basename) output_file = _outfile(output_basename) if env is None: env = os.environ - p_args = ['ocrmypdf'] + list(args) + [input_file, output_file] + p_args = OCRMYPDF + list(args) + [input_file, output_file] p = Popen( p_args, close_fds=True, stdout=PIPE, stderr=PIPE, universal_newlines=True, env=env) @@ -617,7 +620,7 @@ def test_stdin(spoof_tesseract_noop): p1_args = ['cat', input_file] p1 = Popen(p1_args, close_fds=True, stdin=DEVNULL, stdout=PIPE) - p2_args = ['ocrmypdf', '-', output_file] + p2_args = OCRMYPDF + ['-', output_file] p2 = Popen( p2_args, close_fds=True, stdout=PIPE, stderr=PIPE, stdin=p1.stdout, env=spoof_tesseract_noop)