one more test fix for systems without select.poll. tested by deleting

select.poll before running.  works both ways (finally).  this should
fix the windows build.
This commit is contained in:
Gregory P. Smith 2012-07-16 15:49:19 -07:00
commit daa4c6b2e6
1 changed files with 6 additions and 3 deletions

View File

@ -170,13 +170,14 @@ class ExpectAndReadTestCase(TestCase):
def setUp(self):
self.old_select = select.select
select.select = mock_select
self.old_poll = False
if hasattr(select, 'poll'):
self.old_poll = select.poll
select.poll = MockPoller
MockPoller.test_case = self
def tearDown(self):
if hasattr(select, 'poll'):
if self.old_poll:
MockPoller.test_case = None
select.poll = self.old_poll
select.select = self.old_select
@ -211,7 +212,8 @@ class ReadTests(ExpectAndReadTestCase):
"""Use select.select() to implement telnet.read_until()."""
want = [b'x' * 10, b'match', b'y' * 10]
telnet = test_telnet(want, use_poll=False)
select.poll = lambda *_: self.fail('unexpected poll() call.')
if self.old_poll:
select.poll = lambda *_: self.fail('unexpected poll() call.')
data = telnet.read_until(b'match')
self.assertEqual(data, b''.join(want[:-1]))
@ -429,7 +431,8 @@ class ExpectTests(ExpectAndReadTestCase):
"""Use select.select() to implement telnet.expect()."""
want = [b'x' * 10, b'match', b'y' * 10]
telnet = test_telnet(want, use_poll=False)
select.poll = lambda *_: self.fail('unexpected poll() call.')
if self.old_poll:
select.poll = lambda *_: self.fail('unexpected poll() call.')
(_,_,data) = telnet.expect([b'match'])
self.assertEqual(data, b''.join(want[:-1]))