"""Test request fixture.""" from grass import api class RequestHandler(api.BaseHandler): """Request handler fixture.""" def __init__(self, headers=None, arguments=None, request_method=None): """Initialize a RequestHandler. Args: headers (dict): request headers. arguments (dict): request's arguments (this contains query string and body.) Returns: RequestHandler: the newly created request handler. """ self.arguments = arguments or {} self.authorized = False self.correlation_id = None self.headers = headers or {} self.request = Request(headers, arguments) if request_method: self.request.method = request_method self.unique_call_count = 0 def get_argument(self, name, default=None): """Get argument. Args: name (str): name of the argument to get. default (str): if the argument has no value, use the default. Return: mixed: the value of the argument if found otherwise the default value. """ return self.request.arguments.get(name) or default or [] class Request: """Request Mock similar to HTTPServerRequest.""" def __init__(self, headers=None, arguments=None): """Initizlie a Request. Args: headers (dict): request headers. arguments (dict): request's arguments (this contains query string and body.) Returns: Request: the newly created request handler. """ self.headers = headers or {} self.arguments = arguments or {} self.path = '' self.method = 'GET' self.uri = ''