From 07b78a8778c42d3ff71ce3b5dd50bb57ff5c9db5 Mon Sep 17 00:00:00 2001
From: Guido van Rossum <guido@python.org>
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

