]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
#4157 move two test functions out of platform.py.
authorAmaury Forgeot d'Arc <amauryfa@gmail.com>
Tue, 21 Oct 2008 22:01:38 +0000 (22:01 +0000)
committerAmaury Forgeot d'Arc <amauryfa@gmail.com>
Tue, 21 Oct 2008 22:01:38 +0000 (22:01 +0000)
Turn them into unit tests, and correct an obvious typo:
    (("a", "b") ("c", "d") ("e", "f"))
compiles even with the missing commas, but does not execute very well...

Lib/platform.py
Lib/test/test_platform.py

index 29d55ecf7b151ba5307ce15afa32516cdbe23d54..906d918e0ea5fd11ed0862ec3c913b7c71a649b5 100755 (executable)
@@ -268,24 +268,6 @@ def _parse_release_file(firstline):
             id = ''
     return '', version, id
 
-def _test_parse_release_file():
-
-    for input, output in (
-        # Examples of release file contents:
-        ('SuSE Linux 9.3 (x86-64)', ('SuSE Linux ', '9.3', 'x86-64'))
-        ('SUSE LINUX 10.1 (X86-64)', ('SUSE LINUX ', '10.1', 'X86-64'))
-        ('SUSE LINUX 10.1 (i586)', ('SUSE LINUX ', '10.1', 'i586'))
-        ('Fedora Core release 5 (Bordeaux)', ('Fedora Core', '5', 'Bordeaux'))
-        ('Red Hat Linux release 8.0 (Psyche)', ('Red Hat Linux', '8.0', 'Psyche'))
-        ('Red Hat Linux release 9 (Shrike)', ('Red Hat Linux', '9', 'Shrike'))
-        ('Red Hat Enterprise Linux release 4 (Nahant)', ('Red Hat Enterprise Linux', '4', 'Nahant'))
-        ('CentOS release 4', ('CentOS', '4', None))
-        ('Rocks release 4.2.1 (Cydonia)', ('Rocks', '4.2.1', 'Cydonia'))
-        ):
-        parsed = _parse_release_file(input)
-        if parsed != output:
-            print (input, parsed)
-
 def linux_distribution(distname='', version='', id='',
 
                        supported_dists=_supported_dists,
@@ -1381,21 +1363,6 @@ def _sys_version(sys_version=None):
     _sys_version_cache[sys_version] = result
     return result
 
-def _test_sys_version():
-
-    _sys_version_cache.clear()
-    for input, output in (
-        ('2.4.3 (#1, Jun 21 2006, 13:54:21) \n[GCC 3.3.4 (pre 3.3.5 20040809)]',
-         ('CPython', '2.4.3', '', '', '1', 'Jun 21 2006 13:54:21', 'GCC 3.3.4 (pre 3.3.5 20040809)')),
-        ('IronPython 1.0.60816 on .NET 2.0.50727.42',
-         ('IronPython', '1.0.60816', '', '', '', '', '.NET 2.0.50727.42')),
-        ('IronPython 1.0 (1.0.61005.1977) on .NET 2.0.50727.42',
-         ('IronPython', '1.0.0', '', '', '', '', '.NET 2.0.50727.42')),
-        ):
-        parsed = _sys_version(input)
-        if parsed != output:
-            print (input, parsed)
-
 def python_implementation():
 
     """ Returns a string identifying the Python implementation.
index 2fa13096eea03a3e9e4135a52528449e1f926e15..e6a1dea1219b924ea48cc79308a2ad90ec762b0e 100644 (file)
@@ -122,6 +122,40 @@ class PlatformTest(unittest.TestCase):
             executable = executable + '.exe'
         res = platform.libc_ver(sys.executable)
 
+    def test_parse_release_file(self):
+
+        for input, output in (
+            # Examples of release file contents:
+            ('SuSE Linux 9.3 (x86-64)', ('SuSE Linux ', '9.3', 'x86-64')),
+            ('SUSE LINUX 10.1 (X86-64)', ('SUSE LINUX ', '10.1', 'X86-64')),
+            ('SUSE LINUX 10.1 (i586)', ('SUSE LINUX ', '10.1', 'i586')),
+            ('Fedora Core release 5 (Bordeaux)', ('Fedora Core', '5', 'Bordeaux')),
+            ('Red Hat Linux release 8.0 (Psyche)', ('Red Hat Linux', '8.0', 'Psyche')),
+            ('Red Hat Linux release 9 (Shrike)', ('Red Hat Linux', '9', 'Shrike')),
+            ('Red Hat Enterprise Linux release 4 (Nahant)', ('Red Hat Enterprise Linux', '4', 'Nahant')),
+            ('CentOS release 4', ('CentOS', '4', None)),
+            ('Rocks release 4.2.1 (Cydonia)', ('Rocks', '4.2.1', 'Cydonia')),
+            ):
+            self.assertEqual(platform._parse_release_file(input), output)
+
+    def test_sys_version(self):
+
+        platform._sys_version_cache.clear()
+        for input, output in (
+            ('2.4.3 (#1, Jun 21 2006, 13:54:21) \n[GCC 3.3.4 (pre 3.3.5 20040809)]',
+             ('CPython', '2.4.3', '', '', '1', 'Jun 21 2006 13:54:21', 'GCC 3.3.4 (pre 3.3.5 20040809)')),
+            ('IronPython 1.0.60816 on .NET 2.0.50727.42',
+             ('IronPython', '1.0.60816', '', '', '', '', '.NET 2.0.50727.42')),
+            ('IronPython 1.0 (1.0.61005.1977) on .NET 2.0.50727.42',
+             ('IronPython', '1.0.0', '', '', '', '', '.NET 2.0.50727.42')),
+            ):
+            # branch and revision are not "parsed", but fetched
+            # from sys.subversion.  Ignore them
+            (name, version, branch, revision, buildno, builddate, compiler) \
+                   = platform._sys_version(input)
+            self.assertEqual(
+                (name, version, '', '', buildno, builddate, compiler), output)
+
 def test_main():
     test_support.run_unittest(
         PlatformTest