2020-07-26 20:53:59 +03:00
|
|
|
from app.utils.session_utils import generate_user_keys, valid_user_session
|
2020-06-02 21:54:47 +03:00
|
|
|
|
|
|
|
|
|
|
|
def test_generate_user_keys():
|
|
|
|
keys = generate_user_keys()
|
|
|
|
assert 'text_key' in keys
|
|
|
|
assert 'element_key' in keys
|
|
|
|
assert keys['text_key'] not in keys['element_key']
|
|
|
|
|
|
|
|
|
|
|
|
def test_valid_session(client):
|
2020-06-06 01:09:04 +03:00
|
|
|
assert not valid_user_session({'fernet_keys': '', 'config': {}})
|
2020-06-02 21:54:47 +03:00
|
|
|
with client.session_transaction() as session:
|
|
|
|
assert valid_user_session(session)
|
|
|
|
|
|
|
|
|
|
|
|
def test_request_key_generation(client):
|
2020-06-06 01:09:04 +03:00
|
|
|
rv = client.get('/')
|
|
|
|
cookie = rv.headers['Set-Cookie']
|
|
|
|
|
|
|
|
rv = client.get('/search?q=test+1', headers={'Cookie': cookie})
|
2020-06-02 21:54:47 +03:00
|
|
|
assert rv._status_code == 200
|
|
|
|
|
|
|
|
with client.session_transaction() as session:
|
|
|
|
assert valid_user_session(session)
|
2020-06-06 00:24:44 +03:00
|
|
|
text_key = session['fernet_keys']['text_key']
|
2020-06-02 21:54:47 +03:00
|
|
|
|
2020-06-06 01:09:04 +03:00
|
|
|
rv = client.get('/search?q=test+2', headers={'Cookie': cookie})
|
2020-06-02 21:54:47 +03:00
|
|
|
assert rv._status_code == 200
|
|
|
|
|
|
|
|
with client.session_transaction() as session:
|
|
|
|
assert valid_user_session(session)
|
2020-06-06 00:24:44 +03:00
|
|
|
assert text_key not in session['fernet_keys']['text_key']
|