FEATURE: Hide Reviewable scores, change score filter to Priority

We found score hard to understand. It is still there behind the scenes
for sorting purposes, but it is no longer shown.

You can now filter by minimum priority (low, med, high) instead of
score.
This commit is contained in:
Robin Ward
2019-05-07 13:25:11 -04:00
parent 5b5b5a5931
commit 5af7c90bab
25 changed files with 138 additions and 58 deletions

View File

@@ -65,7 +65,8 @@ describe Jobs::NotifyReviewable do
it "respects visibility" do
SiteSetting.enable_category_group_review = true
SiteSetting.min_score_default_visibility = 2.0
Reviewable.set_priorities(medium: 2.0)
SiteSetting.reviewable_default_visibility = 'medium'
GroupUser.create!(group_id: group.id, user_id: moderator.id)

View File

@@ -56,19 +56,21 @@ describe Jobs::PendingReviewablesReminder do
expect(execute.sent_reminder).to eq(true)
end
context "min_score_default_visibility" do
context "reviewable_default_visibility" do
before do
create_flag(49.hours.ago)
create_flag(51.hours.ago)
end
it "doesn't send a message when min_score_default_visibility is not met" do
SiteSetting.min_score_default_visibility = 3.0
it "doesn't send a message when `reviewable_default_visibility` is not met" do
Reviewable.set_priorities(medium: 3.0)
SiteSetting.reviewable_default_visibility = 'medium'
expect(execute.sent_reminder).to eq(false)
end
it "sends a message when min_score_default_visibility is met" do
SiteSetting.min_score_default_visibility = 2.0
it "sends a message when `reviewable_default_visibility` is met" do
Reviewable.set_priorities(medium: 2.0)
SiteSetting.reviewable_default_visibility = 'medium'
expect(execute.sent_reminder).to eq(true)
end
end

View File

@@ -0,0 +1,21 @@
require 'rails_helper'
describe Jobs::ReviewablePriorities do
it "will set priorities based on the maximum score" do
(1..6).each { |i| Fabricate(:reviewable, score: i) }
Jobs::ReviewablePriorities.new.execute({})
expect(Reviewable.min_score_for_priority('low')).to eq(0.0)
expect(Reviewable.min_score_for_priority('medium')).to eq(3.0)
expect(Reviewable.min_score_for_priority('high')).to eq(5.0)
end
it "will return 0 if no reviewables exist" do
Jobs::ReviewablePriorities.new.execute({})
expect(Reviewable.min_score_for_priority('low')).to eq(0.0)
expect(Reviewable.min_score_for_priority('medium')).to eq(0.0)
expect(Reviewable.min_score_for_priority('high')).to eq(0.0)
end
end