From 7f94232f4e2f4b019cf43f297a67cf4068ad284e Mon Sep 17 00:00:00 2001 From: Chris Hill-Scott Date: Tue, 3 May 2022 10:14:35 +0100 Subject: [PATCH 1/3] Clean up old text message price MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that the new price is in effect, we don’t need to check the date to see which price should be displayed to the user. --- app/main/views/pricing.py | 2 -- tests/app/main/views/test_index.py | 1 - 2 files changed, 3 deletions(-) diff --git a/app/main/views/pricing.py b/app/main/views/pricing.py index 3b7af1d12..5c6fab52f 100644 --- a/app/main/views/pricing.py +++ b/app/main/views/pricing.py @@ -13,8 +13,6 @@ from app.main.views.sub_navigation_dictionaries import pricing_nav def get_current_sms_rate(): - if convert_utc_to_bst(datetime.utcnow()) < convert_utc_to_bst(datetime(2022, 5, 1)): - return '1.61' return '1.72' diff --git a/tests/app/main/views/test_index.py b/tests/app/main/views/test_index.py index e31ba38a8..3827d54c8 100644 --- a/tests/app/main/views/test_index.py +++ b/tests/app/main/views/test_index.py @@ -359,7 +359,6 @@ def test_font_preload( @pytest.mark.parametrize('current_date, expected_rate', ( - ('2022-04-30', '1.61'), ('2022-05-01', '1.72'), )) def test_sms_price( From 784fe24a267a0c6b73ceddf4240239220dbe9060 Mon Sep 17 00:00:00 2001 From: Chris Hill-Scott Date: Tue, 3 May 2022 15:38:36 +0100 Subject: [PATCH 2/3] Make SMS rate a constant MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that it doesn’t depend on any logic it doesn’t need to be a function. --- app/main/views/index.py | 4 ++-- app/main/views/pricing.py | 8 ++------ 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/app/main/views/index.py b/app/main/views/index.py index cda97e84f..1095e6239 100644 --- a/app/main/views/index.py +++ b/app/main/views/index.py @@ -13,7 +13,7 @@ from notifications_utils.template import HTMLEmailTemplate, LetterImageTemplate from app import email_branding_client, letter_branding_client, status_api_client from app.main import main from app.main.forms import FieldWithNoneOption -from app.main.views.pricing import get_current_sms_rate +from app.main.views.pricing import SMS_RATE from app.main.views.sub_navigation_dictionaries import ( features_nav, using_notify_nav, @@ -29,7 +29,7 @@ def index(): return render_template( 'views/signedout.html', - sms_rate=get_current_sms_rate(), + sms_rate=SMS_RATE, counts=status_api_client.get_count_of_live_services_and_organisations(), ) diff --git a/app/main/views/pricing.py b/app/main/views/pricing.py index 5c6fab52f..49f6ab945 100644 --- a/app/main/views/pricing.py +++ b/app/main/views/pricing.py @@ -1,26 +1,22 @@ -from datetime import datetime - from flask import current_app, render_template from flask_login import current_user from notifications_utils.international_billing_rates import ( INTERNATIONAL_BILLING_RATES, ) -from notifications_utils.timezones import convert_utc_to_bst from app.main import main from app.main.forms import SearchByNameForm from app.main.views.sub_navigation_dictionaries import pricing_nav -def get_current_sms_rate(): - return '1.72' +SMS_RATE = '1.72' @main.route('/pricing') def pricing(): return render_template( 'views/pricing/index.html', - sms_rate=get_current_sms_rate(), + sms_rate=SMS_RATE, international_sms_rates=sorted([ (cc, country['names'], country['billable_units']) for cc, country in INTERNATIONAL_BILLING_RATES.items() From a136b920783be2b32126acae7f53cf6faf79a9c2 Mon Sep 17 00:00:00 2001 From: Chris Hill-Scott Date: Wed, 4 May 2022 15:04:06 +0100 Subject: [PATCH 3/3] Rename constant for clarity --- app/main/views/index.py | 4 ++-- app/main/views/pricing.py | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/app/main/views/index.py b/app/main/views/index.py index 1095e6239..b997ee232 100644 --- a/app/main/views/index.py +++ b/app/main/views/index.py @@ -13,7 +13,7 @@ from notifications_utils.template import HTMLEmailTemplate, LetterImageTemplate from app import email_branding_client, letter_branding_client, status_api_client from app.main import main from app.main.forms import FieldWithNoneOption -from app.main.views.pricing import SMS_RATE +from app.main.views.pricing import CURRENT_SMS_RATE from app.main.views.sub_navigation_dictionaries import ( features_nav, using_notify_nav, @@ -29,7 +29,7 @@ def index(): return render_template( 'views/signedout.html', - sms_rate=SMS_RATE, + sms_rate=CURRENT_SMS_RATE, counts=status_api_client.get_count_of_live_services_and_organisations(), ) diff --git a/app/main/views/pricing.py b/app/main/views/pricing.py index 49f6ab945..f532737e0 100644 --- a/app/main/views/pricing.py +++ b/app/main/views/pricing.py @@ -8,15 +8,14 @@ from app.main import main from app.main.forms import SearchByNameForm from app.main.views.sub_navigation_dictionaries import pricing_nav - -SMS_RATE = '1.72' +CURRENT_SMS_RATE = '1.72' @main.route('/pricing') def pricing(): return render_template( 'views/pricing/index.html', - sms_rate=SMS_RATE, + sms_rate=CURRENT_SMS_RATE, international_sms_rates=sorted([ (cc, country['names'], country['billable_units']) for cc, country in INTERNATIONAL_BILLING_RATES.items()