def test_route_admin_user(test_client, test_admin_session, admin_user, admin_get_user):
    with test_client.session_transaction() as client_session:
        client_session.update(test_admin_session)
        client_session["admin_user_object"] = admin_user
        client_session["admin_user_email"] = admin_user["email"]

    email = admin_user["email"]
    stubber = stubs.mock_user_get_details(email, admin_get_user)
    with stubber:
        response = test_client.post("/admin/user", data={"task": "view"})
        body = response.data.decode()
        flat = flatten_html(body)
        assert response.status_code == 200
        assert '<h1 class="govuk-heading-l">Manage user</h1>' in body
        assert 'id="user_email">' + admin_user["email"] + "<" in flat
コード例 #2
0
def test_route_admin_user_query(
    test_client, test_admin_session, admin_user, admin_get_user
):
    with test_client.session_transaction() as client_session:
        client_session.update(test_admin_session)

    email = admin_user["email"]
    stubber = stubs.mock_user_get_details(email, admin_get_user)
    with stubber:
        quoted_email = email.replace("@", "%40")
        response = test_client.get(f"/admin/user?email={quoted_email}")
        body = response.data.decode()
        flat = flatten_html(body)
        assert response.status_code == 200
        assert '<h1 class="govuk-heading-l">Manage user</h1>' in body
        assert 'id="user_email">' + admin_user["email"] + "<" in flat
        stubber.deactivate()
def test_route_admin_user_edit(
    test_client, test_admin_session, admin_user, admin_get_user
):
    with test_client.session_transaction() as client_session:
        client_session.update(test_admin_session)
        client_session["admin_user_object"] = admin_user
        client_session["admin_user_email"] = admin_user["email"]

    email = admin_user["email"]
    stubber = stubs.mock_user_get_details(email, admin_get_user)
    with stubber:
        response = test_client.post("/admin/user/edit", data={"task": "edit"})
        body = response.data.decode()
        # flat = flatten_html(body)
        assert response.status_code == 200
        assert '<h1 class="govuk-heading-l">Edit user</h1>' in body
        assert body_has_element_with_attributes(
            body, {"name": "email", "value": admin_user["email"]}
        )
        assert body_has_element_with_attributes(
            body, {"name": "telephone-number", "value": admin_user["phone_number"]}
        )