Skip to content

Commit

Permalink
Merge pull request #2268 from GSA/notify-admin-2245
Browse files Browse the repository at this point in the history
get rid of some noise in status updates
  • Loading branch information
terrazoon authored Jan 20, 2025
2 parents 0168fc0 + 1c77f8d commit 028a154
Show file tree
Hide file tree
Showing 7 changed files with 46 additions and 18 deletions.
6 changes: 3 additions & 3 deletions .ds.baseline
Original file line number Diff line number Diff line change
Expand Up @@ -555,15 +555,15 @@
"filename": "tests/app/main/views/test_register.py",
"hashed_secret": "5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8",
"is_verified": false,
"line_number": 200,
"line_number": 199,
"is_secret": false
},
{
"type": "Secret Keyword",
"filename": "tests/app/main/views/test_register.py",
"hashed_secret": "bb5b7caa27d005d38039e3797c3ddb9bcd22c3c8",
"is_verified": false,
"line_number": 273,
"line_number": 272,
"is_secret": false
}
],
Expand Down Expand Up @@ -684,5 +684,5 @@
}
]
},
"generated_at": "2025-01-13T20:16:58Z"
"generated_at": "2025-01-16T16:38:48Z"
}
8 changes: 1 addition & 7 deletions app/main/views/index.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,7 @@ def check_feature_flags():
@main.route("/test/feature-flags")
def test_feature_flags():
return jsonify(
{
"FEATURE_ABOUT_PAGE_ENABLED": current_app.config[
"FEATURE_ABOUT_PAGE_ENABLED"
]
}
{"FEATURE_ABOUT_PAGE_ENABLED": current_app.config["FEATURE_ABOUT_PAGE_ENABLED"]}
)


Expand Down Expand Up @@ -235,7 +231,6 @@ def contact():
return render_template(
"views/contact.html",
navigation_links=about_notify_nav(),

)


Expand Down Expand Up @@ -268,7 +263,6 @@ def join_notify():
return render_template(
"views/join-notify.html",
navigation_links=about_notify_nav(),

)


Expand Down
12 changes: 12 additions & 0 deletions app/notify_client/billing_api_client.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
import json

from app.extensions import redis_client
from app.notify_client import NotifyAdminAPIClient


Expand All @@ -15,10 +18,19 @@ def get_annual_usage_for_service(self, service_id, year=None):
)

def get_free_sms_fragment_limit_for_year(self, service_id, year=None):
frag_limit = redis_client.get(f"free-sms-fragment-limit-{service_id}-{year}")
if frag_limit is not None:
return json.loads(frag_limit.decode("utf-8"))
result = self.get(
"/service/{0}/billing/free-sms-fragment-limit".format(service_id),
params=dict(financial_year_start=year),
)

redis_client.set(
f"free-sms-fragment-limit-{service_id}-{year}",
json.dumps(result["free_sms_fragment_limit"]),
ex=30,
)
return result["free_sms_fragment_limit"]

def create_or_update_free_sms_fragment_limit(
Expand Down
14 changes: 13 additions & 1 deletion app/notify_client/service_api_client.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import json
from datetime import datetime, timezone

from app.extensions import redis_client
Expand Down Expand Up @@ -517,7 +518,18 @@ def get_notification_count(self, service_id):
return int(count)

def get_global_notification_count(self, service_id):
return self.get("/service/{}/notification-count".format(service_id))
notification_count = redis_client.get(f"notification-count-{service_id}")
if notification_count is not None:
return json.loads(notification_count.decode("utf-8"))

notification_count = self.get(
"/service/{}/notification-count".format(service_id)
)
redis_client.set(
f"notification-count-{service_id}", json.dumps(notification_count), ex=30
)

return notification_count

def get_service_invite_data(self, redis_key):
"""
Expand Down
4 changes: 1 addition & 3 deletions tests/app/main/views/test_index.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,7 @@ def test_static_pages(client_request, mock_get_organization_by_domain, view, moc
session["user_id"] = None
request(
_expected_status=302,
_expected_redirect="/sign-in?next={}".format(
url_for("main.{}".format(view))
),
_expected_redirect="/sign-in?next={}".format(url_for("main.{}".format(view))),
)


Expand Down
5 changes: 2 additions & 3 deletions tests/app/main/views/test_register.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,9 +144,8 @@ def test_should_return_200_when_email_is_not_gov_uk(
_expected_status=200,
)

assert (
"Enter a public sector email address."
in normalize_spaces(page.select_one(".usa-error-message").text)
assert "Enter a public sector email address." in normalize_spaces(
page.select_one(".usa-error-message").text
)


Expand Down
15 changes: 14 additions & 1 deletion tests/app/notify_client/test_billing_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,15 @@ def test_get_free_sms_fragment_limit_for_year_correct_endpoint(mocker, api_user_
expected_url = "/service/{}/billing/free-sms-fragment-limit".format(service_id)
client = BillingAPIClient()

mock_get = mocker.patch("app.notify_client.billing_api_client.BillingAPIClient.get")
mock_get = mocker.patch(
"app.notify_client.billing_api_client.BillingAPIClient.get",
return_value={"free_sms_fragment_limit": 0},
)
mocker.patch(
"app.notify_client.billing_api_client.redis_client.get", return_value=None
)

mocker.patch("app.notify_client.billing_api_client.redis_client.set")

client.get_free_sms_fragment_limit_for_year(service_id, year=1999)
mock_get.assert_called_once_with(
Expand All @@ -28,6 +36,11 @@ def test_post_free_sms_fragment_limit_for_current_year_endpoint(
)
client = BillingAPIClient()

mocker.patch(
"app.notify_client.billing_api_client.redis_client.get", return_value=None
)

mocker.patch("app.notify_client.billing_api_client.redis_client.set")
client.create_or_update_free_sms_fragment_limit(
service_id=service_id, free_sms_fragment_limit=1111
)
Expand Down

0 comments on commit 028a154

Please sign in to comment.