2
0

Add User#email_domain method to extract domain from email address (#35159)

This commit is contained in:
Matt Jankowski
2025-06-25 03:22:19 -04:00
committed by GitHub
parent 8ba1487f30
commit f852da50f6
5 changed files with 38 additions and 3 deletions

View File

@@ -166,6 +166,34 @@ RSpec.describe User do
end
end
describe '#email_domain' do
subject { described_class.new(email: email).email_domain }
context 'when value is nil' do
let(:email) { nil }
it { is_expected.to be_nil }
end
context 'when value is blank' do
let(:email) { '' }
it { is_expected.to be_nil }
end
context 'when value has valid domain' do
let(:email) { 'user@host.example' }
it { is_expected.to eq('host.example') }
end
context 'when value has no split' do
let(:email) { 'user$host.example' }
it { is_expected.to be_nil }
end
end
describe '#update_sign_in!' do
context 'with an existing user' do
let!(:user) { Fabricate :user, last_sign_in_at: 10.days.ago, current_sign_in_at: 1.hour.ago, sign_in_count: 123 }