Update the email copies for account deletion emails ## Manual Deletion <img width="1378" height="678" alt="Screenshot 2025-08-29 at 2 41 40 PM" src="https://github.com/user-attachments/assets/63d7ad97-ad51-4a8b-9ef3-d427fa467f8a" /> ## Inactive Deletion <img width="2946" height="1808" alt="image" src="https://github.com/user-attachments/assets/bb50d08c-8701-4f93-af29-0b1d948a4009" /> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Sojan Jose <sojan@pepalo.com>
47 lines
1.7 KiB
Ruby
47 lines
1.7 KiB
Ruby
require 'rails_helper'
|
|
|
|
RSpec.describe AdministratorNotifications::AccountNotificationMailer do
|
|
let(:account) { create(:account, name: 'Test Account') }
|
|
let(:mailer) { described_class.with(account: account) }
|
|
let(:class_instance) { described_class.new }
|
|
|
|
before do
|
|
allow(described_class).to receive(:new).and_return(class_instance)
|
|
allow(class_instance).to receive(:smtp_config_set_or_development?).and_return(true)
|
|
account.custom_attributes['marked_for_deletion_at'] = 7.days.from_now.iso8601
|
|
account.save!
|
|
end
|
|
|
|
describe '#account_deletion_user_initiated' do
|
|
it 'sets the correct subject for user-initiated deletion' do
|
|
mail = mailer.account_deletion_user_initiated(account, 'manual_deletion')
|
|
expect(mail.subject).to eq('Your Chatwoot account deletion has been scheduled')
|
|
end
|
|
end
|
|
|
|
describe '#account_deletion_for_inactivity' do
|
|
it 'sets the correct subject for system-initiated deletion' do
|
|
mail = mailer.account_deletion_for_inactivity(account, 'Account Inactive')
|
|
expect(mail.subject).to eq('Your Chatwoot account is scheduled for deletion due to inactivity')
|
|
end
|
|
end
|
|
|
|
describe '#format_deletion_date' do
|
|
it 'formats a valid date string' do
|
|
date_str = '2024-12-31T23:59:59Z'
|
|
formatted = described_class.new.send(:format_deletion_date, date_str)
|
|
expect(formatted).to eq('December 31, 2024')
|
|
end
|
|
|
|
it 'handles blank dates' do
|
|
formatted = described_class.new.send(:format_deletion_date, nil)
|
|
expect(formatted).to eq('Unknown')
|
|
end
|
|
|
|
it 'handles invalid dates' do
|
|
formatted = described_class.new.send(:format_deletion_date, 'invalid-date')
|
|
expect(formatted).to eq('Unknown')
|
|
end
|
|
end
|
|
end
|