Merge pull request from GHSA-7cmh-wm9h-j63f
This commit is contained in:
parent
03d51d6519
commit
8e5a8d1d54
|
@ -134,7 +134,10 @@ class Users::OmniauthCallbacksController < ApplicationController
|
||||||
user.email_tokens.create!(email: user.email)
|
user.email_tokens.create!(email: user.email)
|
||||||
end
|
end
|
||||||
|
|
||||||
user.activate
|
if !user.active || !user.email_confirmed?
|
||||||
|
user.password = SecureRandom.hex
|
||||||
|
user.activate
|
||||||
|
end
|
||||||
user.update!(registration_ip_address: request.remote_ip) if user.registration_ip_address.blank?
|
user.update!(registration_ip_address: request.remote_ip) if user.registration_ip_address.blank?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -286,7 +286,7 @@ RSpec.describe Users::OmniauthCallbacksController do
|
||||||
expect(user.email_confirmed?).to eq(true)
|
expect(user.email_confirmed?).to eq(true)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should activate/unstage staged user" do
|
it "should unstage staged user" do
|
||||||
user.update!(staged: true, registration_ip_address: nil)
|
user.update!(staged: true, registration_ip_address: nil)
|
||||||
|
|
||||||
user.reload
|
user.reload
|
||||||
|
@ -306,6 +306,22 @@ RSpec.describe Users::OmniauthCallbacksController do
|
||||||
expect(user.registration_ip_address).to be_present
|
expect(user.registration_ip_address).to be_present
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "should activate user with matching email" do
|
||||||
|
user.update!(password: "securepassword", active: false)
|
||||||
|
|
||||||
|
user.reload
|
||||||
|
expect(user.active).to eq(false)
|
||||||
|
expect(user.confirm_password?("securepassword")).to eq(true)
|
||||||
|
|
||||||
|
get "/auth/google_oauth2/callback.json"
|
||||||
|
|
||||||
|
user.reload
|
||||||
|
expect(user.active).to eq(true)
|
||||||
|
|
||||||
|
# Delete the password, it may have been set by someone else
|
||||||
|
expect(user.confirm_password?("securepassword")).to eq(false)
|
||||||
|
end
|
||||||
|
|
||||||
context 'when user has second factor enabled' do
|
context 'when user has second factor enabled' do
|
||||||
before do
|
before do
|
||||||
user.create_totp(enabled: true)
|
user.create_totp(enabled: true)
|
||||||
|
|
Loading…
Reference in New Issue