Reviewed-by: Mark Janes <mark.a.ja...@intel.com> Dylan Baker <baker.dyla...@gmail.com> writes:
> A pretty common error it seems is to get a failure to open display when > using X11. This adds an extra method to the DEQPBaseTest class that > reruns the test is it finds that error in the stderr. This affects only > deqp based suite integration. > > This fixes a number of sporadically failing tests from our CI. > --- > framework/test/deqp.py | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/framework/test/deqp.py b/framework/test/deqp.py > index 80ce156..c75577a 100644 > --- a/framework/test/deqp.py > +++ b/framework/test/deqp.py > @@ -26,10 +26,11 @@ import os > import subprocess > > import six > +from six.moves import range > > from framework import core, grouptools, exceptions > from framework.profile import TestProfile > -from framework.test.base import Test, is_crash_returncode > +from framework.test.base import Test, is_crash_returncode, TestRunError > > __all__ = [ > 'DEQPBaseTest', > @@ -177,3 +178,12 @@ class DEQPBaseTest(Test): > # We failed to parse the test output. Fallback to 'fail'. > if self.result.result == 'notrun': > self.result.result = 'fail' > + > + def _run_command(self): > + """Rerun the command if X11 connection failure happens.""" > + for _ in range(5): > + super(DEQPBaseTest, self)._run_command() > + if "FATAL ERROR: Failed to open display" not in self.result.err: > + return > + > + raise TestRunError('Failed to connect to X server 5 times', 'fail') > -- > 2.7.4 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit