Merge pull request #3056 from alphagov/spellcheck-email

Set autocomplete and spellcheck attributes on email field
This commit is contained in:
Chris Hill-Scott
2019-07-22 12:09:14 +01:00
committed by GitHub
11 changed files with 39 additions and 20 deletions

View File

@@ -387,6 +387,16 @@ def test_invite_user_allows_to_choose_auth(
assert sms_auth_radio_button.has_attr("disabled") is False
def test_invite_user_has_correct_email_field(
client_request,
mock_get_users_by_service,
mock_get_template_folders,
):
email_field = client_request.get('main.invite_user', service_id=SERVICE_ONE_ID).select_one('#email_address')
assert email_field['spellcheck'] == 'false'
assert 'autocomplete' not in email_field
def test_should_not_show_page_for_non_team_member(
client_request,
mock_get_users_by_service,

View File

@@ -15,6 +15,9 @@ def test_render_register_returns_template_with_form(client):
assert response.status_code == 200
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
assert page.find('input', attrs={'name': 'auth_type'}).attrs['value'] == 'sms_auth'
assert page.select_one('#email_address')['spellcheck'] == 'false'
assert page.select_one('#email_address')['autocomplete'] == 'email'
assert page.select_one('#password')['autocomplete'] == 'new-password'
assert 'Create an account' in response.get_data(as_text=True)

View File

@@ -5,20 +5,26 @@ from bs4 import BeautifulSoup
from flask import url_for
from app.models.user import User
from tests.conftest import normalize_spaces
def test_render_sign_in_template_for_new_user(
client
client_request
):
response = client.get(url_for('main.sign_in', next=None))
assert response.status_code == 200
resp = response.get_data(as_text=True)
assert 'Sign in' in resp
assert 'Email address' in resp
assert 'Password' in resp
assert 'Forgot your password?' in resp
assert 'If you do not have an account, you can' in resp
assert 'Sign in again' not in resp
client_request.logout()
page = client_request.get('main.sign_in')
assert normalize_spaces(page.select_one('h1').text) == 'Sign in'
assert normalize_spaces(page.select('label')[0].text) == 'Email address'
assert page.select_one('#email_address')['value'] == ''
assert page.select_one('#email_address')['autocomplete'] == 'email'
assert normalize_spaces(page.select('label')[1].text) == 'Password'
assert page.select_one('#password')['value'] == ''
assert page.select_one('#password')['autocomplete'] == 'current-password'
assert page.select('main a')[0].text == 'create one now'
assert page.select('main a')[0]['href'] == url_for('main.register')
assert page.select('main a')[1].text == 'Forgot your password?'
assert page.select('main a')[1]['href'] == url_for('main.forgot_password')
assert 'Sign in again' not in normalize_spaces(page.text)
def test_sign_in_explains_session_timeout(client):