FIX: Do not change tracked categories for staged users (#10076)

This commit is contained in:
Bianca Nenciu
2020-06-18 21:09:54 +03:00
committed by GitHub
parent d13d5e2b99
commit a1df68d4c4
2 changed files with 20 additions and 13 deletions

View File

@ -97,8 +97,9 @@ describe Admin::SiteSettingsController do
end
describe 'default categories' do
let(:user1) { Fabricate(:user) }
let(:user2) { Fabricate(:user) }
fab!(:user1) { Fabricate(:user) }
fab!(:user2) { Fabricate(:user) }
fab!(:staged_user) { Fabricate(:staged) }
let(:watching) { NotificationLevels.all[:watching] }
let(:tracking) { NotificationLevels.all[:tracking] }
@ -120,7 +121,7 @@ describe Admin::SiteSettingsController do
}
expect(CategoryUser.where(category_id: category_ids.first, notification_level: watching).count).to eq(0)
expect(CategoryUser.where(category_id: category_ids.last, notification_level: watching).count).to eq(User.count - 1)
expect(CategoryUser.where(category_id: category_ids.last, notification_level: watching).count).to eq(User.real.where(staged: false).count - 1)
end
it 'should not update existing users user preference' do
@ -135,8 +136,9 @@ describe Admin::SiteSettingsController do
end
describe 'default tags' do
let(:user1) { Fabricate(:user) }
let(:user2) { Fabricate(:user) }
fab!(:user1) { Fabricate(:user) }
fab!(:user2) { Fabricate(:user) }
fab!(:staged_user) { Fabricate(:staged) }
let(:watching) { NotificationLevels.all[:watching] }
let(:tracking) { NotificationLevels.all[:tracking] }
@ -158,7 +160,7 @@ describe Admin::SiteSettingsController do
}
expect(TagUser.where(tag_id: tags.first.id, notification_level: watching).count).to eq(0)
expect(TagUser.where(tag_id: tags.last.id, notification_level: watching).count).to eq(User.count - 1)
expect(TagUser.where(tag_id: tags.last.id, notification_level: watching).count).to eq(User.real.where(staged: false).count - 1)
end
it 'should not update existing users user preference' do
@ -173,7 +175,8 @@ describe Admin::SiteSettingsController do
end
describe '#user_count' do
let(:user) { Fabricate(:user) }
fab!(:user) { Fabricate(:user) }
fab!(:staged_user) { Fabricate(:staged) }
let(:tracking) { NotificationLevels.all[:tracking] }
it 'should return correct user count for default categories change' do
@ -183,7 +186,7 @@ describe Admin::SiteSettingsController do
default_categories_watching: category_id
}
expect(response.parsed_body["user_count"]).to eq(User.count)
expect(response.parsed_body["user_count"]).to eq(User.real.where(staged: false).count)
CategoryUser.create!(category_id: category_id, notification_level: tracking, user: user)
@ -191,7 +194,7 @@ describe Admin::SiteSettingsController do
default_categories_watching: category_id
}
expect(response.parsed_body["user_count"]).to eq(User.count - 1)
expect(response.parsed_body["user_count"]).to eq(User.real.where(staged: false).count - 1)
SiteSetting.setting(:default_categories_watching, "")
end
@ -203,7 +206,7 @@ describe Admin::SiteSettingsController do
default_tags_watching: tag.name
}
expect(response.parsed_body["user_count"]).to eq(User.count)
expect(response.parsed_body["user_count"]).to eq(User.real.where(staged: false).count)
TagUser.create!(tag_id: tag.id, notification_level: tracking, user: user)
@ -211,7 +214,7 @@ describe Admin::SiteSettingsController do
default_tags_watching: tag.name
}
expect(response.parsed_body["user_count"]).to eq(User.count - 1)
expect(response.parsed_body["user_count"]).to eq(User.real.where(staged: false).count - 1)
SiteSetting.setting(:default_tags_watching, "")
end