# frozen_string_literal: true RSpec.describe ReviewablesController do fab!(:post1) { Fabricate(:post) } fab!(:post2) { Fabricate(:post) } fab!(:admin) fab!(:llm_model) fab!(:reviewable) do Reviewable.create!( target: post1, topic: post2.topic, type: ReviewablePost, created_by: admin, status: Reviewable.statuses[:pending], ) end fab!(:reviewable2) do Reviewable.create!( target: post2, topic: post2.topic, type: ReviewablePost, created_by: admin, status: Reviewable.statuses[:pending], ) end fab!(:ai_spam_log_missed) do AiSpamLog.create!(is_spam: false, post_id: post1.id, llm_model_id: llm_model.id) end # we amend the behavior with a custom filter so we need to confirm it works it "properly applies custom filter" do sign_in(admin) get '/review.json?additional_filters={"ai_spam_false_negative":true}' expect(response.status).to eq(200) json = JSON.parse(response.body) expect(json["reviewables"].length).to eq(1) get "/review.json" expect(response.status).to eq(200) json = JSON.parse(response.body) expect(json["reviewables"].length).to eq(2) end end