示例#1
0
def confirm_edit_user_mobile_number(service_id, user_id):
    user = current_service.get_team_member(user_id)
    if 'team_member_mobile_change' in session:
        new_number = session['team_member_mobile_change']
    else:
        return redirect(
            url_for('.edit_user_mobile_number',
                    service_id=service_id,
                    user_id=user_id))
    if request.method == 'POST':
        try:
            user.update(mobile_number=new_number, updated_by=current_user.id)
        except HTTPError as e:
            abort(500, e)
        else:
            create_mobile_number_change_event(user.id, current_user.id,
                                              user.mobile_number, new_number)
        finally:
            session.pop('team_member_mobile_change', None)

        return redirect(url_for('.manage_users', service_id=service_id))

    return render_template(
        'views/manage-users/confirm-edit-user-mobile-number.html',
        user=user,
        service_id=service_id,
        new_mobile_number=new_number)
def test_create_mobile_number_change_event_calls_events_api(app_, mock_events):
    user_id = str(uuid.uuid4())
    updated_by_id = str(uuid.uuid4())

    with app_.test_request_context():
        create_mobile_number_change_event(user_id, updated_by_id, '07700900000', '07700900999')

        mock_events.assert_called_with('update_user_mobile_number',
                                       {'browser_fingerprint':
                                        {'browser': ANY, 'version': ANY, 'platform': ANY, 'user_agent_string': ''},
                                        'ip_address': ANY,
                                        'user_id': user_id,
                                        'updated_by_id': updated_by_id,
                                        'original_mobile_number': '07700900000',
                                        'new_mobile_number': '07700900999'})
def test_create_mobile_number_change_event_calls_events_api(app_, mock_events):
    user_id = str(uuid.uuid4())
    updated_by_id = str(uuid.uuid4())

    with app_.test_request_context(environ_base={"REMOTE_ADDR": "1.2.3.4"}):
        create_mobile_number_change_event(user_id, updated_by_id,
                                          "07700900000", "07700900999")

        mock_events.assert_called_with(
            "update_user_mobile_number",
            {
                "browser_fingerprint": {
                    "browser": ANY,
                    "version": ANY,
                    "platform": ANY,
                    "user_agent_string": "",
                },
                "ip_address": "1.2.3.4",
                "user_id": user_id,
                "updated_by_id": updated_by_id,
                "original_mobile_number": "07700900000",
                "new_mobile_number": "07700900999",
            },
        )