search: add disapproval:<any|none|disinterest|poor_quality|breaks_rules> metatag.

This commit is contained in:
evazion
2018-08-23 14:08:02 -05:00
parent db23e06a4f
commit 89c4fe150a
5 changed files with 64 additions and 2 deletions

View File

@@ -2308,6 +2308,24 @@ class PostTest < ActiveSupport::TestCase
end
end
should "return posts for a disapproval:<type> metatag" do
CurrentUser.scoped(FactoryBot.create(:mod_user)) do
pending = FactoryBot.create(:post, is_pending: true)
disapproved = FactoryBot.create(:post, is_pending: true)
disapproval = FactoryBot.create(:post_disapproval, post: disapproved, reason: "disinterest")
assert_tag_match([pending], "disapproval:none")
assert_tag_match([disapproved], "disapproval:any")
assert_tag_match([disapproved], "disapproval:disinterest")
assert_tag_match([], "disapproval:breaks_rules")
assert_tag_match([disapproved], "-disapproval:none")
assert_tag_match([pending], "-disapproval:any")
assert_tag_match([pending], "-disapproval:disinterest")
assert_tag_match([disapproved, pending], "-disapproval:breaks_rules")
end
end
should "return posts ordered by a particular attribute" do
posts = (1..2).map do |n|
tags = ["tagme", "gentag1 gentag2 artist:arttag char:chartag copy:copytag"]