def test_bad_property_values(self): stream = io.StringIO() adapter = PollingStreamAdapter(stream, poll_period=1, max_read=32) with self.assertRaises(ValueError): adapter.poll_period = 0 with self.assertRaises(ValueError): adapter.max_read = -1
def test_constructor(self): adapter = PollingStreamAdapter(PiecewiseStream(u(''))) expecter = Expecter(adapter, input_callback=None, window=1024, close_adapter=False) self.assertEqual(1024, expecter.window) self.assertTrue(expecter.stream_adapter is adapter) self.assertEqual('', expecter.read(10)) self.assertFalse(expecter.close_adapter)
def test_poll(self): stream = PiecewiseStream(b'alpha beta gamma omega', max_chunk=5) with testfixtures.Replacer() as r: mock_time = testfixtures.test_time(delta=0.1, delta_type='seconds') r.replace('streamexpect.time.time', mock_time) adapter = PollingStreamAdapter(stream) for chunk in (b'alpha', b' beta', b' gamm', b'a ome'): self.assertEqual(chunk, adapter.poll(1.0))
def test_timeout(self): with testfixtures.Replacer() as r: mock_time = testfixtures.test_time(delta=0.1, delta_type='seconds') r.replace('streamexpect.time.time', mock_time) r.replace('streamexpect.time.sleep', lambda _: None) stream = EmptyStream() adapter = PollingStreamAdapter(stream) with self.assertRaises(ExpectTimeout): adapter.poll(1)
def test_bad_attributes(self): adapter = PollingStreamAdapter(PiecewiseStream(u('tau iota mu'))) with self.assertRaises(TypeError): Expecter(adapter, input_callback=None, window=None, close_adapter=False) with self.assertRaises(ValueError): Expecter(adapter, input_callback=None, window=-22, close_adapter=False) with self.assertRaises(NotImplementedError): Expecter(adapter, input_callback=None, window=1024, close_adapter=False).expect(None, 0) with self.assertRaises(TypeError): Expecter(TestExpecter.NoPollMethod(), input_callback=None, window=1024, close_adapter=False)
def test_constructor(self): stream = io.StringIO() adapter = PollingStreamAdapter(stream, poll_period=1, max_read=32) self.assertEqual(1, adapter.poll_period) self.assertEqual(32, adapter.max_read)