summaryrefslogtreecommitdiff
path: root/app/models/issue.rb
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-15 20:17:51 +0100
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-15 21:59:25 +0100
commit48274581551b73575149463be0c050f6b5a564ee (patch)
treeb0a73eafdff2a6d5434c6a0b3dc1c5fbeafe74fb /app/models/issue.rb
parent2b97c921196a7be904bfe4f0a31347c3583c9e88 (diff)
downloadgitlab-ce-48274581551b73575149463be0c050f6b5a564ee.tar.gz
Incorporate the review and update spec
The feature spec now also tests the absence of the new branch button
Diffstat (limited to 'app/models/issue.rb')
-rw-r--r--app/models/issue.rb22
1 files changed, 11 insertions, 11 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb
index ec275d5f5b5..781298a63b2 100644
--- a/app/models/issue.rb
+++ b/app/models/issue.rb
@@ -87,20 +87,20 @@ class Issue < ActiveRecord::Base
end
def referenced_merge_requests(current_user = nil)
- if defined?(@referenced_merge_requests)
- @referenced_merge_requests[current_user] ||= Gitlab::ReferenceExtractor.lazily do
- [self, *notes].flat_map do |note|
- note.all_references(current_user).merge_requests
- end
- end.sort_by(&:iid).uniq
- else
- @referenced_merge_requests = {}
- referenced_merge_requests(current_user)
+ @referenced_merge_requests ||= {}
+ @referenced_merge_requests[current_user] ||= begin
+ Gitlab::ReferenceExtractor.lazily do
+ [self, *notes].flat_map do |note|
+ note.all_references(current_user).merge_requests
+ end
+ end.sort_by(&:iid).uniq
end
end
def related_branches
- self.project.repository.branch_names.select { |branch| branch.start_with? "#{iid}-" }
+ self.project.repository.branch_names.select do |branch|
+ branch =~ /\A#{iid}-(?!\d+-stable)/i
+ end
end
# Reset issue events cache
@@ -138,6 +138,6 @@ class Issue < ActiveRecord::Base
!self.closed? &&
!self.project.forked? &&
self.related_branches.empty? &&
- self.referenced_merge_requests(current_user).empty?
+ self.closed_by_merge_requests(current_user).empty?
end
end