symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test_platform.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 import sys
       
     2 import os
       
     3 import unittest
       
     4 import platform
       
     5 import subprocess
       
     6 
       
     7 from test import test_support
       
     8 
       
     9 class PlatformTest(unittest.TestCase):
       
    10     def test_architecture(self):
       
    11         res = platform.architecture()
       
    12 
       
    13     if hasattr(os, "symlink"):
       
    14         def test_architecture_via_symlink(self): # issue3762
       
    15             def get(python):
       
    16                 cmd = [python, '-c',
       
    17                     'import platform; print platform.architecture()']
       
    18                 p = subprocess.Popen(cmd, stdout=subprocess.PIPE)
       
    19                 return p.communicate()
       
    20             real = os.path.realpath(sys.executable)
       
    21             link = os.path.abspath(test_support.TESTFN)
       
    22             os.symlink(real, link)
       
    23             try:
       
    24                 self.assertEqual(get(real), get(link))
       
    25             finally:
       
    26                 os.remove(link)
       
    27 
       
    28     def test_machine(self):
       
    29         res = platform.machine()
       
    30 
       
    31     def test_node(self):
       
    32         res = platform.node()
       
    33 
       
    34     def test_platform(self):
       
    35         for aliased in (False, True):
       
    36             for terse in (False, True):
       
    37                 res = platform.platform(aliased, terse)
       
    38 
       
    39     def test_processor(self):
       
    40         res = platform.processor()
       
    41 
       
    42     def test_python_build(self):
       
    43         res = platform.python_build()
       
    44 
       
    45     def test_python_compiler(self):
       
    46         res = platform.python_compiler()
       
    47 
       
    48     def test_version(self):
       
    49         res1 = platform.version()
       
    50         res2 = platform.version_tuple()
       
    51         self.assertEqual(res1, ".".join(res2))
       
    52 
       
    53     def test_release(self):
       
    54         res = platform.release()
       
    55 
       
    56     def test_system(self):
       
    57         res = platform.system()
       
    58 
       
    59     def test_version(self):
       
    60         res = platform.version()
       
    61 
       
    62     def test_system_alias(self):
       
    63         res = platform.system_alias(
       
    64             platform.system(),
       
    65             platform.release(),
       
    66             platform.version(),
       
    67         )
       
    68 
       
    69     def test_uname(self):
       
    70         res = platform.uname()
       
    71         self.assert_(any(res))
       
    72 
       
    73     def test_java_ver(self):
       
    74         res = platform.java_ver()
       
    75         if sys.platform == 'java':
       
    76             self.assert_(all(res))
       
    77 
       
    78     def test_win32_ver(self):
       
    79         res = platform.win32_ver()
       
    80 
       
    81     def test_mac_ver(self):
       
    82         res = platform.mac_ver()
       
    83 
       
    84         try:
       
    85             import gestalt
       
    86         except ImportError:
       
    87             have_toolbox_glue = False
       
    88         else:
       
    89             have_toolbox_glue = True
       
    90 
       
    91         if have_toolbox_glue and platform.uname()[0] == 'Darwin':
       
    92             # We're on a MacOSX system, check that
       
    93             # the right version information is returned
       
    94             fd = os.popen('sw_vers', 'r')
       
    95             real_ver = None
       
    96             for ln in fd:
       
    97                 if ln.startswith('ProductVersion:'):
       
    98                     real_ver = ln.strip().split()[-1]
       
    99                     break
       
   100             fd.close()
       
   101             self.failIf(real_ver is None)
       
   102             self.assertEquals(res[0], real_ver)
       
   103 
       
   104             # res[1] claims to contain
       
   105             # (version, dev_stage, non_release_version)
       
   106             # That information is no longer available
       
   107             self.assertEquals(res[1], ('', '', ''))
       
   108 
       
   109             if sys.byteorder == 'little':
       
   110                 self.assertEquals(res[2], 'i386')
       
   111             else:
       
   112                 self.assertEquals(res[2], 'PowerPC')
       
   113 
       
   114     def test_dist(self):
       
   115         res = platform.dist()
       
   116 
       
   117     def test_libc_ver(self):
       
   118         import os
       
   119         if os.path.isdir(sys.executable) and \
       
   120            os.path.exists(sys.executable+'.exe'):
       
   121             # Cygwin horror
       
   122             executable = executable + '.exe'
       
   123         res = platform.libc_ver(sys.executable)
       
   124 
       
   125 def test_main():
       
   126     test_support.run_unittest(
       
   127         PlatformTest
       
   128     )
       
   129 
       
   130 if __name__ == '__main__':
       
   131     test_main()