|
|
|
@ -147,8 +147,11 @@ class TestXmap(unittest.TestCase):
|
|
|
|
|
|
|
|
|
|
class TestPipeReader(unittest.TestCase):
|
|
|
|
|
def test_pipe_reader(self):
|
|
|
|
|
def simple_parser(lines):
|
|
|
|
|
return lines
|
|
|
|
|
def example_reader(myfiles):
|
|
|
|
|
for f in myfiles:
|
|
|
|
|
pr = paddle.v2.reader.PipeReader("cat %s" % f, bufsize=128)
|
|
|
|
|
for l in pr.get_line():
|
|
|
|
|
yield l
|
|
|
|
|
|
|
|
|
|
import tempfile
|
|
|
|
|
|
|
|
|
@ -159,17 +162,12 @@ class TestPipeReader(unittest.TestCase):
|
|
|
|
|
for r in records:
|
|
|
|
|
f.write('%s\n' % r)
|
|
|
|
|
|
|
|
|
|
cmd = "cat %s" % temp.name
|
|
|
|
|
reader = paddle.v2.reader.pipe_reader(
|
|
|
|
|
cmd, simple_parser, bufsize=128)
|
|
|
|
|
for i in xrange(4):
|
|
|
|
|
result = []
|
|
|
|
|
for r in reader():
|
|
|
|
|
result.append(r)
|
|
|
|
|
|
|
|
|
|
for idx, e in enumerate(records):
|
|
|
|
|
print e, result[idx]
|
|
|
|
|
self.assertEqual(e, result[idx])
|
|
|
|
|
result = []
|
|
|
|
|
for r in example_reader([temp.name]):
|
|
|
|
|
result.append(r)
|
|
|
|
|
|
|
|
|
|
for idx, e in enumerate(records):
|
|
|
|
|
self.assertEqual(e, result[idx])
|
|
|
|
|
finally:
|
|
|
|
|
# delete the temporary file
|
|
|
|
|
temp.close()
|
|
|
|
|