qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 05/31] tests/functional: drop 'tesseract_available' helper


From: Thomas Huth
Subject: Re: [PATCH v2 05/31] tests/functional: drop 'tesseract_available' helper
Date: Thu, 12 Dec 2024 07:57:37 +0100
User-agent: Mozilla Thunderbird

On 11/12/2024 18.26, Daniel P. Berrangé wrote:
Platforms we target have new enough tesseract that it suffices to merely
check if the binary exists.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
  tests/functional/qemu_test/tesseract.py | 12 +-----------
  tests/functional/test_m68k_nextcube.py  |  8 +++-----
  2 files changed, 4 insertions(+), 16 deletions(-)

diff --git a/tests/functional/qemu_test/tesseract.py 
b/tests/functional/qemu_test/tesseract.py
index ef1833139d..1b7818090a 100644
--- a/tests/functional/qemu_test/tesseract.py
+++ b/tests/functional/qemu_test/tesseract.py
@@ -7,17 +7,7 @@
import logging -from . import has_cmd, run_cmd
-
-def tesseract_available(expected_version):
-    (has_tesseract, _) = has_cmd('tesseract')
-    if not has_tesseract:
-        return False
-    (stdout, stderr, ret) = run_cmd([ 'tesseract', '--version'])
-    if ret:
-        return False
-    version = stdout.split()[1]
-    return int(version.split('.')[0]) >= expected_version
+from . import run_cmd
def tesseract_ocr(image_path, tesseract_args=''):
      console_logger = logging.getLogger('console')
diff --git a/tests/functional/test_m68k_nextcube.py 
b/tests/functional/test_m68k_nextcube.py
index 0124622c40..1022e8f468 100755
--- a/tests/functional/test_m68k_nextcube.py
+++ b/tests/functional/test_m68k_nextcube.py
@@ -13,7 +13,8 @@
  from qemu_test import QemuSystemTest, Asset
  from unittest import skipUnless
-from qemu_test.tesseract import tesseract_available, tesseract_ocr
+from qemu_test import has_cmd
+from qemu_test.tesseract import tesseract_ocr
PIL_AVAILABLE = True
  try:
@@ -53,10 +54,7 @@ def test_bootrom_framebuffer_size(self):
          self.assertEqual(width, 1120)
          self.assertEqual(height, 832)
- # Tesseract 4 adds a new OCR engine based on LSTM neural networks. The
-    # new version is faster and more accurate than version 3. The drawback is
-    # that it is still alpha-level software.
-    @skipUnless(tesseract_available(4), 'tesseract OCR tool not available')
+    @skipUnless(*has_cmd('tesseract') 'tesseract OCR tool not available')
The *has_cmd('tesseract') already provides the error message, so you've got 
to drop the 'tesseract OCR tool not available' part now, otherwise this ends 
up in an SyntaxError. You likely didn't notice since it gets replaced later 
anyway, but for bisectability, it would be good to fix it.
Anyway, this is yet another good example why we should rather get rid of 
has_cmd() ... it's too error prone, I made the same or similar mistake in 
the past already, too.
 Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]