mirror of
https://github.com/discourse/discourse.git
synced 2025-03-10 07:07:24 +08:00
FIX: don't flag watched words when rebaking posts
This commit is contained in:
parent
c383cf82a7
commit
c53f41f4f2
@ -41,7 +41,7 @@ module Jobs
|
|||||||
if !post.user.staff? && !post.user.staged
|
if !post.user.staff? && !post.user.staged
|
||||||
s = post.cooked
|
s = post.cooked
|
||||||
s << " #{post.topic.title}" if post.post_number == 1
|
s << " #{post.topic.title}" if post.post_number == 1
|
||||||
if WordWatcher.new(s).should_flag?
|
if !args[:bypass_bump] && WordWatcher.new(s).should_flag?
|
||||||
PostAction.act(Discourse.system_user, post, PostActionType.types[:inappropriate]) rescue PostAction::AlreadyActed
|
PostAction.act(Discourse.system_user, post, PostActionType.types[:inappropriate]) rescue PostAction::AlreadyActed
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -169,5 +169,13 @@ describe WatchedWord do
|
|||||||
}.to change { PostAction.count }.by(1)
|
}.to change { PostAction.count }.by(1)
|
||||||
expect(PostAction.where(post_id: post.id, post_action_type_id: PostActionType.types[:inappropriate]).exists?).to eq(true)
|
expect(PostAction.where(post_id: post.id, post_action_type_id: PostActionType.types[:inappropriate]).exists?).to eq(true)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "should not flag on rebake" do
|
||||||
|
post = Fabricate(:post, topic: Fabricate(:topic, user: tl2_user), user: tl2_user, raw: "I have coupon codes. Message me.")
|
||||||
|
Fabricate(:watched_word, action: WatchedWord.actions[:flag], word: "coupon")
|
||||||
|
expect {
|
||||||
|
post.rebake!
|
||||||
|
}.to_not change { PostAction.count }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user