mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
FIX: Don't allow staff to approve users with unverified emails
This commit is contained in:
@ -100,18 +100,20 @@ describe AdminUserIndexQuery do
|
||||
|
||||
describe "with a pending user" do
|
||||
|
||||
let!(:user) { Fabricate(:user, approved: false) }
|
||||
let!(:user) { Fabricate(:user, active: true, approved: false) }
|
||||
let!(:inactive_user) { Fabricate(:user, approved: false, active: false) }
|
||||
|
||||
it "finds the unapproved user" do
|
||||
query = ::AdminUserIndexQuery.new(query: 'pending')
|
||||
expect(query.find_users.count).to eq(1)
|
||||
expect(query.find_users).to include(user)
|
||||
expect(query.find_users).not_to include(inactive_user)
|
||||
end
|
||||
|
||||
context 'and a suspended pending user' do
|
||||
let!(:suspended_user) { Fabricate(:user, approved: false, suspended_at: 1.hour.ago, suspended_till: 20.years.from_now) }
|
||||
it "doesn't return the suspended user" do
|
||||
query = ::AdminUserIndexQuery.new(query: 'pending')
|
||||
expect(query.find_users.count).to eq(1)
|
||||
expect(query.find_users).not_to include(suspended_user)
|
||||
end
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user