[Python-checkins] distutils2: Fix a bug in environment marker micro-language parser

tarek.ziade python-checkins at python.org
Sun Aug 8 11:50:45 CEST 2010


tarek.ziade pushed f8050faac794 to distutils2:

http://hg.python.org/distutils2/rev/f8050faac794
changeset:   415:f8050faac794
user:        ?ric Araujo <merwok at netwok.org>
date:        Sat Jul 31 15:59:25 2010 +0200
summary:     Fix a bug in environment marker micro-language parser
files:       src/distutils2/metadata.py, src/distutils2/tests/test_metadata.py

diff --git a/src/distutils2/metadata.py b/src/distutils2/metadata.py
--- a/src/distutils2/metadata.py
+++ b/src/distutils2/metadata.py
@@ -470,8 +470,8 @@
                                       sys.version_info[1]),
          'python_full_version': sys.version.split()[0],
          'os.name': os.name,
-         'platform.version': platform.version,
-         'platform.machine': platform.machine}
+         'platform.version': platform.version(),
+         'platform.machine': platform.machine()}
 
 class _Operation(object):
 
diff --git a/src/distutils2/tests/test_metadata.py b/src/distutils2/tests/test_metadata.py
--- a/src/distutils2/tests/test_metadata.py
+++ b/src/distutils2/tests/test_metadata.py
@@ -1,6 +1,7 @@
 """Tests for distutils.command.bdist."""
 import os
 import sys
+import platform
 from StringIO import StringIO
 
 from distutils2.metadata import (DistributionMetadata, _interpret,
@@ -14,19 +15,23 @@
 
 
     def test_interpret(self):
-        platform = sys.platform
+        sys_platform = sys.platform
         version = sys.version.split()[0]
         os_name = os.name
+        platform_version = platform.version()
+        platform_machine = platform.machine()
 
-        self.assertTrue(_interpret("sys.platform == '%s'" % platform))
+        self.assertTrue(_interpret("sys.platform == '%s'" % sys_platform))
         self.assertTrue(_interpret(
-            "sys.platform == '%s' or python_version == '2.4'" % platform))
+            "sys.platform == '%s' or python_version == '2.4'" % sys_platform))
         self.assertTrue(_interpret(
             "sys.platform == '%s' and python_full_version == '%s'" %
-            (platform, version)))
-        self.assertTrue(_interpret("'%s' == sys.platform" % platform))
-
+            (sys_platform, version)))
+        self.assertTrue(_interpret("'%s' == sys.platform" % sys_platform))
         self.assertTrue(_interpret('os.name == "%s"' % os_name))
+        self.assertTrue(_interpret(
+            'platform.version == "%s" and platform.machine == "%s"' %
+            (platform_version, platform_machine)))
 
         # stuff that need to raise a syntax error
         ops = ('os.name == os.name', 'os.name == 2', "'2' == '2'",

--
Repository URL: http://hg.python.org/distutils2


More information about the Python-checkins mailing list