mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FIX: Raise the right error when email params is missing.
This commit is contained in:
parent
23420c0817
commit
5994c85ea9
@ -292,6 +292,7 @@ class UsersController < ApplicationController
|
|||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
|
params.require(:email)
|
||||||
params.permit(:user_fields)
|
params.permit(:user_fields)
|
||||||
|
|
||||||
unless SiteSetting.allow_new_registrations
|
unless SiteSetting.allow_new_registrations
|
||||||
@ -302,7 +303,7 @@ class UsersController < ApplicationController
|
|||||||
return fail_with("login.password_too_long")
|
return fail_with("login.password_too_long")
|
||||||
end
|
end
|
||||||
|
|
||||||
if params[:email] && params[:email].length > 254 + 1 + 253
|
if params[:email].length > 254 + 1 + 253
|
||||||
return fail_with("login.email_too_long")
|
return fail_with("login.email_too_long")
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -310,7 +311,7 @@ class UsersController < ApplicationController
|
|||||||
return fail_with("login.reserved_username")
|
return fail_with("login.reserved_username")
|
||||||
end
|
end
|
||||||
|
|
||||||
if user = User.where(staged: true).find_by(email: params[:email].strip.downcase)
|
if user = User.find_by(staged: true, email: params[:email].strip.downcase)
|
||||||
user_params.each { |k, v| user.send("#{k}=", v) }
|
user_params.each { |k, v| user.send("#{k}=", v) }
|
||||||
user.staged = false
|
user.staged = false
|
||||||
else
|
else
|
||||||
|
@ -472,6 +472,17 @@ describe UsersController do
|
|||||||
xhr :post, :create, post_user_params
|
xhr :post, :create, post_user_params
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'when email params is missing' do
|
||||||
|
it 'should raise the right error' do
|
||||||
|
expect do
|
||||||
|
xhr :post, :create,
|
||||||
|
name: @user.name,
|
||||||
|
username: @user.username,
|
||||||
|
passsword: 'tesing12352343'
|
||||||
|
end.to raise_error(ActionController::ParameterMissing)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
context 'when creating a user' do
|
context 'when creating a user' do
|
||||||
it 'sets the user locale to I18n.locale' do
|
it 'sets the user locale to I18n.locale' do
|
||||||
SiteSetting.default_locale = 'en'
|
SiteSetting.default_locale = 'en'
|
||||||
|
Loading…
Reference in New Issue
Block a user