示例#1
0
    def test_should_raise_value_error(self):
        HTTPretty.register_uri(HTTPretty.PATCH, self.url,
                               body=self.json_payload,
                               content_type="application/json")

        with self.assertRaises(ValueError):
            http_request(self.url, payload=self.json_payload,
                         http_verb='PATCH')
示例#2
0
def on_get(remaining_url):
    # reject GET requests for search until token added to GET in Kibana
    if "_search" in remaining_url.lower():
        return "Unauthorized", 401

    try:
        response = http_request(
            url=_build_url(remaining_url, None), http_verb="GET", request_timeout=_CONFIG.elasticsearch.timeout
        )
        return response.content
    except Exception as ex:
        _LOG.exception(ex)
        return "", 500
示例#3
0
def on_get(remaining_url):
    #reject GET requests for search until token added to GET in Kibana
    if "_search" in remaining_url.lower():
        return 'Unauthorized', 401

    try:
        response = http_request(url=_build_url(remaining_url, None),
                                http_verb='GET',
                                request_timeout=_CONFIG.elasticsearch.timeout)
        return response.content
    except Exception as ex:
        _LOG.exception(ex)
        return '', 500
示例#4
0
    def test_should_return_http_200_on_all_http_verbs(self):
        httpretty_verbs = {
            'POST': HTTPretty.POST,
            'GET': HTTPretty.GET
        }

        for http_verb in HTTP_VERBS:
            HTTPretty.register_uri(httpretty_verbs[http_verb],
                                   self.url,
                                   body=self.json_payload,
                                   content_type="application/json",
                                   status=200)
            self.assertTrue(http_request(self.url,
                                         payload=self.json_payload,
                                         http_verb=http_verb), 200)
示例#5
0
def on_post(remaining_url):
    try:
        token = request.headers.get(X_AUTH_TOKEN)
        tenant_name = request.headers.get(X_TENANT_NAME)

        if token is None or tenant_name is None:
            return "Unauthorized", 401

        token_is_valid, tenant_id = _token_is_valid(token, tenant_name)

        if token_is_valid:
            response = http_request(
                url=_build_url(remaining_url, tenant_id),
                payload=request.data,
                http_verb='POST',
                request_timeout=_CONFIG.elasticsearch.timeout)
            return response.content
    except Exception as ex:
        _LOG.exception(ex)
        return '', 500

    return 'Unauthorized', 401
示例#6
0
def on_post(remaining_url):
    try:
        token = request.headers.get(X_AUTH_TOKEN)
        tenant_name = request.headers.get(X_TENANT_NAME)

        if token is None or tenant_name is None:
            return "Unauthorized", 401

        token_is_valid, tenant_id = _token_is_valid(token, tenant_name)

        if token_is_valid:
            response = http_request(
                url=_build_url(remaining_url, tenant_id),
                payload=request.data,
                http_verb="POST",
                request_timeout=_CONFIG.elasticsearch.timeout,
            )
            return response.content
    except Exception as ex:
        _LOG.exception(ex)
        return "", 500

    return "Unauthorized", 401
示例#7
0
 def test_should_cause_a_request_exception(self):
     with patch.object(requests, 'get') as mock_method:
         with self.assertRaises(requests.RequestException):
             mock_method.side_effect = requests.RequestException
             http_request(self.url, payload=self.json_payload)