httpretty request handler.

    converts a call intercepted by httpretty to
    the stack-in-a-box infrastructure

    :param request: request object
    :param uri: the uri of the request
    :param headers: headers for the response

    :returns: tuple - (int, dict, string) containing:
                      int - the http response status code
                      dict - the headers for the http response
                      string - http string response

def httpretty_callback(request, uri, headers):
    """httpretty request handler.

    converts a call intercepted by httpretty to
    the stack-in-a-box infrastructure

    :param request: request object
    :param uri: the uri of the request
    :param headers: headers for the response

    :returns: tuple - (int, dict, string) containing:
                      int - the http response status code
                      dict - the headers for the http response
                      string - http string response

    """
    method = request.method
    response_headers = CaseInsensitiveDict()
    response_headers.update(headers)
    request_headers = CaseInsensitiveDict()
    request_headers.update(request.headers)
    request.headers = request_headers
    return StackInABox.call_into(method,
                                 request,
                                 uri,
                                 response_headers)