test-runner: don't run duplicate tests

If the user provides duplicate tests in the list only append one
of them to the list. This can happen accidentally when using
glob matches.
This commit is contained in:
James Prestwood 2021-08-12 13:21:53 -07:00 committed by Denis Kenzior
parent 9a15a46df5
commit 30158fe89c
1 changed files with 5 additions and 3 deletions

View File

@ -1013,15 +1013,17 @@ def build_test_list(args):
tests = [test_root + '/' + x for x in full_list[i:] \
if x.startswith('test')]
elif os.path.exists(t):
tests.append(t)
if t not in tests:
tests.append(t)
elif os.path.exists(path):
tests.append(path)
if path not in tests:
tests.append(path)
else:
matches = glob(path)
if matches == []:
raise Exception("Could not find test %s" % t)
tests.extend(matches)
tests.extend(list(set(matches) - set(tests)))
return sorted(tests)