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 14 end
15 15 not_found!
16 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 25 end
18 26  
19 27 # List merge requests
... ... @@ -69,13 +77,16 @@ module API
69 77 merge_request.author = current_user
70 78 merge_request.source_project = user_project
71 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 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 88 end
  89 +
79 90 if merge_request.save
80 91 merge_request.reload_code
81 92 present merge_request, with: Entities::MergeRequest
... ...
lib/gitlab/satellite/satellite.rb
... ... @@ -130,7 +130,6 @@ module Gitlab
130 130 repo.git.fetch(default_options, :origin)
131 131 end
132 132  
133   -
134 133 def default_options(options = {})
135 134 {raise: true, timeout: true}.merge(options)
136 135 end
... ...
spec/models/merge_request_spec.rb
... ... @@ -83,7 +83,6 @@ describe MergeRequest do
83 83 end
84 84 end
85 85  
86   -
87 86 describe '#allow_source_branch_removal?' do
88 87 it 'should not allow removal when mr is a fork' do
89 88  
... ...