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

@ -0,0 +1,19 @@
test_xdrlib
pack test 0 succeeded
pack test 1 succeeded
pack test 2 succeeded
pack test 3 succeeded
pack test 4 succeeded
pack test 5 succeeded
pack test 6 succeeded
pack test 7 succeeded
pack test 8 succeeded
unpack test 0 succeeded : 9
unpack test 1 succeeded : True
unpack test 2 succeeded : False
unpack test 3 succeeded : 45
unpack test 4 succeeded : 1.89999997616
unpack test 5 succeeded : 1.9
unpack test 6 succeeded : hello world
unpack test 7 succeeded : [0, 1, 2, 3, 4]
unpack test 8 succeeded : ['what', 'is', 'hapnin', 'doctor']

View File

@ -93,5 +93,4 @@ import urllib2
#import user
import webbrowser
import whichdb
import xdrlib
import xml

4
Lib/test/test_xdrlib.py Normal file
View File

@ -0,0 +1,4 @@
import xdrlib
xdrlib._test()

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),

View File

@ -54,6 +54,8 @@ Extension Modules
Library
-------
- Patch #1049151: xdrlib now unpacks booleans as True or False.
- Fixed bug in a NameError bug in cookielib. Patch #1116583.
- Applied a security fix to SimpleXMLRPCserver (PSF-2005-001). This