diff --git a/app/main/views/manage_users.py b/app/main/views/manage_users.py
index c0b85ab99..9cdba07fd 100644
--- a/app/main/views/manage_users.py
+++ b/app/main/views/manage_users.py
@@ -22,6 +22,7 @@ from app.main.forms import (
InviteUserForm,
PermissionsForm,
SearchUsersForm,
+ ChangeMobileNumberForm
)
from app.models.user import permissions
from app.utils import redact_mobile_number, user_has_permissions
@@ -203,11 +204,21 @@ def confirm_edit_user_email(service_id, user_id):
)
-@main.route("/services//users//edit-phone-number", methods=['GET', 'POST'])
+@main.route("/services//users//edit-mobile-number", methods=['GET', 'POST'])
@login_required
@user_has_permissions('manage_service')
-def edit_user_phone_number(service_id, user_id):
- return True
+def edit_user_mobile_number(service_id, user_id):
+ user = user_api_client.get_user(user_id)
+ user_mobile_number = redact_mobile_number(user.mobile_number)
+
+ form = ChangeMobileNumberForm(mobile_number=user_mobile_number)
+
+ return render_template(
+ 'views/manage-users/edit-user-mobile.html',
+ user=user,
+ form=form,
+ service_id=service_id
+ )
@main.route("/services//cancel-invited-user/", methods=['GET'])
diff --git a/app/templates/views/edit-user-permissions.html b/app/templates/views/edit-user-permissions.html
index 84b92ba27..17a4ef88f 100644
--- a/app/templates/views/edit-user-permissions.html
+++ b/app/templates/views/edit-user-permissions.html
@@ -17,8 +17,8 @@
{{ user.email_address }} Change
{% if mobile_number %}
-
- {{ mobile_number }} Change
+
+ {{ mobile_number }} Change
{% endif %}
diff --git a/tests/app/main/views/test_manage_users.py b/tests/app/main/views/test_manage_users.py
index a1244dae9..b41bb76f3 100644
--- a/tests/app/main/views/test_manage_users.py
+++ b/tests/app/main/views/test_manage_users.py
@@ -1011,7 +1011,7 @@ def test_confirm_edit_user_email_with_no_permission_aborts():
pass
-def test_edit_user_permissions_page_displays_redacted_phone_number_and_change_link(
+def test_edit_user_permissions_page_displays_redacted_mobile_number_and_change_link(
client_request,
active_user_with_permissions,
service_one,
@@ -1027,29 +1027,46 @@ def test_edit_user_permissions_page_displays_redacted_phone_number_and_change_li
)
assert user.name in page.find('h1').text
- phone_number_paragraph = page.select('p[id=user_phone_number]')[0]
- assert '0770****762' in phone_number_paragraph.text
- change_link = phone_number_paragraph.findChild()
- assert change_link.attrs['href'] == '/services/{}/users/{}/edit-phone-number'.format(
+ mobile_number_paragraph = page.select('p[id=user_mobile_number]')[0]
+ assert '0770****762' in mobile_number_paragraph.text
+ change_link = mobile_number_paragraph.findChild()
+ assert change_link.attrs['href'] == '/services/{}/users/{}/edit-mobile-number'.format(
service_one['id'], user.id
)
-def test_edit_user_phone_number_page():
+def test_edit_user_mobile_number_page(
+ client_request,
+ active_user_with_permissions,
+ service_one,
+ mocker
+):
+ user = active_user_with_permissions
+ mocker.patch('app.user_api_client.get_user', return_value=user)
+
+ page = client_request.get(
+ 'main.edit_user_mobile_number',
+ service_id=service_one['id'],
+ user_id=user.id
+ )
+
+ assert page.find('h1').text == "Change team member’s mobile number"
+ assert page.select('p[id=user_name]')[0].text == "This will change the mobile number for {}.".format(user.name)
+ assert page.select('input[name=mobile_number]')[0].attrs["value"] == "0770****762"
+ assert page.select('button[type=submit]')[0].text == "Save"
+
+
+def test_edit_user_mobile_number_redirects_to_confirmation():
pass
-def test_edit_user_phone_number_redirects_to_confirmation():
+def test_confirm_edit_user_mobile_number_page():
pass
-def test_confirm_edit_user_phone_number_page():
+def test_confirm_edit_user_mobile_number_changes_user_mobile_number():
pass
-def test_confirm_edit_user_phone_number_changes_user_mobile_number():
- pass
-
-
-def test_confirm_edit_user_phone_number_with_no_permission_aborts():
+def test_confirm_edit_user_mobile_number_with_no_permission_aborts():
pass