From 07b78a8778c42d3ff71ce3b5dd50bb57ff5c9db5 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 9 Jan 2001 21:47:44 +0000 Subject: Test for xreadline. --- Lib/test/output/test_xreadline | 4 ++++ Lib/test/test_xreadline.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 Lib/test/output/test_xreadline create mode 100644 Lib/test/test_xreadline.py diff --git a/Lib/test/output/test_xreadline b/Lib/test/output/test_xreadline new file mode 100644 index 0000000..217bca0 --- /dev/null +++ b/Lib/test/output/test_xreadline @@ -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 index 0000000..84f7ba4 --- /dev/null +++ b/Lib/test/test_xreadline.py @@ -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 -- cgit v0.12