diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py index e9ca477e634..d0cd8552b97 100755 --- a/Lib/test/regrtest.py +++ b/Lib/test/regrtest.py @@ -786,7 +786,8 @@ def __init__(self, testname, verbose=0, quiet=False): # the corresponding method names. resources = ('sys.argv', 'cwd', 'sys.stdin', 'sys.stdout', 'sys.stderr', - 'os.environ', 'sys.path', 'sys.path_hooks', '__import__') + 'os.environ', 'sys.path', 'sys.path_hooks', '__import__', + 'warnings.filters') def get_sys_argv(self): return id(sys.argv), sys.argv, sys.argv[:] @@ -838,6 +839,12 @@ def get___import__(self): def restore___import__(self, import_): __builtins__.__import__ = import_ + def get_warnings_filters(self): + return id(warnings.filters), warnings.filters, warnings.filters[:] + def restore_warnings_filters(self, saved_filters): + warnings.filters = saved_filters[1] + warnings.filters[:] = saved_filters[2] + def resource_info(self): for name in self.resources: method_suffix = name.replace('.', '_')