|
|
|
@ -451,35 +451,32 @@ RSpec.describe User do
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
describe '#mark_email_as_confirmed!' do
|
|
|
|
|
subject(:user) { Fabricate(:user, confirmed_at: confirmed_at) }
|
|
|
|
|
subject { user.mark_email_as_confirmed! }
|
|
|
|
|
|
|
|
|
|
before do
|
|
|
|
|
ActionMailer::Base.deliveries.clear
|
|
|
|
|
user.mark_email_as_confirmed!
|
|
|
|
|
end
|
|
|
|
|
let!(:user) { Fabricate(:user, confirmed_at: confirmed_at) }
|
|
|
|
|
|
|
|
|
|
before { ActionMailer::Base.deliveries.clear }
|
|
|
|
|
|
|
|
|
|
after { ActionMailer::Base.deliveries.clear }
|
|
|
|
|
|
|
|
|
|
context 'when user is new' do
|
|
|
|
|
let(:confirmed_at) { nil }
|
|
|
|
|
|
|
|
|
|
it 'confirms user' do
|
|
|
|
|
expect(user.confirmed_at).to be_present
|
|
|
|
|
end
|
|
|
|
|
it 'confirms user and delivers welcome email', :sidekiq_inline do
|
|
|
|
|
subject
|
|
|
|
|
|
|
|
|
|
it 'delivers mails', :sidekiq_inline do
|
|
|
|
|
expect(ActionMailer::Base.deliveries.count).to eq 2
|
|
|
|
|
expect(user.confirmed_at).to be_present
|
|
|
|
|
expect(ActionMailer::Base.deliveries.count).to eq 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
context 'when user is not new' do
|
|
|
|
|
let(:confirmed_at) { Time.zone.now }
|
|
|
|
|
|
|
|
|
|
it 'confirms user' do
|
|
|
|
|
expect(user.confirmed_at).to be_present
|
|
|
|
|
end
|
|
|
|
|
it 'confirms user but does not deliver welcome email' do
|
|
|
|
|
subject
|
|
|
|
|
|
|
|
|
|
it 'does not deliver mail' do
|
|
|
|
|
expect(user.confirmed_at).to be_present
|
|
|
|
|
expect(ActionMailer::Base.deliveries.count).to eq 0
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|