From fe6b73b8dc97908ef267d25360c142ef60d31c83 Mon Sep 17 00:00:00 2001 From: Pea Tyczynska Date: Tue, 29 Jan 2019 17:09:57 +0000 Subject: [PATCH] Remove service postage setting and choose_postage switch --- app/main/forms.py | 11 --- app/main/views/service_settings.py | 26 ------ app/navigation.py | 8 -- app/templates/views/service-settings.html | 20 ----- .../views/service-settings/set-postage.html | 39 --------- .../test_service_setting_permissions.py | 9 -- tests/app/main/views/test_service_settings.py | 82 ------------------- 7 files changed, 195 deletions(-) delete mode 100644 app/templates/views/service-settings/set-postage.html diff --git a/app/main/forms.py b/app/main/forms.py index 7538c27c5..52aeffb41 100644 --- a/app/main/forms.py +++ b/app/main/forms.py @@ -715,17 +715,6 @@ class ServiceSwitchChannelForm(StripWhitespaceForm): ) -class ServicePostageForm(StripWhitespaceForm): - - postage = RadioField( - 'Choose your postage', - choices=[ - ('first', 'First class only'), - ('second', 'Second class only'), - ], - ) - - class FieldWithNoneOption(): # This is a special value that is specific to our forms. This is diff --git a/app/main/views/service_settings.py b/app/main/views/service_settings.py index 8db9b838e..ed8c5a5a4 100644 --- a/app/main/views/service_settings.py +++ b/app/main/views/service_settings.py @@ -43,7 +43,6 @@ from app.main.forms import ( ServiceEditInboundNumberForm, ServiceInboundNumberForm, ServiceLetterContactBlockForm, - ServicePostageForm, ServicePreviewBranding, ServiceReplyToEmailForm, ServiceSetBranding, @@ -274,14 +273,6 @@ def service_switch_can_upload_document(service_id): return render_template('views/service-settings/contact_link.html', form=form) -@main.route("/services//service-settings/can-choose-postage") -@login_required -@user_is_platform_admin -def service_switch_can_choose_postage(service_id): - current_service.switch_permission('choose_postage') - return redirect(url_for('.service_settings', service_id=service_id)) - - @main.route("/services//service-settings/archive", methods=['GET', 'POST']) @login_required @user_has_permissions('manage_service') @@ -546,23 +537,6 @@ def service_set_channel(service_id, channel): ) -@main.route("/services//service-settings/set-postage", methods=['GET', 'POST']) -@login_required -@user_has_permissions('manage_service') -def service_set_postage(service_id): - - if (not current_service.has_permission('letter')) or current_service.has_permission('choose_postage'): - abort(404) - - form = ServicePostageForm(postage=current_service.postage) - - if form.validate_on_submit(): - current_service.update(postage=form.postage.data) - return redirect(url_for(".service_settings", service_id=service_id)) - - return render_template('views/service-settings/set-postage.html', form=form) - - @main.route("/services//service-settings/set-auth-type", methods=['GET']) @login_required @user_has_permissions('manage_service') diff --git a/app/navigation.py b/app/navigation.py index 0df32b119..05e43e9f2 100644 --- a/app/navigation.py +++ b/app/navigation.py @@ -236,12 +236,10 @@ class HeaderNavigation(Navigation): 'service_set_international_sms', 'service_set_letter_contact_block', 'service_set_letters', - 'service_set_postage', 'service_set_reply_to_email', 'service_set_sms_prefix', 'service_settings', 'service_sms_senders', - 'service_switch_can_choose_postage', 'service_switch_can_send_precompiled_letter', 'service_switch_can_upload_document', 'service_switch_email_auth', @@ -360,7 +358,6 @@ class MainNavigation(Navigation): 'service_set_international_sms', 'service_set_letter_contact_block', 'service_set_letters', - 'service_set_postage', 'service_set_reply_to_email', 'service_set_sms_prefix', 'service_settings', @@ -473,7 +470,6 @@ class MainNavigation(Navigation): 'service_dashboard_updates', 'service_delete_email_reply_to', 'service_delete_sms_sender', - 'service_switch_can_choose_postage', 'service_switch_can_send_precompiled_letter', 'service_switch_can_upload_document', 'service_switch_email_auth', @@ -693,12 +689,10 @@ class CaseworkNavigation(Navigation): 'service_set_international_sms', 'service_set_letter_contact_block', 'service_set_letters', - 'service_set_postage', 'service_set_reply_to_email', 'service_set_sms_prefix', 'service_settings', 'service_sms_senders', - 'service_switch_can_choose_postage', 'service_switch_can_send_precompiled_letter', 'service_switch_can_upload_document', 'service_switch_email_auth', @@ -926,12 +920,10 @@ class OrgNavigation(Navigation): 'service_set_international_sms', 'service_set_letter_contact_block', 'service_set_letters', - 'service_set_postage', 'service_set_reply_to_email', 'service_set_sms_prefix', 'service_settings', 'service_sms_senders', - 'service_switch_can_choose_postage', 'service_switch_can_send_precompiled_letter', 'service_switch_can_upload_document', 'service_switch_email_auth', diff --git a/app/templates/views/service-settings.html b/app/templates/views/service-settings.html index 3a2600951..eec63aba5 100644 --- a/app/templates/views/service-settings.html +++ b/app/templates/views/service-settings.html @@ -240,21 +240,6 @@ )}} {% endcall %} - {% if current_service.has_permission('letter') and not current_service.has_permission('choose_postage') %} - {% call settings_row() %} - {{ text_field('Postage') }} - {% set postage = {'first': 'First class only', 'second': 'Second class only'} %} - {{ text_field(postage[current_service.postage]) }} - {{ edit_field( - 'Change', - url_for('.service_set_postage', - service_id=current_service.id), - permissions=['manage_service'] - ) - }} - {% endcall %} - {% endif %} - {% endcall %} @@ -373,11 +358,6 @@ {{ 'Stop uploading documents' if 'upload_document' in current_service.permissions else 'Allow to upload documents' }} -
  • - - {{ 'Stop choosing postage per template' if 'choose_postage' in current_service.permissions else 'Allow to choose postage per template' }} - -
  • {% if current_service.active %}
  • diff --git a/app/templates/views/service-settings/set-postage.html b/app/templates/views/service-settings/set-postage.html deleted file mode 100644 index 995b1fc3b..000000000 --- a/app/templates/views/service-settings/set-postage.html +++ /dev/null @@ -1,39 +0,0 @@ -{% extends "withnav_template.html" %} -{% from "components/radios.html" import radios %} -{% from "components/page-footer.html" import page_footer %} - -{% block service_page_title %} - Postage -{% endblock %} - -{% block maincolumn_content %} - -
    -
    -

    Postage

    -

    You can send letters by first or second class post.

    -

    - See a list of postage prices. -

    -

    Delivery times

    -

    - Letters sent before 5:30pm are dispatched the next working day (Monday to Friday). -

    -

    - First class letters are delivered one day after they’re dispatched. Second class letters are delivered 2 days after they’re dispatched. -

    -

    - Royal Mail delivers from Monday to Saturday, excluding bank holidays. -

    -
    - {{ radios(form.postage) }} - {{ page_footer( - 'Save', - back_link=url_for('.service_settings', service_id=current_service.id), - back_link_text='Back to settings' - ) }} -
    -
    -
    - -{% endblock %} diff --git a/tests/app/main/views/service_settings/test_service_setting_permissions.py b/tests/app/main/views/service_settings/test_service_setting_permissions.py index 94067c936..c6a8e959d 100644 --- a/tests/app/main/views/service_settings/test_service_setting_permissions.py +++ b/tests/app/main/views/service_settings/test_service_setting_permissions.py @@ -38,15 +38,6 @@ def get_service_settings_page( '.service_switch_can_upload_document', {}, 'Stop uploading documents'), ({'permissions': []}, '.service_switch_can_upload_document', {}, 'Allow to upload documents'), - - ( - {'permissions': ['choose_postage']}, - '.service_switch_can_choose_postage', - {}, - 'Stop choosing postage per template' - ), - ({'permissions': []}, '.service_switch_can_choose_postage', {}, 'Allow to choose postage per template'), - ({'permissions': ['sms']}, '.service_set_inbound_number', {'set_inbound_sms': True}, 'Allow inbound sms'), ({'active': True}, '.archive_service', {}, 'Archive service'), diff --git a/tests/app/main/views/test_service_settings.py b/tests/app/main/views/test_service_settings.py index 823757d08..7d2da0a14 100644 --- a/tests/app/main/views/test_service_settings.py +++ b/tests/app/main/views/test_service_settings.py @@ -215,49 +215,6 @@ def test_should_show_overview_for_service_with_more_things_set( assert row == " ".join(page.find_all('tr')[index + 1].text.split()) -def test_if_cant_send_letters_then_cant_see_postage( - client_request, - service_one, - single_reply_to_email_address, - single_letter_contact_block, - mock_get_service_organisation, - single_sms_sender, - mock_get_service_settings_page_common, -): - page = client_request.get('main.service_settings', service_id=SERVICE_ONE_ID) - - letter_table = page.find_all('table')[3] - rows = letter_table.find_all('tr') - - assert len(rows) == 2 - assert 'Postage' not in letter_table - - -def test_if_can_choose_postage_on_template_cant_choose_on_service( - client_request, - service_one, - single_reply_to_email_address, - single_letter_contact_block, - mock_get_service_organisation, - single_sms_sender, - mock_get_service_settings_page_common, -): - service_one['permissions'] = ['letter', 'choose_postage'] - page = client_request.get('main.service_settings', service_id=SERVICE_ONE_ID) - - letter_table = page.find_all('table')[3] - rows = letter_table.select('tbody tr') - - assert len(rows) == 3 - assert 'Postage' not in letter_table - - client_request.get( - 'main.service_set_postage', - service_id=SERVICE_ONE_ID, - _expected_status=404, - ) - - def test_if_cant_send_letters_then_cant_see_letter_contact_block( client_request, service_one, @@ -2194,45 +2151,6 @@ def test_set_letter_branding_saves( mock_update_service.assert_called_once_with(service_one['id'], dvla_organisation='500') -def test_set_postage_only_for_letter_services( - client_request, -): - client_request.get( - 'main.service_set_postage', - service_id=SERVICE_ONE_ID, - _expected_status=404, - ) - - -def test_set_postage_prepopulates( - client_request, - service_one, -): - service_one['permissions'] += ['letter'] - page = client_request.get('main.service_set_postage', service_id=SERVICE_ONE_ID) - assert page.select('input[checked]')[0]['value'] == 'second' - - -def test_set_postage_saves( - client_request, - service_one, - mock_update_service, -): - service_one['permissions'] += ['letter'] - client_request.post( - 'main.service_set_postage', - service_id=SERVICE_ONE_ID, - _data={'postage': 'first'}, - _expected_status=302, - expected_redirect=url_for( - 'main.service_settings', - service_id=SERVICE_ONE_ID, - _external=True, - ) - ) - mock_update_service.assert_called_once_with(SERVICE_ONE_ID, postage='first') - - @pytest.mark.parametrize('current_branding, expected_values, expected_labels', [ (None, [ '__NONE__', '1', '2', '3', '4', '5',