Beispiel #1
0
    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 = WhateverIO()
        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)
        callback.assert_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))
Beispiel #2
0
    def test_then(self):
        callback = PromiseMock(name='callback')
        x = http.Request('http://foo')
        x.then(callback)

        x.on_ready(1)
        callback.assert_called_with(1)
Beispiel #3
0
 def test_make_request(self, _):
     x = AsyncAWSAuthConnection('aws.vandelay.com',
                                http_client=Mock(name='client'))
     Conn = x.get_http_connection = Mock(name='get_http_connection')
     callback = PromiseMock(name='callback')
     ret = x.make_request('GET', '/foo', callback=callback)
     self.assertIs(ret, callback)
     Conn.return_value.request.assert_called()
     Conn.return_value.getresponse.assert_called_with(callback=callback, )
Beispiel #4
0
 def test_make_request__no_action(self, _):
     self.x._mexe = Mock(name='_mexe')
     self.x.get_http_connection = Mock(name='get_http_connection')
     callback = PromiseMock(name='callback')
     self.x.make_request(
         None,
         {'foo': 1},
         '/',
         'GET',
         callback=callback,
     )
     self.x._mexe.assert_called()
     request = self.x._mexe.call_args[0][0]
     self.assertNotIn('Action', request.params)
     self.assertEqual(request.params['Version'], self.x.APIVersion)
Beispiel #5
0
 def test_mexe__with_sender(self, _):
     x = AsyncAWSAuthConnection('aws.vandelay.com',
                                http_client=Mock(name='client'))
     Conn = x.get_http_connection = Mock(name='get_http_connection')
     request = x.build_base_http_request('GET', 'foo', '/auth')
     sender = Mock(name='sender')
     callback = PromiseMock(name='callback')
     x._mexe(request, sender=sender, callback=callback)
     sender.assert_called_with(
         Conn.return_value,
         request.method,
         request.path,
         request.body,
         request.headers,
         callback,
     )
Beispiel #6
0
    def test_make_request(self, _):
        _mexe, self.x._mexe = self.x._mexe, Mock(name='_mexe')
        Conn = self.x.get_http_connection = Mock(name='get_http_connection')
        callback = PromiseMock(name='callback')
        self.x.make_request(
            'action',
            {'foo': 1},
            '/',
            'GET',
            callback=callback,
        )
        self.x._mexe.assert_called()
        request = self.x._mexe.call_args[0][0]
        self.assertEqual(request.params['Action'], 'action')
        self.assertEqual(request.params['Version'], self.x.APIVersion)

        ret = _mexe(request, callback=callback)
        self.assertIs(ret, callback)
        Conn.return_value.request.assert_called()
        Conn.return_value.getresponse.assert_called_with(callback=callback, )
Beispiel #7
0
    def test_mexe(self, _):
        x = AsyncAWSAuthConnection('aws.vandelay.com',
                                   http_client=Mock(name='client'))
        Conn = x.get_http_connection = Mock(name='get_http_connection')
        request = x.build_base_http_request('GET', 'foo', '/auth')
        callback = PromiseMock(name='callback')
        x._mexe(request, callback=callback)
        Conn.return_value.request.assert_called_with(
            request.method,
            request.path,
            request.body,
            request.headers,
        )
        Conn.return_value.getresponse.assert_called_with(callback=callback, )

        no_callback_ret = x._mexe(request)
        self.assertIsInstance(
            no_callback_ret,
            Thenable,
            '_mexe always returns promise',
        )
Beispiel #8
0
 def setup(self):
     self.x = AsyncSQSConnection('ak', 'sk')
     self.x.get_object = Mock(name='X.get_object')
     self.x.get_status = Mock(name='X.get_status')
     self.x.get_list = Mock(nanme='X.get_list')
     self.callback = PromiseMock(name='callback')
Beispiel #9
0
 def setup(self):
     self.queue = Mock(name='queue')
     self.callback = PromiseMock(name='callback')
     self.x = AsyncMessage(self.queue, 'body')
     self.x.receipt_handle = uuid()
Beispiel #10
0
 def mock_make_request(self):
     self.x.make_request = Mock(name='make_request')
     callback = PromiseMock(name='callback')
     yield callback
 def setup(self):
     self.conn = Mock(name='connection')
     self.x = AsyncQueue(self.conn, '/url')
     self.callback = PromiseMock(name='callback')