summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pexpect/async.py4
-rw-r--r--tests/test_async.py8
2 files changed, 9 insertions, 3 deletions
diff --git a/pexpect/async.py b/pexpect/async.py
index ad75994..a798457 100644
--- a/pexpect/async.py
+++ b/pexpect/async.py
@@ -41,11 +41,11 @@ class PatternWaiter(asyncio.Protocol):
spawn._log(s, 'read')
if self.fut.done():
- spawn.buffer += data
+ spawn.buffer += s
return
try:
- index = self.expecter.new_data(data)
+ index = self.expecter.new_data(s)
if index is not None:
# Found a match
self.found(index)
diff --git a/tests/test_async.py b/tests/test_async.py
index ce75572..b918da6 100644
--- a/tests/test_async.py
+++ b/tests/test_async.py
@@ -43,9 +43,15 @@ class AsyncTests(PexpectTestCase):
coro = p.expect('Blah', async=True)
with self.assertRaises(pexpect.EOF):
run(coro)
-
+
def test_expect_exact(self):
p = pexpect.spawn('%s list100.py' % sys.executable)
assert run(p.expect_exact(b'5', async=True)) == 0
assert run(p.expect_exact(['wpeok', b'11'], async=True)) == 1
assert run(p.expect_exact([b'foo', pexpect.EOF], async=True)) == 1
+
+ def test_async_utf8(self):
+ p = pexpect.spawn('%s list100.py' % sys.executable, encoding='utf8')
+ assert run(p.expect_exact(u'5', async=True)) == 0
+ assert run(p.expect_exact([u'wpeok', u'11'], async=True)) == 1
+ assert run(p.expect_exact([u'foo', pexpect.EOF], async=True)) == 1