mirror of https://github.com/pallets/flask.git
commit
050a659c2f
7
CHANGES
7
CHANGES
|
|
@ -8,6 +8,9 @@ Version 1.0
|
|||
|
||||
(release date to be announced, codename to be selected)
|
||||
|
||||
- Added `**kwargs` to :meth:`flask.Test.test_client` to support passing
|
||||
additional keyword arguments to the constructor of
|
||||
:attr:`flask.Flask.test_client_class`.
|
||||
- Added ``SESSION_REFRESH_EACH_REQUEST`` config key that controls the
|
||||
set-cookie behavior. If set to `True` a permanent session will be
|
||||
refreshed each request and get their lifetime extended, if set to
|
||||
|
|
@ -20,8 +23,8 @@ Version 1.0
|
|||
- Added :meth:`flask.Config.from_json`.
|
||||
- Added :attr:`flask.Flask.config_class`.
|
||||
- Added :meth:`flask.config.Config.get_namespace`.
|
||||
- Added ``TEMPLATES_AUTO_RELOAD`` config key. If disabled the
|
||||
templates will be reloaded only if the application is running in
|
||||
- Added ``TEMPLATES_AUTO_RELOAD`` config key. If disabled the
|
||||
templates will be reloaded only if the application is running in
|
||||
debug mode. For higher performance it’s possible to disable that.
|
||||
- Added a workaround for a limitation in Python 3.3's namespace loader.
|
||||
- Added support for explicit root paths when using Python 3.3's namespace
|
||||
|
|
|
|||
22
flask/app.py
22
flask/app.py
|
|
@ -821,7 +821,7 @@ class Flask(_PackageBoundObject):
|
|||
# without reloader and that stuff from an interactive shell.
|
||||
self._got_first_request = False
|
||||
|
||||
def test_client(self, use_cookies=True):
|
||||
def test_client(self, use_cookies=True, **kwargs):
|
||||
"""Creates a test client for this application. For information
|
||||
about unit testing head over to :ref:`testing`.
|
||||
|
||||
|
|
@ -844,6 +844,20 @@ class Flask(_PackageBoundObject):
|
|||
rv = c.get('/?vodka=42')
|
||||
assert request.args['vodka'] == '42'
|
||||
|
||||
Additionally, you may pass optional keyword arguments that will then
|
||||
be passed to the application's :attr:`test_client_class` constructor.
|
||||
For example::
|
||||
|
||||
from flask.testing import FlaskClient
|
||||
|
||||
class CustomClient(FlaskClient):
|
||||
def __init__(self, authentication=None, *args, **kwargs):
|
||||
FlaskClient.__init__(*args, **kwargs)
|
||||
self._authentication = authentication
|
||||
|
||||
app.test_client_class = CustomClient
|
||||
client = app.test_client(authentication='Basic ....')
|
||||
|
||||
See :class:`~flask.testing.FlaskClient` for more information.
|
||||
|
||||
.. versionchanged:: 0.4
|
||||
|
|
@ -853,11 +867,15 @@ class Flask(_PackageBoundObject):
|
|||
The `use_cookies` parameter was added as well as the ability
|
||||
to override the client to be used by setting the
|
||||
:attr:`test_client_class` attribute.
|
||||
|
||||
.. versionchanged:: 1.0
|
||||
Added `**kwargs` to support passing additional keyword arguments to
|
||||
the constructor of :attr:`test_client_class`.
|
||||
"""
|
||||
cls = self.test_client_class
|
||||
if cls is None:
|
||||
from flask.testing import FlaskClient as cls
|
||||
return cls(self, self.response_class, use_cookies=use_cookies)
|
||||
return cls(self, self.response_class, use_cookies=use_cookies, **kwargs)
|
||||
|
||||
def open_session(self, request):
|
||||
"""Creates or opens a new session. Default implementation stores all
|
||||
|
|
|
|||
Loading…
Reference in New Issue