FEATURE: Check email availability in signup form (#12328)

* FEATURE: Check email availability on focus out

* FIX: Properly debounce username availability
This commit is contained in:
Bianca Nenciu
2021-03-22 17:46:03 +02:00
committed by GitHub
parent 4fb2d397a4
commit ec7415ff49
8 changed files with 156 additions and 69 deletions

View File

@@ -1584,6 +1584,30 @@ describe UsersController do
end
end
describe '#check_email' do
it 'returns success if hide_email_address_taken is true' do
SiteSetting.hide_email_address_taken = true
get "/u/check_email.json", params: { email: user.email }
expect(response.parsed_body["success"]).to be_present
end
it 'returns failure if email is not valid' do
get "/u/check_email.json", params: { email: "invalid" }
expect(response.parsed_body["failed"]).to be_present
end
it 'returns failure if email exists' do
get "/u/check_email.json", params: { email: user.email }
expect(response.parsed_body["failed"]).to be_present
end
it 'returns success if email does not exists' do
get "/u/check_email.json", params: { email: "available@example.com" }
expect(response.parsed_body["success"]).to be_present
end
end
describe '#invited' do
it 'fails for anonymous users' do
user = Fabricate(:user)