def test_getresponse__real_response(self): client = Mock(name='client') client.add_request = passthrough(name='client.add_request') callback = PromiseMock(name='callback') x = AsyncHTTPConnection('aws.vandelay.com', http_client=client) request = x.getresponse(callback) x.http_client.add_request.assert_called_with(request) buf = StringIO() buf.write('The quick brown fox jumps') headers = http.Headers({'X-Foo': 'Hello', 'X-Bar': 'World'}) response = http.Response(request, 200, headers, buf) request.on_ready(response) self.assertTrue(callback.called) wresponse = callback.call_args[0][0] self.assertEqual(wresponse.read(), 'The quick brown fox jumps') self.assertEqual(wresponse.status, 200) self.assertEqual(wresponse.getheader('X-Foo'), 'Hello') self.assertDictEqual(dict(wresponse.getheaders()), headers) self.assertTrue(wresponse.msg) self.assertTrue(wresponse.msg) self.assertTrue(repr(wresponse))
def _inner(*args, **kwargs): sys.stdout = StringIO() sys.stderr = StringIO() try: return fun(*args, **dict(kwargs, stdout=sys.stdout, stderr=sys.stderr)) finally: sys.stdout = sys.__stdout__ sys.stderr = sys.__stderr__