mirror of
https://gitlab.com/gitlab-org/gitlab-foss.git
synced 2025-08-20 14:11:11 +00:00
Stop using branch_names.include?
and use branch_exists?
This commit is contained in:

committed by
Rémy Coutable

parent
900dd7fa93
commit
47d19c2de1
@ -4,8 +4,8 @@ module CompareHelper
|
||||
to.present? &&
|
||||
from != to &&
|
||||
can?(current_user, :create_merge_request, project) &&
|
||||
project.repository.branch_names.include?(from) &&
|
||||
project.repository.branch_names.include?(to)
|
||||
project.repository.branch_exists?(from) &&
|
||||
project.repository.branch_exists?(to)
|
||||
end
|
||||
|
||||
def create_mr_path(from = params[:from], to = params[:to], project = @project)
|
||||
|
@ -675,13 +675,13 @@ class MergeRequest < ActiveRecord::Base
|
||||
def source_branch_exists?
|
||||
return false unless self.source_project
|
||||
|
||||
self.source_project.repository.branch_names.include?(self.source_branch)
|
||||
self.source_project.repository.branch_exists?(self.source_branch)
|
||||
end
|
||||
|
||||
def target_branch_exists?
|
||||
return false unless self.target_project
|
||||
|
||||
self.target_project.repository.branch_names.include?(self.target_branch)
|
||||
self.target_project.repository.branch_exists?(self.target_branch)
|
||||
end
|
||||
|
||||
def merge_commit_message(include_description: false)
|
||||
|
@ -458,7 +458,7 @@ module QuickActions
|
||||
target_branch_param.strip
|
||||
end
|
||||
command :target_branch do |branch_name|
|
||||
@updates[:target_branch] = branch_name if project.repository.branch_names.include?(branch_name)
|
||||
@updates[:target_branch] = branch_name if project.repository.branch_exists?(branch_name)
|
||||
end
|
||||
|
||||
desc 'Move issue from one column of the board to another'
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
title: Avoid fetching all branches for branch existence checks
|
||||
merge_request: 14778
|
||||
author:
|
||||
type: changed
|
@ -62,7 +62,7 @@ describe Projects::BranchesController do
|
||||
let(:branch) { "feature%2Ftest" }
|
||||
let(:ref) { "<script>alert('ref');</script>" }
|
||||
it { is_expected.to render_template('new') }
|
||||
it { project.repository.branch_names.include?('feature/test') }
|
||||
it { project.repository.branch_exists?('feature/test') }
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -118,7 +118,7 @@ feature 'issuable templates', :js do
|
||||
context 'user creates a merge request from a forked project using templates' do
|
||||
let(:template_content) { 'this is a test "feature-proposal" template' }
|
||||
let(:fork_user) { create(:user) }
|
||||
let(:forked_project) { fork_project(project, fork_user) }
|
||||
let(:forked_project) { fork_project(project, fork_user, repository: true) }
|
||||
let(:merge_request) { create(:merge_request, :with_diffs, source_project: forked_project, target_project: project) }
|
||||
|
||||
background do
|
||||
|
@ -6,7 +6,7 @@ describe 'User views an open merge request' do
|
||||
end
|
||||
|
||||
context 'when a merge request does not have repository' do
|
||||
let(:project) { create(:project, :public) }
|
||||
let(:project) { create(:project, :public, :repository) }
|
||||
|
||||
before do
|
||||
visit(merge_request_path(merge_request))
|
||||
|
@ -3,7 +3,7 @@ require 'spec_helper'
|
||||
feature 'Task Lists' do
|
||||
include Warden::Test::Helpers
|
||||
|
||||
let(:project) { create(:project) }
|
||||
let(:project) { create(:project, :repository) }
|
||||
let(:user) { create(:user) }
|
||||
let(:user2) { create(:user) }
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe MergeRequestEntity do
|
||||
let(:project) { create :project }
|
||||
let(:project) { create :project, :repository }
|
||||
let(:resource) { create(:merge_request, source_project: project, target_project: project) }
|
||||
let(:user) { create(:user) }
|
||||
|
||||
|
Reference in New Issue
Block a user