]> granicus.if.org Git - python/commitdiff
Add a check for sys.warnoptions in regrtest.
authorEzio Melotti <ezio.melotti@gmail.com>
Sun, 20 Mar 2011 13:09:26 +0000 (15:09 +0200)
committerEzio Melotti <ezio.melotti@gmail.com>
Sun, 20 Mar 2011 13:09:26 +0000 (15:09 +0200)
Lib/test/regrtest.py

index b5288b5072138436cf1bbddaf9e5ff9aaa1650fd..440c09c3ae8c6094777fdd4cd2ccb996247cf516 100755 (executable)
@@ -827,7 +827,8 @@ class saved_test_environment:
     resources = ('sys.argv', 'cwd', 'sys.stdin', 'sys.stdout', 'sys.stderr',
                  'os.environ', 'sys.path', 'sys.path_hooks', '__import__',
                  'warnings.filters', 'asyncore.socket_map',
-                 'logging._handlers', 'logging._handlerList')
+                 'logging._handlers', 'logging._handlerList',
+                 'sys.warnoptions')
 
     def get_sys_argv(self):
         return id(sys.argv), sys.argv, sys.argv[:]
@@ -909,6 +910,12 @@ class saved_test_environment:
         # Can't easily revert the logging state
         pass
 
+    def get_sys_warnoptions(self):
+        return id(sys.warnoptions), sys.warnoptions, sys.warnoptions[:]
+    def restore_sys_warnoptions(self, saved_options):
+        sys.warnoptions = saved_options[1]
+        sys.warnoptions[:] = saved_options[2]
+
     def resource_info(self):
         for name in self.resources:
             method_suffix = name.replace('.', '_')