From 5eab9f4b01d586420546448fd4838315062fdbad Mon Sep 17 00:00:00 2001 From: dluyer <53582923+dluyer@users.noreply.github.com> Date: Fri, 10 Jan 2020 15:20:34 -0800 Subject: Add test for increasing searchwindowsize --- tests/test_expect.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/test_expect.py b/tests/test_expect.py index e4d023f..dc768a0 100755 --- a/tests/test_expect.py +++ b/tests/test_expect.py @@ -452,21 +452,40 @@ class ExpectTestCase (PexpectTestCase.PexpectTestCase): self._before_after(p) def test_before_after_timeout(self): + '''Tests that before is not truncated after a timeout, a bug in 4.7.''' child = pexpect.spawn('cat', echo=False) child.sendline('BEGIN') for i in range(100): child.sendline('foo' * 100) - e = child.expect(['xyzzy', pexpect.TIMEOUT], + e = child.expect([b'xyzzy', pexpect.TIMEOUT], searchwindowsize=10, timeout=0.001) self.assertEqual(e, 1) child.sendline('xyzzy') - e = child.expect(['xyzzy', pexpect.TIMEOUT], + e = child.expect([b'xyzzy', pexpect.TIMEOUT], searchwindowsize=10, timeout=30) self.assertEqual(e, 0) self.assertEqual(child.before[0:5], b'BEGIN') child.sendeof() child.expect(pexpect.EOF) + def test_increasing_searchwindowsize(self): + '''Tests that the search window can be expanded, a bug in 4.7.''' + child = pexpect.spawn('cat', echo=False) + child.sendline('BEGIN') + for i in range(100): + child.sendline('foo' * 100) + e = child.expect([b'xyzzy', pexpect.TIMEOUT], + searchwindowsize=10, timeout=0.5) + self.assertEqual(e, 1) + e = child.expect([b'BEGIN', pexpect.TIMEOUT], + searchwindowsize=10, timeout=0.5) + self.assertEqual(e, 1) + e = child.expect([b'BEGIN', pexpect.TIMEOUT], + searchwindowsize=40000, timeout=30.0) + self.assertEqual(e, 0) + child.sendeof() + child.expect(pexpect.EOF) + def _ordering(self, p): p.timeout = 20 p.expect(b'>>> ') -- cgit v1.2.1