Because in Python we have `bool([]}) == False`, providing empty test
list resulted in hitting the same code path as not providing it at all,
meaning that we run everything.

Let's just exit early with an appropriate message instead.

This will get rid of the rather surprising behavior and will help making
the execution less prone to automated list generation errors (which has
already bitten us) as well as human errors.

Signed-off-by: Arkadiusz Hiler <[email protected]>
---
 framework/programs/run.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/framework/programs/run.py b/framework/programs/run.py
index 4524f171b..0fec264ec 100644
--- a/framework/programs/run.py
+++ b/framework/programs/run.py
@@ -327,6 +327,10 @@ def run(input_):
             stripped = (t.split('#')[0].strip() for t in test_list)
             forced_test_list = [t for t in stripped if t]
 
+            # to avoid running everything
+            if not forced_test_list:
+                raise exceptions.PiglitFatalError("Empty test list provided")
+
     backend = backends.get_backend(args.backend)(
         args.results_path,
         junit_suffix=args.junit_suffix,
-- 
2.13.5

_______________________________________________
Piglit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to