from tests.conftest import SERVICE_ONE_ID def test_render_sign_out_redirects_to_sign_in(client_request): # TODO with the change to using login.gov, we no longer redirect directly to the sign in page. # Instead we redirect to login.gov which redirects us to the sign in page. However, the # test for the expected redirect being "/" is buried in conftest and looks fragile. # After we move to login.gov officially and get rid of other forms of signing it, it should # be refactored. with client_request.session_transaction() as session: assert session client_request.get( "main.sign_out", _expected_status=302, ) with client_request.session_transaction() as session: assert not session def test_sign_out_user( client_request, mock_get_service, api_user_active, mock_get_user, mock_get_user_by_email, mock_login, mock_get_service_templates, mock_has_no_jobs, mock_has_permissions, mock_get_template_statistics, mock_get_service_statistics, mock_get_annual_usage_for_service, mock_get_free_sms_fragment_limit, mock_get_inbound_sms_summary, ): with client_request.session_transaction() as session: assert session.get("user_id") is not None # Check we are logged in client_request.get( "main.service_dashboard", service_id=SERVICE_ONE_ID, ) client_request.get( "main.sign_out", _expected_status=302, ) with client_request.session_transaction() as session: assert session.get("user_id") is None def test_sign_out_of_two_sessions(client_request): client_request.get( "main.sign_out", _expected_status=302, ) with client_request.session_transaction() as session: assert not session client_request.get( "main.sign_out", _expected_status=302, )