[pypy-commit] pypy py3k: Fix tests in module/rctime

amauryfa noreply at buildbot.pypy.org
Mon Nov 7 21:22:33 CET 2011


Author: Amaury Forgeot d'Arc <amauryfa at gmail.com>
Branch: py3k
Changeset: r48874:8fe40c886021
Date: 2011-11-07 21:01 +0100
http://bitbucket.org/pypy/pypy/changeset/8fe40c886021/

Log:	Fix tests in module/rctime

diff --git a/pypy/module/_sre/interp_sre.py b/pypy/module/_sre/interp_sre.py
--- a/pypy/module/_sre/interp_sre.py
+++ b/pypy/module/_sre/interp_sre.py
@@ -78,8 +78,7 @@
     return space.newtuple(grps)
 
 def import_re(space):
-    w_builtin = space.getbuiltinmodule('__builtin__')
-    w_import = space.getattr(w_builtin, space.wrap("__import__"))
+    w_import = space.getattr(space.builtin, space.wrap("__import__"))
     return space.call_function(w_import, space.wrap("re"))
 
 def matchcontext(space, ctx):
diff --git a/pypy/module/posix/interp_posix.py b/pypy/module/posix/interp_posix.py
--- a/pypy/module/posix/interp_posix.py
+++ b/pypy/module/posix/interp_posix.py
@@ -56,7 +56,7 @@
         self.w_obj = w_obj
 
     def as_bytes(self):
-        return self.space.str_w(self.w_obj)
+        return self.space.bytes_w(self.w_obj)
 
     def as_unicode(self):
         space = self.space
@@ -71,7 +71,7 @@
             fname = FileEncoder(space, w_fname)
             return func(fname, *args)
         else:
-            fname = space.str_w(w_fname)
+            fname = space.bytes_w(w_fname)
             return func(fname, *args)
     return dispatch
 
@@ -512,19 +512,17 @@
     for key, value in os.environ.items():
         space.setitem(w_env, space.wrapbytes(key), space.wrapbytes(value))
 
- at unwrap_spec(name=str, value=str)
-def putenv(space, name, value):
+def putenv(space, w_name, w_value):
     """Change or add an environment variable."""
     try:
-        os.environ[name] = value
+        dispatch_filename_2(rposix.putenv)(space, w_name, w_value)
     except OSError, e:
         raise wrap_oserror(space, e)
 
- at unwrap_spec(name=str)
-def unsetenv(space, name):
+def unsetenv(space, w_name):
     """Delete an environment variable."""
     try:
-        del os.environ[name]
+        dispatch_filename(rposix.unsetenv)(space, w_name)
     except KeyError:
         pass
     except OSError, e:
diff --git a/pypy/module/rctime/app_time.py b/pypy/module/rctime/app_time.py
--- a/pypy/module/rctime/app_time.py
+++ b/pypy/module/rctime/app_time.py
@@ -24,7 +24,7 @@
     (same as strftime())."""
 
     import _strptime     # from the CPython standard library
-    return _strptime._strptime(string, format)[0]
+    return _strptime._strptime_time(string, format)
 
 __doc__ = """This module provides various functions to manipulate time values.
 
diff --git a/pypy/module/rctime/test/test_rctime.py b/pypy/module/rctime/test/test_rctime.py
--- a/pypy/module/rctime/test/test_rctime.py
+++ b/pypy/module/rctime/test/test_rctime.py
@@ -199,7 +199,7 @@
             # rely on it.
             if org_TZ is not None:
                 os.environ['TZ'] = org_TZ
-            elif os.environ.has_key('TZ'):
+            elif 'TZ' in os.environ:
                 del os.environ['TZ']
             rctime.tzset()
 
@@ -279,7 +279,7 @@
                           'j', 'm', 'M', 'p', 'S',
                           'U', 'w', 'W', 'x', 'X', 'y', 'Y', 'Z', '%'):
             format = ' %' + directive
-            print format
+            print(format)
             rctime.strptime(rctime.strftime(format, tt), format)
 
     def test_pickle(self):
diff --git a/pypy/rlib/rposix.py b/pypy/rlib/rposix.py
--- a/pypy/rlib/rposix.py
+++ b/pypy/rlib/rposix.py
@@ -163,3 +163,18 @@
             return nt._getfullpathname(path)
         else:
             return nt._getfullpathname(path.as_bytes())
+
+ at specialize.argtype(0, 1)
+def putenv(name, value):
+    if isinstance(name, str):
+        os.environ[name] = value
+    else:
+        os.environ[name.as_bytes()] = value.as_bytes()
+
+ at specialize.argtype(0)
+def unsetenv(name):
+    if isinstance(name, str):
+        del os.environ[name]
+    else:
+        del os.environ[name.as_bytes()]
+


More information about the pypy-commit mailing list