Commit fae3f466151ac8ee9f9e0e496669be8a9e649120

Authored by Izaak Alpert
1 parent 539c70c7

Refactor merge api create

-Made the api method a little more readable
-removed some missed extra newline's

Change-Id: Ic38baafc813aaeda0a8b283f39916182c8ec37d5
lib/api/merge_requests.rb
@@ -14,6 +14,14 @@ module API @@ -14,6 +14,14 @@ module API
14 end 14 end
15 not_found! 15 not_found!
16 end 16 end
  17 +
  18 + def not_fork?(target_project_id, user_project)
  19 + target_project_id.nil? || target_project_id == user_project.id.to_s
  20 + end
  21 +
  22 + def target_matches_fork(target_project_id,user_project)
  23 + user_project.forked? && user_project.forked_from_project.id.to_s == target_project_id
  24 + end
17 end 25 end
18 26
19 # List merge requests 27 # List merge requests
@@ -69,13 +77,16 @@ module API @@ -69,13 +77,16 @@ module API
69 merge_request.author = current_user 77 merge_request.author = current_user
70 merge_request.source_project = user_project 78 merge_request.source_project = user_project
71 target_project_id = attrs[:target_project_id] 79 target_project_id = attrs[:target_project_id]
72 - if !target_project_id.nil? && user_project.forked? && user_project.forked_from_project.id.to_s == target_project_id  
73 - merge_request.target_project = Project.find_by_id(attrs[:target_project_id])  
74 - elsif target_project_id.nil? || target_project_id == user_project.id.to_s 80 + if not_fork?(target_project_id, user_project)
75 merge_request.target_project = user_project 81 merge_request.target_project = user_project
76 - elsif !target_project_id.nil?  
77 - render_api_error!('(Bad Request) Specified target project that is not the source project, or the source fork of the project.', 400) 82 + else
  83 + if target_matches_fork(target_project_id,user_project)
  84 + merge_request.target_project = Project.find_by_id(attrs[:target_project_id])
  85 + else
  86 + render_api_error!('(Bad Request) Specified target project that is not the source project, or the source fork of the project.', 400)
  87 + end
78 end 88 end
  89 +
79 if merge_request.save 90 if merge_request.save
80 merge_request.reload_code 91 merge_request.reload_code
81 present merge_request, with: Entities::MergeRequest 92 present merge_request, with: Entities::MergeRequest
lib/gitlab/satellite/satellite.rb
@@ -130,7 +130,6 @@ module Gitlab @@ -130,7 +130,6 @@ module Gitlab
130 repo.git.fetch(default_options, :origin) 130 repo.git.fetch(default_options, :origin)
131 end 131 end
132 132
133 -  
134 def default_options(options = {}) 133 def default_options(options = {})
135 {raise: true, timeout: true}.merge(options) 134 {raise: true, timeout: true}.merge(options)
136 end 135 end
spec/models/merge_request_spec.rb
@@ -83,7 +83,6 @@ describe MergeRequest do @@ -83,7 +83,6 @@ describe MergeRequest do
83 end 83 end
84 end 84 end
85 85
86 -  
87 describe '#allow_source_branch_removal?' do 86 describe '#allow_source_branch_removal?' do
88 it 'should not allow removal when mr is a fork' do 87 it 'should not allow removal when mr is a fork' do
89 88