[Piglit] [PATCH 1/5] framework/html: guard against errors writing individual test results
Marek Olšák
maraeo at gmail.com
Wed May 2 20:57:42 UTC 2018
On Wed, May 2, 2018 at 4:51 PM, Dylan Baker <dylan at pnwbakers.com> wrote:
> Quoting Marek Olšák (2018-05-02 13:32:43)
> > From: Nicolai Hähnle <nicolai.haehnle at amd.com>
> >
> > ---
> > framework/summary/html_.py | 18 +++++++++++-------
> > 1 file changed, 11 insertions(+), 7 deletions(-)
> >
> > diff --git a/framework/summary/html_.py b/framework/summary/html_.py
> > index f7fdc8576..512b42c24 100644
> > --- a/framework/summary/html_.py
> > +++ b/framework/summary/html_.py
> > @@ -24,20 +24,21 @@
> >
> > from __future__ import (
> > absolute_import, division, print_function, unicode_literals
> > )
> > import errno
> > import getpass
> > import os
> > import shutil
> > import sys
> > import tempfile
> > +import traceback
> >
> > import mako
> > from mako.lookup import TemplateLookup
> > import six
> >
> > # a local variable status exists, prevent accidental overloading by
> renaming
> > # the module
> > from framework import backends, exceptions, core
> >
> > from .common import Results, escape_filename, escape_pathname
> > @@ -106,27 +107,30 @@ def _make_testrun_info(results, destination,
> exclude=None):
> >
> > # Then build the individual test results
> > for key, value in six.iteritems(each.tests):
> > html_path = os.path.join(destination, name,
> > escape_filename(key + ".html"))
> > temp_path = os.path.dirname(html_path)
> >
> > if value.result not in exclude:
> > core.check_dir(temp_path)
> >
> > - with open(html_path, 'wb') as out:
> > - out.write(_TEMPLATES.get_template(
> > - 'test_result.mako').render(
> > - testname=key,
> > - value=value,
> > - css=os.path.relpath(result_css, temp_path),
> > - index=os.path.relpath(index, temp_path)))
> > + try:
> > + with open(html_path, 'wb') as out:
> > + out.write(_TEMPLATES.get_template(
> > + 'test_result.mako').render(
> > + testname=key,
> > + value=value,
> > + css=os.path.relpath(result_css,
> temp_path),
> > + index=os.path.relpath(index,
> temp_path)))
> > + except OSError as e:
> > + traceback.print_exc()
>
> This makes me really nervous. What are you trying to catch, and why is it
> a good idea to print a traceback and continue?
>
Nicolai, do you know the answer to this one?
Thanks,
Marek
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/piglit/attachments/20180502/0ba35f4e/attachment.html>
More information about the Piglit
mailing list