BURs: don't add [APPROVED] / [REJECTED] tags to titles.

This commit is contained in:
evazion
2020-03-10 21:02:12 -05:00
parent 0e7632ed8a
commit be585060f4
3 changed files with 8 additions and 25 deletions

View File

@@ -1,18 +1,16 @@
class ForumUpdater
attr_reader :forum_topic, :forum_post, :expected_title
attr_reader :forum_topic, :forum_post
def initialize(forum_topic, options = {})
@forum_topic = forum_topic
@forum_post = options[:forum_post]
@expected_title = options[:expected_title]
end
def update(message, title_tag = nil)
def update(message)
return if forum_topic.nil?
CurrentUser.scoped(User.system) do
create_response(message)
update_title(title_tag) if title_tag
if forum_post
update_post(message)
@@ -24,12 +22,6 @@ class ForumUpdater
forum_topic.posts.create(body: body, skip_mention_notifications: true, creator: User.system)
end
def update_title(title_tag)
if forum_topic.title == expected_title
forum_topic.update(:title => "[#{title_tag}] #{forum_topic.title}")
end
end
def update_post(body)
forum_post.update(body: "#{forum_post.body}\n\nEDIT: #{body}", skip_mention_notifications: true)
end

View File

@@ -64,11 +64,7 @@ class BulkUpdateRequest < ApplicationRecord
else
nil
end
ForumUpdater.new(
forum_topic,
forum_post: post,
expected_title: title
)
ForumUpdater.new(forum_topic, forum_post: post)
end
end
@@ -77,13 +73,13 @@ class BulkUpdateRequest < ApplicationRecord
CurrentUser.scoped(approver) do
AliasAndImplicationImporter.new(script, forum_topic_id, "1", true).process!
update!(status: "approved", approver: approver, skip_secondary_validations: true)
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has been approved by @#{approver.name}.", "APPROVED")
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has been approved by @#{approver.name}.")
end
end
rescue AliasAndImplicationImporter::Error => x
self.approver = approver
CurrentUser.scoped(approver) do
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has failed: #{x}", "FAILED")
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has failed: #{x}")
end
end
@@ -98,7 +94,7 @@ class BulkUpdateRequest < ApplicationRecord
def reject!(rejector = User.system)
transaction do
update(status: "rejected")
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has been rejected by @#{rejector.name}.", "REJECTED")
forum_updater.update("The #{bulk_update_request_link} (forum ##{forum_post.id}) has been rejected by @#{rejector.name}.")
end
end

View File

@@ -164,7 +164,6 @@ class BulkUpdateRequestTest < ActiveSupport::TestCase
end
assert_equal("pending", @req.reload.status)
assert_match(/\[FAILED\]/, @topic.reload.title)
end
should "leave the BUR pending if there is an unexpected error during approval" do
@@ -188,9 +187,7 @@ class BulkUpdateRequestTest < ActiveSupport::TestCase
@req.approve!(@admin)
end
@topic.reload
@post.reload
assert_match(/\[APPROVED\]/, @topic.title)
assert_match(/approved/, @post.reload.body)
end
should "update the topic when rejected" do
@@ -200,9 +197,7 @@ class BulkUpdateRequestTest < ActiveSupport::TestCase
@req.reject!(@admin)
end
@topic.reload
@post.reload
assert_match(/\[REJECTED\]/, @topic.title)
assert_match(/rejected/, @post.reload.body)
end
should "reference the rejector in the automated message" do