More explicit explanation: session testing

Use a more explicit explanation on how to write code to test own code
when sessions are needed.
The previous code was not fully explicit that the client is supposed
to be called after the session transaction and not during.
This commit is contained in:
brunoais 2019-04-14 15:48:02 +01:00 committed by David Lord
parent 55801b5653
commit 6142aa64ae
No known key found for this signature in database
GPG Key ID: 7A1C87E3F5BC42A8
1 changed files with 4 additions and 3 deletions

View File

@ -354,14 +354,15 @@ This however does not make it possible to also modify the session or to
access the session before a request was fired. Starting with Flask 0.8 we
provide a so called “session transaction” which simulates the appropriate
calls to open a session in the context of the test client and to modify
it. At the end of the transaction the session is stored. This works
independently of the session backend used::
it. At the end of the transaction the session is stored and ready to be
used by the test client. This works independently of the session backend used::
with app.test_client() as c:
with c.session_transaction() as sess:
sess['a_key'] = 'a value'
# once this is reached the session was stored
# once this is reached the session was stored and ready to be used by the client
c.get(...)
Note that in this case you have to use the ``sess`` object instead of the
:data:`flask.session` proxy. The object however itself will provide the