BURs: make the reason required.
This commit is contained in:
@@ -10,6 +10,7 @@ class BulkUpdateRequest < ApplicationRecord
|
||||
|
||||
before_validation :normalize_text
|
||||
before_validation :update_tags
|
||||
validates_presence_of :reason, on: :create
|
||||
validates_presence_of :script
|
||||
validates_presence_of :title, if: ->(rec) {rec.forum_topic_id.blank?}
|
||||
validates_presence_of :forum_topic, if: ->(rec) {rec.forum_topic_id.present?}
|
||||
|
||||
@@ -3,6 +3,7 @@ FactoryBot.define do
|
||||
user
|
||||
title {"xxx"}
|
||||
script {"create alias aaa -> bbb"}
|
||||
reason { FFaker::Lorem.sentences.join(" ") }
|
||||
skip_secondary_validations {true}
|
||||
end
|
||||
end
|
||||
|
||||
@@ -25,10 +25,17 @@ class BulkUpdateRequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
context "#create" do
|
||||
should "succeed" do
|
||||
assert_difference("BulkUpdateRequest.count", 1) do
|
||||
post_auth bulk_update_requests_path, @user, params: {bulk_update_request: {skip_secondary_validations: "1", script: "create alias aaa -> bbb", title: "xxx"}}
|
||||
post_auth bulk_update_requests_path, @user, params: { bulk_update_request: attributes_for(:bulk_update_request) }
|
||||
assert_response :redirect
|
||||
end
|
||||
end
|
||||
|
||||
should "fail for a blank reason" do
|
||||
assert_difference("BulkUpdateRequest.count", 0) do
|
||||
post_auth bulk_update_requests_path, @user, params: { bulk_update_request: attributes_for(:bulk_update_request).merge(reason: "") }
|
||||
assert_response :success
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "#update" do
|
||||
|
||||
Reference in New Issue
Block a user