[Piglit] [PATCH 3/3] framework: Exit if a filter removes all tests from a profile

Brian Paul brianp at vmware.com
Wed Apr 12 20:04:59 UTC 2017


On 04/12/2017 11:55 AM, Dylan Baker wrote:
> It doesn't makes sense to run if a user has removed all tests from a
> selected profile, and currently if all tests are removed, then an
> assertion will be hit in the backend that isn't extremely clear about
> what went wrong. This should be much easier to understand.
>
> Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
> ---
>   framework/profile.py | 7 +++++++
>   1 file changed, 7 insertions(+)
>
> diff --git a/framework/profile.py b/framework/profile.py
> index 4604367e1..ce0b24ce8 100644
> --- a/framework/profile.py
> +++ b/framework/profile.py
> @@ -389,6 +389,13 @@ def run(profiles, logger, backend, concurrency):
>       profiles = [(p, list(p.itertests())) for p in profiles]
>       log = LogManager(logger, sum(len(l) for _, l in profiles))
>
> +    # check that after the filters are run there are actually tests to run
> +    for p, l in profiles:
> +        if not l:
> +            raise exceptions.PiglitUserError(
> +                'After running filters there are no tests in '
> +                'profile "{}"'.format(p.name))

How about "no matching tests"?

Otherwise, works great.  Thanks for the fast work!

Reviewed-by: Brian Paul <brianp at vmware.com>
Tested-by: Brian Paul <brianp at vmware.com>

> +
>       def test(name, test, profile, this_pool=None):
>           """Function to call test.execute from map"""
>           with backend.write_test(name) as w:
>



More information about the Piglit mailing list