diff options
Diffstat (limited to 'Lib')
-rwxr-xr-x | Lib/platform.py | 4 | ||||
-rw-r--r-- | Lib/test/test_platform.py | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/Lib/platform.py b/Lib/platform.py index b9bc303..de81b63 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -1392,7 +1392,9 @@ def _sys_version(sys_version=None): name = 'CPython' builddate = builddate + ' ' + buildtime - if hasattr(sys, 'subversion'): + if hasattr(sys, '_mercurial'): + _, branch, revision = sys._mercurial + elif hasattr(sys, 'subversion'): # sys.subversion was added in Python 2.5 _, branch, revision = sys.subversion else: diff --git a/Lib/test/test_platform.py b/Lib/test/test_platform.py index 7dd7eef..ec134a1 100644 --- a/Lib/test/test_platform.py +++ b/Lib/test/test_platform.py @@ -57,11 +57,13 @@ class PlatformTest(unittest.TestCase): def setUp(self): self.save_version = sys.version self.save_subversion = sys.subversion + self.save_mercurial = sys._mercurial self.save_platform = sys.platform def tearDown(self): sys.version = self.save_version sys.subversion = self.save_subversion + sys._mercurial = self.save_mercurial sys.platform = self.save_platform def test_sys_version(self): @@ -109,10 +111,12 @@ class PlatformTest(unittest.TestCase): sys_versions.items(): sys.version = version_tag if subversion is None: + if hasattr(sys, "_mercurial"): + del sys._mercurial if hasattr(sys, "subversion"): del sys.subversion else: - sys.subversion = subversion + sys._mercurial = subversion if sys_platform is not None: sys.platform = sys_platform self.assertEqual(platform.python_implementation(), info[0]) |