Only offer agreement download to non-crown for now

We don’t have the crown agreement in a nice downloadable format at the
moment.
This commit is contained in:
Chris Hill-Scott
2018-03-28 12:30:16 +01:00
parent c7ab9f7f1a
commit dca5546cbd
5 changed files with 28 additions and 8 deletions

View File

@@ -159,7 +159,11 @@ rpa.gov.uk:
agreement_signed: true
mcga.gov.uk:
owner: Maritime and Coastguard Agency
agreement_signed: true
agreement_signed: true
metoffice.gov.uk:
owner: Met Office
agreement_signed: false
crown: true
# Local Government
aberdeencityandshire-sdpa.gov.uk:

View File

@@ -2,12 +2,11 @@ from flask import render_template, send_file
from flask_login import login_required
from app.main import main
from app.main.views.sub_navigation_dictionaries import features_nav
from app.main.s3_client import get_mou
from app.main.views.sub_navigation_dictionaries import features_nav
from app.utils import AgreementInfo
@main.route('/agreement')
@login_required
def agreement():

View File

@@ -484,7 +484,7 @@ class AgreementInfo:
'agreement.'.format(self.owner)
)
if self.crown_status is not None:
if self.crown_status is False:
return ((
'{} <a href="{}">Download a copy</a>.'
).format(self._acceptance_required, download_link))
@@ -504,7 +504,7 @@ class AgreementInfo:
@property
def crown_status_or_404(self):
if self.crown_status is None:
if self.crown_status in {None, True}:
abort(404)
return self.crown_status

View File

@@ -15,7 +15,7 @@ class _MockS3Object():
@pytest.mark.parametrize('email_address, expected_status', [
('test@cabinet-office.gov.uk', 200),
('test@cabinet-office.gov.uk', 404),
('test@aylesburytowncouncil.gov.uk', 200),
('test@unknown.gov.uk', 404),
])
@@ -36,11 +36,11 @@ def test_show_agreement_page(
@pytest.mark.parametrize('email_address, expected_file_fetched, expected_file_served', [
(
pytest.mark.xfail((
'test@cabinet-office.gov.uk',
'crown.pdf',
'GOV.UK Notify data sharing and financial agreement.pdf',
),
), raises=AssertionError),
(
'test@aylesburytowncouncil.gov.uk',
'non-crown.pdf',

View File

@@ -155,6 +155,23 @@ def test_terms_is_generic_if_user_is_not_logged_in(
'we already have one in place with your organisation.'
),
),
(
'michael.fish@metoffice.gov.uk',
(
'Your organisation (Met Office) must also accept our data '
'sharing and financial agreement. Contact us to get a copy.'
),
partial(
url_for,
'main.feedback',
ticket_type='ask-question-give-feedback',
body='agreement-with-owner',
),
(
'Contact us to get a copy of the agreement (Met Office '
'hasnt accepted it yet).'
),
),
])
def test_terms_tells_logged_in_users_what_we_know_about_their_agreement(
mocker,