def test_http_request_to_from_json(self):

    def _postproc(*kwargs):
      pass

    http = httplib2.Http()
    media_upload = MediaFileUpload(
        datafile('small.png'), chunksize=500, resumable=True)
    req = HttpRequest(
        http,
        _postproc,
        'http://example.com',
        method='POST',
        body='{}',
        headers={'content-type': 'multipart/related; boundary="---flubber"'},
        methodId='foo',
        resumable=media_upload)

    json = req.to_json()
    new_req = HttpRequest.from_json(json, http, _postproc)

    self.assertEqual({'content-type':
                       'multipart/related; boundary="---flubber"'},
                       new_req.headers)
    self.assertEqual('http://example.com', new_req.uri)
    self.assertEqual('{}', new_req.body)
    self.assertEqual(http, new_req.http)
    self.assertEqual(media_upload.to_json(), new_req.resumable.to_json())

    self.assertEqual(random.random, new_req._rand)
    self.assertEqual(time.sleep, new_req._sleep)
Esempio n. 2
0
    def test_http_request_to_from_json(self):
        def _postproc(*kwargs):
            pass

        http = httplib2.Http()
        media_upload = MediaFileUpload(datafile('small.png'),
                                       chunksize=500,
                                       resumable=True)
        req = HttpRequest(http,
                          _postproc,
                          'http://example.com',
                          method='POST',
                          body='{}',
                          headers={
                              'content-type':
                              'multipart/related; boundary="---flubber"'
                          },
                          methodId='foo',
                          resumable=media_upload)

        json = req.to_json()
        new_req = HttpRequest.from_json(json, http, _postproc)

        self.assertEqual(
            {'content-type': 'multipart/related; boundary="---flubber"'},
            new_req.headers)
        self.assertEqual('http://example.com', new_req.uri)
        self.assertEqual('{}', new_req.body)
        self.assertEqual(http, new_req.http)
        self.assertEqual(media_upload.to_json(), new_req.resumable.to_json())

        self.assertEqual(random.random, new_req._rand)
        self.assertEqual(time.sleep, new_req._sleep)
Esempio n. 3
0
def logAndExecute(request: HttpRequest):
    """Executes the given request while adding debug logs for the request and response."""
    logging.debug('Request: {}'.format(request.to_json()))
    response = request.execute()
    logging.debug('Response: {}'.format(response))
    return response