Files
notifications-admin/tests/app/main/views/test_main_nav.py
Leo Hemsted f039397533 make letters error if user not logged in
also added tests for the various hiding logic points

also added new logged_in_client in conftest - so you dont need to
patch all those stupid API calls for get user and get service
2016-10-27 16:46:51 +01:00

27 lines
1.0 KiB
Python

from flask import url_for
from bs4 import BeautifulSoup
from tests import service_json
def test_can_see_letters_if_allowed(logged_in_client, mocker):
service = service_json(can_send_letters=True)
mocker.patch('app.service_api_client.get_service', return_value={"data": service})
response = logged_in_client.get(url_for('main.service_settings', service_id=service['id']))
assert response.status_code == 200
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert 'Letter templates' in page.find('nav', class_='navigation').text
def test_cant_see_letters_if_not_allowed(logged_in_client, mocker):
service = service_json(can_send_letters=False)
mocker.patch('app.service_api_client.get_service', return_value={"data": service})
response = logged_in_client.get(url_for('main.service_settings', service_id=service['id']))
assert response.status_code == 200
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert 'Letter templates' not in page.find('nav', class_='navigation').text