Commit 3f4e215c authored by Sebastian Ziebell's avatar Sebastian Ziebell

Extracted helper method to avoid code duplication

parent 413952ff
...@@ -5,6 +5,23 @@ module Gitlab ...@@ -5,6 +5,23 @@ module Gitlab
resource :projects do resource :projects do
helpers do
# If an error occurred this helper method provides an appropriate status code
#
# Parameters:
# merge_request_errors (required) - The errors collection of MR
#
def handle_merge_request_error(merge_request_errors)
if merge_request_errors[:target_branch].any?
error!(merge_request_errors[:target_branch], 400)
elsif merge_request_errors[:source_branch].any?
error!(merge_request_errors[:source_branch], 400)
elsif merge_request_errors[:base].any?
error!(merge_request_errors[:base], 422)
end
end
end
# List merge requests # List merge requests
# #
# Parameters: # Parameters:
...@@ -60,13 +77,7 @@ module Gitlab ...@@ -60,13 +77,7 @@ module Gitlab
merge_request.reload_code merge_request.reload_code
present merge_request, with: Entities::MergeRequest present merge_request, with: Entities::MergeRequest
else else
if merge_request.errors[:target_branch].any? handle_merge_request_error(merge_request.errors)
error!(merge_request.errors[:target_branch], 400)
elsif merge_request.errors[:source_branch].any?
error!(merge_request.errors[:source_branch], 400)
elsif merge_request.errors[:base].any?
error!(merge_request.errors[:base], 422)
end
not_found! not_found!
end end
end end
...@@ -95,13 +106,7 @@ module Gitlab ...@@ -95,13 +106,7 @@ module Gitlab
merge_request.mark_as_unchecked merge_request.mark_as_unchecked
present merge_request, with: Entities::MergeRequest present merge_request, with: Entities::MergeRequest
else else
if merge_request.errors[:target_branch].any? handle_merge_request_error(merge_request.errors)
error!(merge_request.errors[:target_branch], 400)
elsif merge_request.errors[:source_branch].any?
error!(merge_request.errors[:source_branch], 400)
elsif merge_request.errors[:base].any?
error!(merge_request.errors[:base], 422)
end
not_found! not_found!
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment