[pypy-commit] pypy default: Clean up os.environ["TZ"] when we're done, in case other tests follow.

dripton noreply at buildbot.pypy.org
Sat Jan 21 17:26:11 CET 2012


Author: David Ripton <dripton at ripton.net>
Branch: 
Changeset: r51586:eeedeffe6525
Date: 2012-01-21 11:13 -0500
http://bitbucket.org/pypy/pypy/changeset/eeedeffe6525/

Log:	Clean up os.environ["TZ"] when we're done, in case other tests
	follow.

diff --git a/pypy/module/test_lib_pypy/test_datetime.py b/pypy/module/test_lib_pypy/test_datetime.py
--- a/pypy/module/test_lib_pypy/test_datetime.py
+++ b/pypy/module/test_lib_pypy/test_datetime.py
@@ -9,9 +9,16 @@
 
     Based on danchr's test script in https://bugs.pypy.org/issue986
     """
-    os.putenv("TZ", "GMT")
-    for unused in xrange(100):
-        now = time.time()
-        delta = (datetime.datetime.utcfromtimestamp(now) -
-                 datetime.datetime.fromtimestamp(now))
-        assert delta.days * 86400 + delta.seconds == 0
+    try:
+        prev_tz = os.environ.get("TZ")
+        os.environ["TZ"] = "GMT"
+        for unused in xrange(100):
+            now = time.time()
+            delta = (datetime.datetime.utcfromtimestamp(now) -
+                     datetime.datetime.fromtimestamp(now))
+            assert delta.days * 86400 + delta.seconds == 0
+    finally:
+        if prev_tz is None:
+            del os.environ["TZ"]
+        else:
+            os.environ["TZ"] = prev_tz


More information about the pypy-commit mailing list