Files
notifications-admin/tests/app/main/views/test_manage_users.py
2016-02-24 17:32:15 +00:00

89 lines
2.5 KiB
Python

import json
from flask import url_for
def test_should_show_overview_page(
app_,
api_user_active,
mock_login,
mock_get_service,
mock_get_users_by_service
):
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.get(url_for('main.manage_users', service_id=55555))
assert 'Manage team' in response.get_data(as_text=True)
assert response.status_code == 200
mock_get_users_by_service.assert_called_once_with(service_id='55555')
def test_should_show_page_for_one_user(
app_,
api_user_active,
mock_login,
mock_get_service
):
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.get(url_for('main.edit_user', service_id=55555, user_id=0))
assert response.status_code == 200
def test_redirect_after_saving_user(
app_,
api_user_active,
mock_login,
mock_get_service,
mock_get_users_by_service
):
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.post(url_for(
'main.edit_user', service_id=55555, user_id=0
))
assert response.status_code == 302
assert response.location == url_for(
'main.manage_users', service_id=55555, _external=True
)
def test_should_show_page_for_inviting_user(
app_,
api_user_active,
mock_login,
mock_get_service
):
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.get(url_for('main.invite_user', service_id=55555))
assert 'Add a new team member' in response.get_data(as_text=True)
assert response.status_code == 200
def test_invite_user(
app_,
api_user_active,
mock_login,
mock_get_service,
mock_get_users_by_service
):
with app_.test_request_context():
with app_.test_client() as client:
client.login(api_user_active)
response = client.post(
url_for('main.invite_user', service_id=55555),
data={'email_address': 'test@example.gov.uk'},
follow_redirects=True
)
assert response.status_code == 200
assert 'Invite sent to test@example.gov.uk' in response.get_data(as_text=True)