summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2005-02-24 20:22:10 (GMT)
committerMartin v. Löwis <martin@v.loewis.de>2005-02-24 20:22:10 (GMT)
commitc2a0ac20b7ba3c740f21607c4c8bc706f5d7b7c5 (patch)
tree589f8ff427b01e7e1685f8515cdd0c83503d2d0e /Lib
parentbc2c21ea521cf6ec2a8cd1fd3229226c157a5100 (diff)
downloadcpython-c2a0ac20b7ba3c740f21607c4c8bc706f5d7b7c5.zip
cpython-c2a0ac20b7ba3c740f21607c4c8bc706f5d7b7c5.tar.gz
cpython-c2a0ac20b7ba3c740f21607c4c8bc706f5d7b7c5.tar.bz2
Patch #1049151: adding bool support to xdrlib.py.
Also add xdrlib._test into the test suite.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/output/test_xdrlib19
-rw-r--r--Lib/test/test_sundry.py1
-rw-r--r--Lib/test/test_xdrlib.py4
-rw-r--r--Lib/xdrlib.py12
4 files changed, 30 insertions, 6 deletions
diff --git a/Lib/test/output/test_xdrlib b/Lib/test/output/test_xdrlib
new file mode 100644
index 0000000..d86caa9
--- /dev/null
+++ b/Lib/test/output/test_xdrlib
@@ -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']
diff --git a/Lib/test/test_sundry.py b/Lib/test/test_sundry.py
index be1a1e7..394d966 100644
--- a/Lib/test/test_sundry.py
+++ b/Lib/test/test_sundry.py
@@ -93,5 +93,4 @@ import urllib2
#import user
import webbrowser
import whichdb
-import xdrlib
import xml
diff --git a/Lib/test/test_xdrlib.py b/Lib/test/test_xdrlib.py
new file mode 100644
index 0000000..afa6afe
--- /dev/null
+++ b/Lib/test/test_xdrlib.py
@@ -0,0 +1,4 @@
+import xdrlib
+
+xdrlib._test()
+
diff --git a/Lib/xdrlib.py b/Lib/xdrlib.py
index 1123090..d9d2120 100644
--- a/Lib/xdrlib.py
+++ b/Lib/xdrlib.py
@@ -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),