Rename Routable.where_paths_in to Routable.where_full_path_in
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
d7010fdcd7
commit
3e0b8e000f
3 changed files with 9 additions and 9 deletions
|
@ -29,17 +29,17 @@ module Routable
|
|||
|
||||
order_sql = "(CASE WHEN #{binary} routes.path = #{connection.quote(path)} THEN 0 ELSE 1 END)"
|
||||
|
||||
where_paths_in([path]).reorder(order_sql).take
|
||||
where_full_path_in([path]).reorder(order_sql).take
|
||||
end
|
||||
|
||||
# Builds a relation to find multiple objects by their full paths.
|
||||
#
|
||||
# Usage:
|
||||
#
|
||||
# Klass.where_paths_in(%w{gitlab-org/gitlab-ce gitlab-org/gitlab-ee})
|
||||
# Klass.where_full_path_in(%w{gitlab-org/gitlab-ce gitlab-org/gitlab-ee})
|
||||
#
|
||||
# Returns an ActiveRecord::Relation.
|
||||
def where_paths_in(paths)
|
||||
def where_full_path_in(paths)
|
||||
wheres = []
|
||||
cast_lower = Gitlab::Database.postgresql?
|
||||
|
||||
|
|
|
@ -248,7 +248,7 @@ module Banzai
|
|||
end
|
||||
|
||||
def projects_relation_for_paths(paths)
|
||||
Project.where_paths_in(paths).includes(:namespace)
|
||||
Project.where_full_path_in(paths).includes(:namespace)
|
||||
end
|
||||
|
||||
# Returns projects for the given paths.
|
||||
|
|
|
@ -39,16 +39,16 @@ describe Group, 'Routable' do
|
|||
it { expect(described_class.find_by_full_path('unknown')).to eq(nil) }
|
||||
end
|
||||
|
||||
describe '.where_paths_in' do
|
||||
describe '.where_full_path_in' do
|
||||
context 'without any paths' do
|
||||
it 'returns an empty relation' do
|
||||
expect(described_class.where_paths_in([])).to eq([])
|
||||
expect(described_class.where_full_path_in([])).to eq([])
|
||||
end
|
||||
end
|
||||
|
||||
context 'without any valid paths' do
|
||||
it 'returns an empty relation' do
|
||||
expect(described_class.where_paths_in(%w[unknown])).to eq([])
|
||||
expect(described_class.where_full_path_in(%w[unknown])).to eq([])
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -56,13 +56,13 @@ describe Group, 'Routable' do
|
|||
let!(:nested_group) { create(:group, parent: group) }
|
||||
|
||||
it 'returns the projects matching the paths' do
|
||||
result = described_class.where_paths_in([group.to_param, nested_group.to_param])
|
||||
result = described_class.where_full_path_in([group.to_param, nested_group.to_param])
|
||||
|
||||
expect(result).to contain_exactly(group, nested_group)
|
||||
end
|
||||
|
||||
it 'returns projects regardless of the casing of paths' do
|
||||
result = described_class.where_paths_in([group.to_param.upcase, nested_group.to_param.upcase])
|
||||
result = described_class.where_full_path_in([group.to_param.upcase, nested_group.to_param.upcase])
|
||||
|
||||
expect(result).to contain_exactly(group, nested_group)
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue