home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- import sys
- import unittest
- from ctypes import *
- structures = []
- byteswapped_structures = []
- if sys.byteorder == 'little':
- SwappedStructure = BigEndianStructure
- else:
- SwappedStructure = LittleEndianStructure
- for typ in [
- c_short,
- c_int,
- c_long,
- c_longlong,
- c_float,
- c_double,
- c_ushort,
- c_uint,
- c_ulong,
- c_ulonglong]:
-
- class X(Structure):
- _pack_ = 1
- _fields_ = [
- ('pad', c_byte),
- ('value', typ)]
-
-
- class Y(SwappedStructure):
- _pack_ = 1
- _fields_ = [
- ('pad', c_byte),
- ('value', typ)]
-
- structures.append(X)
- byteswapped_structures.append(Y)
-
-
- class TestStructures(unittest.TestCase):
-
- def test_native(self):
- for typ in structures:
- self.failUnlessEqual(typ.value.offset, 1)
- o = typ()
- o.value = 4
- self.failUnlessEqual(o.value, 4)
-
-
-
- def test_swapped(self):
- for typ in byteswapped_structures:
- self.failUnlessEqual(typ.value.offset, 1)
- o = typ()
- o.value = 4
- self.failUnlessEqual(o.value, 4)
-
-
-
- if __name__ == '__main__':
- unittest.main()
-
-