Merge pull request #2855 from evazion/feat-comment-metatags

Add order:comment_bumped, order:comment_bumped_asc metatags.
This commit is contained in:
Albert Yi
2017-01-23 11:22:17 -08:00
committed by GitHub
3 changed files with 23 additions and 1 deletions

View File

@@ -316,6 +316,7 @@
"favcount", "favcount_asc",
"change", "change_asc",
"comment", "comment_asc",
"comment_bumped", "comment_bumped_asc",
"note", "note_asc",
"artcomm", "artcomm_asc",
"mpixels", "mpixels_asc",

View File

@@ -415,7 +415,13 @@ class PostQueryBuilder
relation = relation.order("posts.last_commented_at DESC NULLS LAST, posts.id DESC")
when "comment_asc", "comm_asc"
relation = relation.order("posts.last_commented_at ASC NULLS FIRST, posts.id DESC")
relation = relation.order("posts.last_commented_at ASC NULLS LAST, posts.id DESC")
when "comment_bumped"
relation = relation.order("posts.last_comment_bumped_at DESC NULLS LAST, posts.id DESC")
when "comment_bumped_asc"
relation = relation.order("posts.last_comment_bumped_at ASC NULLS LAST, posts.id DESC")
when "note"
relation = relation.order("posts.last_noted_at DESC NULLS LAST, posts.id DESC")

View File

@@ -1797,6 +1797,21 @@ class PostTest < ActiveSupport::TestCase
assert_equal(post3.id, relation.first.id)
end
should "return posts for order:comment_bumped" do
post1 = FactoryGirl.create(:post)
post2 = FactoryGirl.create(:post)
post3 = FactoryGirl.create(:post)
CurrentUser.scoped(FactoryGirl.create(:gold_user), "127.0.0.1") do
comment1 = FactoryGirl.create(:comment, :post => post1)
comment2 = FactoryGirl.create(:comment, :post => post2, :do_not_bump_post => true)
comment3 = FactoryGirl.create(:comment, :post => post3)
end
assert_equal([post3.id, post1.id, post2.id], Post.tag_match("order:comment_bumped").map(&:id))
assert_equal([post1.id, post3.id, post2.id], Post.tag_match("order:comment_bumped_asc").map(&:id))
end
should "return posts for a filesize search" do
post = FactoryGirl.create(:post, :file_size => 1.megabyte)
assert_equal(1, Post.tag_match("filesize:1mb").count)