symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test_aepack.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 # Copyright (C) 2003 Python Software Foundation
       
     2 
       
     3 import unittest
       
     4 import aepack
       
     5 import aetypes
       
     6 import os
       
     7 from test import test_support
       
     8 
       
     9 class TestAepack(unittest.TestCase):
       
    10     OBJECTS = [
       
    11         aetypes.Enum('enum'),
       
    12         aetypes.Type('type'),
       
    13         aetypes.Keyword('kwrd'),
       
    14         aetypes.Range(1, 10),
       
    15         aetypes.Comparison(1, '<   ', 10),
       
    16         aetypes.Logical('not ', 1),
       
    17         aetypes.IntlText(0, 0, 'international text'),
       
    18         aetypes.IntlWritingCode(0,0),
       
    19         aetypes.QDPoint(50,100),
       
    20         aetypes.QDRectangle(50,100,150,200),
       
    21         aetypes.RGBColor(0x7000, 0x6000, 0x5000),
       
    22         aetypes.Unknown('xxxx', 'unknown type data'),
       
    23         aetypes.Character(1),
       
    24         aetypes.Character(2, aetypes.Line(2)),
       
    25     ]
       
    26 
       
    27     def test_roundtrip_string(self):
       
    28         o = 'a string'
       
    29         packed = aepack.pack(o)
       
    30         unpacked = aepack.unpack(packed)
       
    31         self.assertEqual(o, unpacked)
       
    32 
       
    33     def test_roundtrip_int(self):
       
    34         o = 12
       
    35         packed = aepack.pack(o)
       
    36         unpacked = aepack.unpack(packed)
       
    37         self.assertEqual(o, unpacked)
       
    38 
       
    39     def test_roundtrip_float(self):
       
    40         o = 12.1
       
    41         packed = aepack.pack(o)
       
    42         unpacked = aepack.unpack(packed)
       
    43         self.assertEqual(o, unpacked)
       
    44 
       
    45     def test_roundtrip_None(self):
       
    46         o = None
       
    47         packed = aepack.pack(o)
       
    48         unpacked = aepack.unpack(packed)
       
    49         self.assertEqual(o, unpacked)
       
    50 
       
    51     def test_roundtrip_aeobjects(self):
       
    52         for o in self.OBJECTS:
       
    53             packed = aepack.pack(o)
       
    54             unpacked = aepack.unpack(packed)
       
    55             self.assertEqual(repr(o), repr(unpacked))
       
    56 
       
    57     def test_roundtrip_FSSpec(self):
       
    58         try:
       
    59             import Carbon.File
       
    60         except:
       
    61             return
       
    62         o = Carbon.File.FSSpec(os.curdir)
       
    63         packed = aepack.pack(o)
       
    64         unpacked = aepack.unpack(packed)
       
    65         self.assertEqual(o.as_pathname(), unpacked.as_pathname())
       
    66 
       
    67     def test_roundtrip_Alias(self):
       
    68         try:
       
    69             import Carbon.File
       
    70         except:
       
    71             return
       
    72         o = Carbon.File.FSSpec(os.curdir).NewAliasMinimal()
       
    73         packed = aepack.pack(o)
       
    74         unpacked = aepack.unpack(packed)
       
    75         self.assertEqual(o.FSResolveAlias(None)[0].as_pathname(),
       
    76             unpacked.FSResolveAlias(None)[0].as_pathname())
       
    77 
       
    78 
       
    79 def test_main():
       
    80     test_support.run_unittest(TestAepack)
       
    81 
       
    82 
       
    83 if __name__ == '__main__':
       
    84     test_main()