From fe989363750a7fffdbba1034b8194e1484c006e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Tue, 24 Apr 2018 23:41:49 +0200 Subject: [PATCH] [testsuite] Fixed infinite iteration in CaseMeta.__new__ The loop condition in the variable expansion loop was faulty and caused an infinite loop when no change occured (i.e. no variables were expanded) --- tests/system_tests.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/system_tests.py b/tests/system_tests.py index f870714b..1488a4c9 100644 --- a/tests/system_tests.py +++ b/tests/system_tests.py @@ -598,13 +598,15 @@ class CaseMeta(type): def __new__(mcs, clsname, bases, dct): - changed = False + changed = True # expand all non-private variables by brute force # => try all expanding all elements defined in the current class until # there is no change in them any more keys = [key for key in list(dct.keys()) if not key.startswith('_')] - while not changed: + while changed: + changed = False + for key in keys: old_value = dct[key]