modreports: fix exception when searching by recipient_name.

This commit is contained in:
evazion
2022-09-25 15:06:08 -05:00
parent 34057b25e1
commit c154ce64fc
2 changed files with 5 additions and 3 deletions

View File

@@ -87,9 +87,9 @@ class ModerationReport < ApplicationRecord
q = search_attributes(params, [:id, :created_at, :updated_at, :reason, :creator, :model, :status], current_user: current_user)
if params[:recipient_id].present?
q = q.received_by(User.search(id: params[:recipient_id]))
q = q.received_by(User.search({ id: params[:recipient_id] }, current_user))
elsif params[:recipient_name].present?
q = q.received_by(User.search(name_matches: params[:recipient_name]))
q = q.received_by(User.search({ name_matches: params[:recipient_name] }, current_user))
end
q.apply_default_order(params)

View File

@@ -4,7 +4,7 @@ class ModerationReportsControllerTest < ActionDispatch::IntegrationTest
context "The moderation reports controller" do
setup do
@user = create(:user, created_at: 2.weeks.ago)
@spammer = create(:user, created_at: 2.weeks.ago)
@spammer = create(:user, id: 5678, name: "spammer", created_at: 2.weeks.ago)
@mod = create(:moderator_user, created_at: 2.weeks.ago)
as(@spammer) do
@@ -70,6 +70,8 @@ class ModerationReportsControllerTest < ActionDispatch::IntegrationTest
should respond_to_search({}).with { [@dmail_report, @forum_report, @comment_report] }
should respond_to_search(reason_matches: "spam").with { @dmail_report }
should respond_to_search(recipient_id: 5678).with { [@dmail_report, @forum_report, @comment_report] }
should respond_to_search(recipient_name: "spammer").with { [@dmail_report, @forum_report, @comment_report] }
context "using includes" do
should respond_to_search(model_id: 1234).with { @comment_report }