Commit a59fe739fe05bcdf0eed06f1aea276a1236c32d2

Authored by Dmitriy Zaporozhets
1 parent 977146f5

IMprove MR validation logic

Showing 1 changed file with 4 additions and 1 deletions   Show diff stats
app/models/merge_request.rb
... ... @@ -92,7 +92,10 @@ class MergeRequest < ActiveRecord::Base
92 92 errors.add :branch_conflict, "You can not use same branch for source and target branches"
93 93 end
94 94  
95   - if self.project.merge_requests.where(source_branch: source_branch, target_branch: target_branch).opened.any?
  95 + similar_mrs = self.project.merge_requests.where(source_branch: source_branch, target_branch: target_branch).opened
  96 + similar_mrs = similar_mrs.where('id not in (?)', self.id) if self.id
  97 +
  98 + if similar_mrs.any?
96 99 errors.add :base, "There is already an open merge request for this branches"
97 100 end
98 101 end
... ...