]> granicus.if.org Git - python/commitdiff
Test for xreadline.
authorGuido van Rossum <guido@python.org>
Tue, 9 Jan 2001 21:47:44 +0000 (21:47 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 9 Jan 2001 21:47:44 +0000 (21:47 +0000)
Lib/test/output/test_xreadline [new file with mode: 0644]
Lib/test/test_xreadline.py [new file with mode: 0644]

diff --git a/Lib/test/output/test_xreadline b/Lib/test/output/test_xreadline
new file mode 100644 (file)
index 0000000..217bca0
--- /dev/null
@@ -0,0 +1,4 @@
+test_xrl
+AttributeError
+TypeError
+RuntimeError xreadlines object accessed out of order
diff --git a/Lib/test/test_xreadline.py b/Lib/test/test_xreadline.py
new file mode 100644 (file)
index 0000000..84f7ba4
--- /dev/null
@@ -0,0 +1,42 @@
+from test_support import verbose
+
+class XReader:
+       def __init__(self):
+               self.count = 5
+
+       def readlines(self, sizehint = None):
+               self.count = self.count - 1
+               return map(lambda x: "%d\n" % x, range(self.count))
+
+class Null: pass
+
+import xreadlines
+
+
+lineno = 0
+
+try:
+       xreadlines.xreadlines(Null())[0]
+except AttributeError, detail:
+       print "AttributeError"
+else:
+       print "Did not throw attribute error"
+
+try:
+       xreadlines.xreadlines(XReader)[0]
+except TypeError, detail:
+       print "TypeError"
+else:
+       print "Did not throw type error"
+
+try:
+       xreadlines.xreadlines(XReader())[1]
+except RuntimeError, detail:
+       print "RuntimeError", detail
+else:
+       print "Did not throw runtime error"
+
+xresult = ['0\n', '1\n', '2\n', '3\n', '0\n', '1\n', '2\n', '0\n', '1\n', '0\n']
+for line in xreadlines.xreadlines(XReader()):
+       if line != xresult[lineno]: print "line %d differs" % lineno
+       lineno = lineno + 1