Patch #1049151: adding bool support to xdrlib.py.

Also add xdrlib._test into the test suite.
This commit is contained in:
Martin v. Löwis 2005-02-24 20:22:10 +00:00
parent bc2c21ea52
commit c2a0ac20b7
5 changed files with 32 additions and 6 deletions

View file

@ -157,7 +157,9 @@ class Unpacker:
return struct.unpack('>l', data)[0]
unpack_enum = unpack_int
unpack_bool = unpack_int
def unpack_bool(self):
return bool(self.unpack_int())
def unpack_uhyper(self):
hi = self.unpack_uint()
@ -232,8 +234,8 @@ def _test():
p = Packer()
packtest = [
(p.pack_uint, (9,)),
(p.pack_bool, (None,)),
(p.pack_bool, ('hello',)),
(p.pack_bool, (True,)),
(p.pack_bool, (False,)),
(p.pack_uhyper, (45L,)),
(p.pack_float, (1.9,)),
(p.pack_double, (1.9,)),
@ -257,8 +259,8 @@ def _test():
up = Unpacker(data)
unpacktest = [
(up.unpack_uint, (), lambda x: x == 9),
(up.unpack_bool, (), lambda x: not x),
(up.unpack_bool, (), lambda x: x),
(up.unpack_bool, (), lambda x: x is True),
(up.unpack_bool, (), lambda x: x is False),
(up.unpack_uhyper, (), lambda x: x == 45L),
(up.unpack_float, (), lambda x: 1.89 < x < 1.91),
(up.unpack_double, (), lambda x: 1.89 < x < 1.91),