Add user via api

Leave original user object in for this slice. Remove on next
This commit is contained in:
Adam Shimali
2016-01-19 15:50:31 +00:00
committed by Rebecca Law
parent 762ab8e394
commit c86b53f7f1
5 changed files with 89 additions and 15 deletions

View File

@@ -1,5 +1,7 @@
from flask import url_for
from tests.conftest import mock_register_user
def test_render_register_returns_template_with_form(app_, db_, db_session):
response = app_.test_client().get('/register')
@@ -12,13 +14,21 @@ def test_process_register_creates_new_user(app_,
db_,
db_session,
mock_send_sms,
mock_send_email):
mock_send_email,
mocker):
user_data = {
'name': 'Some One Valid',
'email_address': 'someone@example.gov.uk',
'mobile_number': '+4407700900460',
'password': 'validPassword!'
}
mock_register_user(mocker, user_data)
with app_.test_request_context():
response = app_.test_client().post('/register',
data={'name': 'Some One Valid',
'email_address': 'someone@example.gov.uk',
'mobile_number': '+4407700900460',
'password': 'validPassword!'})
data=user_data)
assert response.status_code == 302
assert response.location == url_for('main.verify', _external=True)
@@ -57,13 +67,19 @@ def test_should_add_verify_codes_on_session(app_,
db_,
db_session,
mock_send_sms,
mock_send_email):
mock_send_email,
mocker):
user_data = {
'name': 'Test Codes',
'email_address': 'test@example.gov.uk',
'mobile_number': '+4407700900460',
'password': 'validPassword!'
}
mock_register_user(mocker, user_data)
with app_.test_client() as client:
response = client.post('/register',
data={'name': 'Test Codes',
'email_address': 'test_codes@example.gov.uk',
'mobile_number': '+4407700900460',
'password': 'validPassword!'})
data=user_data)
assert response.status_code == 302
assert 'notify_admin_session' in response.headers.get('Set-Cookie')

View File

@@ -142,3 +142,17 @@ def mock_delete_service(mocker, mock_get_service):
mock_class = mocker.patch(
'app.notifications_api_client.delete_service', side_effect=_delete)
return mock_class
@pytest.fixture(scope='function')
def mock_register_user(mocker, user_data):
data = {
"email_address": user_data['email_address'],
"failed_login_count": 0,
"mobile_number": user_data['mobile_number'],
"name": user_data['name'],
"state": "pending"
}
mock_class = mocker.patch('app.main.views.register.UserApiClient')
mock_class.register_user.return_value = data
return mock_class