[Piglit] [PATCH 2/2] xts: Add a set of rendercheck tests to run.

Eric Anholt eric at anholt.net
Wed Jul 8 22:04:51 PDT 2015


Dylan Baker <baker.dylan.c at gmail.com> writes:

> I have a few style nitpicks on both patches, with those addressed for
> the series:
> Reviewed-by: Dylan Baker <baker.dylan.c at gmail.com>
>
> On Wed, Jul 08, 2015 at 02:38:51PM -0700, Eric Anholt wrote:
>> We don't do a full run, because that takes approximately an eternity.
>> However, running a small subset can be useful to catch certain bugs in
>> Render implementations.  This passes on an fb implementation in <4
>> seconds on my laptop.
>> ---
>>  tests/xts-render.py |  4 ++++
>>  tests/xts.py        | 55 +++++++++++++++++++++++++++++++++++++++++++++++++----
>>  2 files changed, 55 insertions(+), 4 deletions(-)
>> 
>> diff --git a/tests/xts-render.py b/tests/xts-render.py
>> index c9adece..aba87f0 100644
>> --- a/tests/xts-render.py
>> +++ b/tests/xts-render.py
>> @@ -23,6 +23,10 @@ from framework import core
>>  from framework.profile import load_test_profile
>>  
>>  def xts_render_filter(path, test):
>> +    # Keep any tests that aren't from xts.
>> +    if 'xts5' not in path:
>> +        return True
>> +
>>      # All of Xlib9 is for rendering.
>>      return 'xlib9' in path
>>  
>> diff --git a/tests/xts.py b/tests/xts.py
>> index d9e3a3e..c8c8717 100644
>> --- a/tests/xts.py
>> +++ b/tests/xts.py
>> @@ -160,11 +160,20 @@ class XTSTest(Test):  # pylint: disable=too-few-public-methods
>>  
>>          self.result['images'] = self._process_log_for_images(log)
>
> two newlines between toplevel classes and functions please
>
>>  
>> +class RendercheckTest(Test):
>> +    def __init__(self, args):
>> +        super(RendercheckTest, self).__init__(['rendercheck'] + args)
>> +        self.testname = "rendercheck " + " ".join(args)
>>  
>> -def _populate_profile():
>> -    """ Populate the profile attribute """
>> -    # Add all tests to the profile
>> -    profile = XTSProfile()  # pylint: disable=redefined-outer-name
>> +    def interpret_result(self):
>> +        if self.result['returncode'] == 0:
>> +            self.result['result'] = 'pass'
>> +        elif self.result['returncode'] == 77:
>> +            self.result['result'] = 'skip'
>> +        else:
>> +            self.result['result'] = 'fail'
>> +
>> +def populate_profile_xts(profile):
>>      fpath = os.path.join(X_TEST_SUITE, 'xts5')
>>      for dirpath, _, filenames in os.walk(fpath):
>>          for fname in filenames:
>> @@ -192,6 +201,44 @@ def _populate_profile():
>>                              os.path.join(dirpath, testname),
>>                              testname,
>>                              num)
>> +
>> +def add_rendercheck_test(profile, path, args):
>> +    path = 'rendercheck/' + path
>
> Could we use os.path.join here?

It's not a filesystem path, so that would be wrong.  I've swapped to
doing grouptools.join(*path.split('/')) so I'm not passing non-OS paths
to grouptools.from_path.

Other than that, I've applied your feedback as-is.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20150708/018036c2/attachment.sig>


More information about the Piglit mailing list