Revert if statement refactor, if set_inbound_sms is False it still resolves to True, because it is not a boolean but a string.

This commit is contained in:
Rebecca Law
2017-06-05 13:46:02 +01:00
parent da77737c16
commit 9d7510a52f
2 changed files with 25 additions and 1 deletions

View File

@@ -270,7 +270,7 @@ def service_set_sms_sender(service_id):
form = ServiceSmsSender()
if form.validate_on_submit():
set_inbound_sms = request.args.get('set_inbound_sms', False)
if set_inbound_sms:
if set_inbound_sms == 'True':
permissions = current_service['permissions']
if 'inbound_sms' in permissions:
permissions.remove('inbound_sms')

View File

@@ -681,6 +681,30 @@ def test_turn_inbound_sms_off(
assert app.current_service['permissions'] == []
def test_set_text_message_sender_and_not_inbound_sms(
logged_in_client,
service_one,
mock_get_letter_organisations,
mocker,
):
service_one['permissions'] = []
update_service_mock = mocker.patch('app.service_api_client.update_service',
return_value=service_one)
data = {"sms_sender": "elevenchars"}
response = logged_in_client.post(url_for('main.service_set_sms_sender', service_id=service_one['id'],
set_inbound_sms=False),
data=data,
follow_redirects=True)
assert response.status_code == 200
update_service_mock.assert_called_with(
service_one['id'],
sms_sender="elevenchars"
)
assert app.current_service['permissions'] == []
@pytest.mark.parametrize('content, expected_error', [
("", "Cant be empty"),
("twelvecharss", "Enter 11 characters or fewer"),