def send_verify_email(user, token): req = PreparedRequest() host = request.host_url req.prepare(url=f'{host}verify', params={ 'user': user.public_id, 'auth': token }) if current_app.config['TESTING']: return req.url file = rel_path('../util/password-reset.html', __file__) with open(file) as f: html_template = Template(f.read()) html = html_template.render( link=req.url, host=host, header='Verify Your Account', name=user.name_first, body= "Tap the button below to verify your account, the link expires within 30 minutes.", button_text="Verify Account", ) email_text = MIMEText(html, 'html') send_email(user.email, email_text, "Verify your account") if current_app.config['DEBUG']: return req.url
def test_prepared_request_no_cookies_copy(): p = PreparedRequest() p.prepare(method='GET', url='http://www.example.com', data='foo=bar', hooks=default_hooks()) assert_copy(p, p.copy())
def test_prepared_copy(kwargs): p = PreparedRequest() if kwargs: p.prepare(**kwargs) copy = p.copy() for attr in ('method', 'url', 'headers', '_cookies', 'body', 'hooks'): assert getattr(p, attr) == getattr(copy, attr)
def f( method="GET", url="http://mockapi.com", headers=None, files=None, data=None, params=None, auth=None, cookies=None, hooks=None, json=None, ) -> PreparedRequest: request = PreparedRequest() request.prepare( method=method, url=url, headers=headers, files=files, data=data, params=params, auth=auth, cookies=cookies, hooks=hooks, json=json, ) return request
def send_reset_email(user, token): # user = user_service.get_a_user(public_id) req = PreparedRequest() host = request.host_url req.prepare(url=f'{host}password_reset', params={ 'user': user.public_id, 'auth': token }) if current_app.config['TESTING']: return req.url file = rel_path('../util/password-reset.html', __file__) with open(file) as f: html_template = Template(f.read()) html = html_template.render( link=req.url, host=host, header='Reset Your Password', name=user.name_first, body="Tap the button below to reset your password. " "If you didn't request a new password, you can safely delete this email.", button_text="Reset Password", ) email_text = MIMEText(html, 'html') send_email(user.email, email_text, "Reset your password") if current_app.config['DEBUG']: return req.url
def prepare(self, method=None, url=None, headers=None, files=None, data=None, params=None, auth=None, cookies=None, hooks=None, json=None): """Prepares the entire request with the given parameters.""" _PreparedRequest.prepare(self, method, url, headers, files, data, params, auth, cookies, hooks, json) self.adapt_prepare()
def test_no_keep_alive_by_default(self): p = PreparedRequest() p.prepare( method='GET', url='http://www.example.com', hooks=default_hooks() ) assert 'Connection' not in p.headers
def test_prepared_request_no_cookies_copy(): p = PreparedRequest() p.prepare( method='GET', url='http://www.example.com', data='foo=bar', hooks=default_hooks() ) assert_copy(p, p.copy())
def test_data_argument_accepts_tuples(list_of_tuples): """ Ensure that the data argument will accept tuples of strings and properly encode them. """ for data in list_of_tuples: p = PreparedRequest() p.prepare(method="GET", url="http://www.example.com", data=data, hooks=default_hooks()) assert p.body == urlencode(data)
def test_data_argument_accepts_tuples(data): """Ensure that the data argument will accept tuples of strings and properly encode them. """ p = PreparedRequest() p.prepare(method='GET', url='http://www.example.com', data=data, hooks=default_hooks()) assert p.body == urlencode(data)
def test_data_argument_accepts_tuples(data): """Ensure that the data argument will accept tuples of strings and properly encode them. """ p = PreparedRequest() p.prepare( method='GET', url='http://www.example.com', data=data, hooks=default_hooks() ) assert p.body == urlencode(data)
def add_params(endpoint, params): """ Combine query endpoint and params. Example:: >>> add_params("https://www.google.com/search", {"q": "iphone"}) https://www.google.com/search?q=iphone """ p = PreparedRequest() p.prepare(url=endpoint, params=params) return p.url
def sendReport(self, error, tracker_url): """ Copies the given stacktrace in a GeoCat support form. """ payload = { "subject": "[Crash Report] GeoCat Bridge for QGIS", "message": error } req = PreparedRequest() try: req.prepare("GET", tracker_url, params=parse.urlencode(payload, quote_via=parse.quote)) webbrowser.open_new(req.url) except Exception as e: QgsMessageLog().logMessage(f"Failed to send crash report: {e}", 'GeoCat Bridge')
def add_params(endpoint, params): """ Combine query endpoint and params. Example:: >>> add_params("https://www.google.com/search", {"q": "iphone"}) https://www.google.com/search?q=iphone """ p = PreparedRequest() p.prepare(url=endpoint, params=params) if PY2: # pragma: no cover return unicode(p.url) else: # pragma: no cover return p.url
def prepare_request(self, request): """Constructs a :class:`PreparedRequest <PreparedRequest>` for transmission and returns it. The :class:`PreparedRequest` has settings merged from the :class:`Request <Request>` instance and those of the :class:`Session`. :param request: :class:`Request` instance to prepare with this session's settings. """ cookies = request.cookies or {} # Bootstrap CookieJar. if not isinstance(cookies, cookielib.CookieJar): cookies = cookiejar_from_dict(cookies) # Merge with session cookies merged_cookies = RequestsCookieJar() merged_cookies.update(self.cookies) merged_cookies.update(cookies) # Set environment's basic authentication if not explicitly set. auth = request.auth if self.trust_env and not auth and not self.auth: auth = get_netrc_auth(request.url) p = PreparedRequest() p.prepare( method=request.method.upper(), url=request.url, files=request.files, data=request.data, json=request.json, headers=merge_setting(request.headers, self.headers, dict_class=CaseInsensitiveDict), params=merge_setting(request.params, self.params), auth=merge_setting(auth, self.auth), cookies=merged_cookies, hooks=merge_hooks(request.hooks, self.hooks), ) return p
def cookie_test(): from requests.models import PreparedRequest prepared_request = PreparedRequest() prepared_request.prepare(method='GET', url='http://www.baidu.com', cookies={'name': 'Will'})
def test_json_encodes_as_bytes(): # urllib3 expects bodies as bytes-like objects body = {"key": "value"} p = PreparedRequest() p.prepare(method='GET', url='https://www.example.com/', json=body) assert isinstance(p.body, bytes)
def test_prepared_request_complete_copy(): p = PreparedRequest() p.prepare(method="GET", url="http://www.example.com", data="foo=bar", hooks=default_hooks(), cookies={"foo": "bar"}) assert_copy(p, p.copy())