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: Daniel P . Berrangé
Subject: Re: [PATCH v2 05/31] tests/functional: drop 'tesseract_available' helper
Date: Thu, 12 Dec 2024 09:35:19 +0000
User-agent: Mutt/2.2.13 (2024-03-09)

On Thu, Dec 12, 2024 at 07:57:37AM +0100, Thomas Huth wrote:
> 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.

Opps, yes, will address 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
> 

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




reply via email to

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