[igt-dev] [PATCH i-g-t 2/5] scripts/test_list.py: speedup update testlist logic
Mauro Carvalho Chehab
mauro.chehab at linux.intel.com
Thu Nov 2 13:06:24 UTC 2023
From: Mauro Carvalho Chehab <mchehab at kernel.org>
Compile the expand regex to speed it up the parsing of
test lists.
Signed-off-by: Mauro Carvalho Chehab <mchehab at kernel.org>
---
scripts/test_list.py | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/scripts/test_list.py b/scripts/test_list.py
index bd609feeb1f1..252fda576c92 100644
--- a/scripts/test_list.py
+++ b/scripts/test_list.py
@@ -512,6 +512,8 @@ class TestList:
return False
def update_testlist_field(self, subtest_dict):
+ expand = re.compile(",\s*")
+
for field in self.props.keys():
if "_properties_" not in self.props[field]:
continue
@@ -528,16 +530,16 @@ class TestList:
value = subtest_dict.get(field)
if value:
- values = set(re.split(",\s*", value))
+ values = set(expand.split(value))
else:
values = set()
if append_value:
- include_names = set(re.split(",\s*", append_value))
+ include_names = set(expand.split(append_value))
values.update(include_names)
for names, regex_array in update.get("include", {}).items():
- name = set(re.split(",\s*", names))
+ name = set(expand.split(names))
for regex in regex_array:
if regex.fullmatch(testname):
values.update(name)
@@ -546,7 +548,7 @@ class TestList:
# If test is at a global blocklist, ignore it
set_default = True
for names, regex_array in update.get("exclude", {}).items():
- deleted_names = set(re.split(",\s*", names))
+ deleted_names = set(expand.split(names))
for regex in regex_array:
if regex.fullmatch(testname):
if sorted(deleted_names) == sorted(values):
--
2.41.0
More information about the igt-dev
mailing list