mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 16:21:18 +08:00
FIX: purge unactivated users with a message from non-human users
This commit is contained in:
@ -1257,26 +1257,34 @@ describe User do
|
||||
let!(:user) { Fabricate(:user) }
|
||||
let!(:unactivated) { Fabricate(:user, active: false) }
|
||||
let!(:unactivated_old) { Fabricate(:user, active: false, created_at: 1.month.ago) }
|
||||
let!(:unactivated_old_with_pm) { Fabricate(:user, active: false, created_at: 2.months.ago) }
|
||||
let!(:unactivated_old_with_system_pm) { Fabricate(:user, active: false, created_at: 2.months.ago) }
|
||||
let!(:unactivated_old_with_human_pm) { Fabricate(:user, active: false, created_at: 2.months.ago) }
|
||||
|
||||
before do
|
||||
PostCreator.new(Discourse.system_user,
|
||||
title: "Welcome to our Discourse",
|
||||
raw: "This is a welcome message",
|
||||
archetype: Archetype.private_message,
|
||||
target_usernames: [unactivated_old_with_pm.username],
|
||||
target_usernames: [unactivated_old_with_system_pm.username],
|
||||
).create
|
||||
|
||||
PostCreator.new(user,
|
||||
title: "Welcome to our Discourse",
|
||||
raw: "This is a welcome message",
|
||||
archetype: Archetype.private_message,
|
||||
target_usernames: [unactivated_old_with_human_pm.username],
|
||||
).create
|
||||
end
|
||||
|
||||
it 'should only remove old, unactivated users' do
|
||||
User.purge_unactivated
|
||||
expect(User.real.all).to match_array([user, unactivated, unactivated_old_with_pm])
|
||||
expect(User.real.all).to match_array([user, unactivated, unactivated_old_with_human_pm])
|
||||
end
|
||||
|
||||
it "does nothing if purge_unactivated_users_grace_period_days is 0" do
|
||||
SiteSetting.purge_unactivated_users_grace_period_days = 0
|
||||
User.purge_unactivated
|
||||
expect(User.real.all).to match_array([user, unactivated, unactivated_old, unactivated_old_with_pm])
|
||||
expect(User.real.all).to match_array([user, unactivated, unactivated_old, unactivated_old_with_system_pm, unactivated_old_with_human_pm])
|
||||
end
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user