Skip to content
Snippets Groups Projects
Commit 1ce5bcac authored by Heinrich Lee Yu's avatar Heinrich Lee Yu :basketball:
Browse files

Remove code related to object hierarchy in MySQL

These are not required because MySQL is not
supported anymore
parent ba997f3c
No related branches found
No related tags found
No related merge requests found
Showing
with 44 additions and 66 deletions
Loading
Loading
@@ -86,7 +86,7 @@ describe GroupsHelper do
end
end
 
describe 'group_title', :nested_groups do
describe 'group_title' do
let(:group) { create(:group) }
let(:nested_group) { create(:group, parent: group) }
let(:deep_nested_group) { create(:group, parent: nested_group) }
Loading
Loading
@@ -99,7 +99,7 @@ describe GroupsHelper do
end
 
# rubocop:disable Layout/SpaceBeforeComma
describe '#share_with_group_lock_help_text', :nested_groups do
describe '#share_with_group_lock_help_text' do
let!(:root_group) { create(:group) }
let!(:subgroup) { create(:group, parent: root_group) }
let!(:sub_subgroup) { create(:group, parent: subgroup) }
Loading
Loading
@@ -230,7 +230,7 @@ describe GroupsHelper do
end
end
 
describe 'parent_group_options', :nested_groups do
describe 'parent_group_options' do
let(:current_user) { create(:user) }
let(:group) { create(:group, name: 'group') }
let(:group2) { create(:group, name: 'group2') }
Loading
Loading
require 'spec_helper'
 
describe NamespacesHelper, :postgresql do
describe NamespacesHelper do
let!(:admin) { create(:admin) }
let!(:admin_project_creation_level) { nil }
let!(:admin_group) do
Loading
Loading
@@ -109,7 +109,7 @@ describe NamespacesHelper, :postgresql do
expect(options).to include(user_group.name)
end
 
context 'when nested groups are available', :nested_groups do
context 'when nested groups are available' do
it 'includes groups nested in groups the user can administer' do
allow(helper).to receive(:current_user).and_return(user)
child_group = create(:group, :private, parent: user_group)
Loading
Loading
Loading
Loading
@@ -363,7 +363,7 @@ describe Banzai::Filter::MilestoneReferenceFilter do
expect(doc.css('a')).to be_empty
end
 
it 'supports parent group references', :nested_groups do
it 'supports parent group references' do
milestone.update!(group: parent_group)
 
doc = reference_filter("See #{reference}")
Loading
Loading
@@ -396,7 +396,7 @@ describe Banzai::Filter::MilestoneReferenceFilter do
context 'when group milestone' do
let(:group_milestone) { create(:milestone, title: 'group_milestone', group: group) }
 
context 'for subgroups', :nested_groups do
context 'for subgroups' do
let(:sub_group) { create(:group, parent: group) }
let(:sub_group_milestone) { create(:milestone, title: 'sub_group_milestone', group: sub_group) }
 
Loading
Loading
Loading
Loading
@@ -75,7 +75,7 @@ describe Gitlab::BackgroundMigration::FixCrossProjectLabelLinks, :migration, sch
create_resource(target_type, 1, 2)
end
 
it 'ignores label links referencing ancestor group labels', :nested_groups do
it 'ignores label links referencing ancestor group labels' do
labels_table.create(id: 4, title: 'bug', color: 'red', project_id: 2, type: 'ProjectLabel')
label_links_table.create(label_id: 4, target_type: target_type, target_id: 1)
link = label_links_table.create(label_id: 1, target_type: target_type, target_id: 1)
Loading
Loading
@@ -85,7 +85,7 @@ describe Gitlab::BackgroundMigration::FixCrossProjectLabelLinks, :migration, sch
expect(link.reload.label_id).to eq(1)
end
 
it 'checks also issues and MRs in subgroups', :nested_groups do
it 'checks also issues and MRs in subgroups' do
link = label_links_table.create(label_id: 2, target_type: target_type, target_id: 1)
 
subject.perform(1, 100)
Loading
Loading
Loading
Loading
@@ -103,7 +103,7 @@ describe Gitlab::BareRepositoryImport::Importer, :seed_helper do
end
end
 
context 'with subgroups', :nested_groups do
context 'with subgroups' do
let(:project_path) { 'a-group/a-sub-group/a-project' }
 
let(:existing_group) do
Loading
Loading
@@ -188,20 +188,6 @@ describe Gitlab::BareRepositoryImport::Importer, :seed_helper do
end
end
 
context 'when subgroups are not available' do
let(:project_path) { 'a-group/a-sub-group/a-project' }
before do
expect(Group).to receive(:supports_nested_objects?) { false }
end
describe '#create_project_if_needed' do
it 'raises an error' do
expect { importer.create_project_if_needed }.to raise_error('Nested groups are not supported on MySQL')
end
end
end
def prepare_repository(project_path, source_project)
repo_path = File.join(base_dir, project_path)
 
Loading
Loading
Loading
Loading
@@ -8,7 +8,7 @@ describe Gitlab::Database::Count::ReltuplesCountStrategy do
 
subject { described_class.new(models).count }
 
describe '#count', :postgresql do
describe '#count' do
let(:models) { [Project, Identity] }
 
context 'when reltuples is up to date' do
Loading
Loading
Loading
Loading
@@ -12,7 +12,7 @@ describe Gitlab::Database::Count::TablesampleCountStrategy do
 
subject { strategy.count }
 
describe '#count', :postgresql do
describe '#count' do
let(:estimates) do
{
Project => threshold + 1,
Loading
Loading
Loading
Loading
@@ -8,7 +8,7 @@ describe Gitlab::Database::Grant do
expect(described_class.create_and_execute_trigger?('users')).to eq(true)
end
 
it 'returns false when the user can not create and/or execute a trigger', :postgresql do
it 'returns false when the user can not create and/or execute a trigger' do
# In case of MySQL the user may have SUPER permissions, making it
# impossible to have `false` returned when running tests; hence we only
# run these tests on PostgreSQL.
Loading
Loading
Loading
Loading
@@ -20,7 +20,7 @@ describe Gitlab::GroupSearchResults do
expect(result).to eq [user1]
end
 
it 'returns the user belonging to the subgroup matching the search query', :nested_groups do
it 'returns the user belonging to the subgroup matching the search query' do
user1 = create(:user, username: 'gob_bluth')
subgroup = create(:group, parent: group)
create(:group_member, :developer, user: user1, group: subgroup)
Loading
Loading
@@ -32,7 +32,7 @@ describe Gitlab::GroupSearchResults do
expect(result).to eq [user1]
end
 
it 'returns the user belonging to the parent group matching the search query', :nested_groups do
it 'returns the user belonging to the parent group matching the search query' do
user1 = create(:user, username: 'gob_bluth')
parent_group = create(:group, children: [group])
create(:group_member, :developer, user: user1, group: parent_group)
Loading
Loading
@@ -44,7 +44,7 @@ describe Gitlab::GroupSearchResults do
expect(result).to eq [user1]
end
 
it 'does not return the user belonging to the private subgroup', :nested_groups do
it 'does not return the user belonging to the private subgroup' do
user1 = create(:user, username: 'gob_bluth')
subgroup = create(:group, :private, parent: group)
create(:group_member, :developer, user: user1, group: subgroup)
Loading
Loading
require 'spec_helper'
 
describe Gitlab::ManifestImport::Manifest, :postgresql do
describe Gitlab::ManifestImport::Manifest do
let(:file) { File.open(Rails.root.join('spec/fixtures/aosp_manifest.xml')) }
let(:manifest) { described_class.new(file) }
 
Loading
Loading
require 'spec_helper'
 
describe Gitlab::ManifestImport::ProjectCreator, :postgresql do
describe Gitlab::ManifestImport::ProjectCreator do
let(:group) { create(:group) }
let(:user) { create(:user) }
let(:repository) do
Loading
Loading
require 'spec_helper'
 
describe Gitlab::ObjectHierarchy, :postgresql do
describe Gitlab::ObjectHierarchy do
let!(:parent) { create(:group) }
let!(:child1) { create(:group, parent: parent) }
let!(:child2) { create(:group, parent: child1) }
Loading
Loading
Loading
Loading
@@ -96,7 +96,7 @@ describe Gitlab::PerformanceBar do
end
end
 
context 'when allowed group is nested', :nested_groups do
context 'when allowed group is nested' do
let!(:nested_my_group) { create(:group, parent: create(:group, path: 'my-org'), path: 'my-group') }
 
before do
Loading
Loading
@@ -110,7 +110,7 @@ describe Gitlab::PerformanceBar do
end
end
 
context 'when a nested group has the same path', :nested_groups do
context 'when a nested group has the same path' do
before do
create(:group, :nested, path: 'my-group').add_developer(user)
end
Loading
Loading
Loading
Loading
@@ -20,13 +20,7 @@ describe Gitlab::ProjectAuthorizations do
end
 
let(:authorizations) do
klass = if Group.supports_nested_objects?
Gitlab::ProjectAuthorizations::WithNestedGroups
else
Gitlab::ProjectAuthorizations::WithoutNestedGroups
end
klass.new(user).calculate
described_class.new(user).calculate
end
 
it 'returns the correct number of authorizations' do
Loading
Loading
@@ -46,28 +40,26 @@ describe Gitlab::ProjectAuthorizations do
expect(mapping[group_project.id]).to eq(Gitlab::Access::DEVELOPER)
end
 
if Group.supports_nested_objects?
context 'with nested groups' do
let!(:nested_group) { create(:group, parent: group) }
let!(:nested_project) { create(:project, namespace: nested_group) }
context 'with nested groups' do
let!(:nested_group) { create(:group, parent: group) }
let!(:nested_project) { create(:project, namespace: nested_group) }
 
it 'includes nested groups' do
expect(authorizations.pluck(:project_id)).to include(nested_project.id)
end
it 'includes nested groups' do
expect(authorizations.pluck(:project_id)).to include(nested_project.id)
end
 
it 'inherits access levels when the user is not a member of a nested group' do
mapping = map_access_levels(authorizations)
it 'inherits access levels when the user is not a member of a nested group' do
mapping = map_access_levels(authorizations)
 
expect(mapping[nested_project.id]).to eq(Gitlab::Access::DEVELOPER)
end
expect(mapping[nested_project.id]).to eq(Gitlab::Access::DEVELOPER)
end
 
it 'uses the greatest access level when a user is a member of a nested group' do
nested_group.add_maintainer(user)
it 'uses the greatest access level when a user is a member of a nested group' do
nested_group.add_maintainer(user)
 
mapping = map_access_levels(authorizations)
mapping = map_access_levels(authorizations)
 
expect(mapping[nested_project.id]).to eq(Gitlab::Access::MAINTAINER)
end
expect(mapping[nested_project.id]).to eq(Gitlab::Access::MAINTAINER)
end
end
end
require 'spec_helper'
 
describe Gitlab::SQL::CTE, :postgresql do
describe Gitlab::SQL::CTE do
describe '#to_arel' do
it 'generates an Arel relation for the CTE body' do
relation = User.where(id: 1)
Loading
Loading
require 'spec_helper'
 
describe Gitlab::SQL::RecursiveCTE, :postgresql do
describe Gitlab::SQL::RecursiveCTE do
let(:cte) { described_class.new(:cte_name) }
 
describe '#to_arel' do
Loading
Loading
Loading
Loading
@@ -146,7 +146,7 @@ describe Ci::Runner do
expect(described_class.belonging_to_parent_group_of_project(project.id)).to contain_exactly(runner)
end
 
context 'with a parent group with a runner', :nested_groups do
context 'with a parent group with a runner' do
let(:runner) { create(:ci_runner, :group, groups: [parent_group]) }
let(:project) { create(:project, group: group) }
let(:group) { create(:group, parent: parent_group) }
Loading
Loading
Loading
Loading
@@ -342,7 +342,7 @@ describe Clusters::Cluster, :use_clean_rails_memory_store_caching do
end
end
 
context 'when sub-group has configured kubernetes cluster', :nested_groups do
context 'when sub-group has configured kubernetes cluster' do
let(:sub_group_cluster) { create(:cluster, :provided_by_gcp, :group) }
let(:sub_group) { sub_group_cluster.group }
let(:project) { create(:project, group: sub_group) }
Loading
Loading
Loading
Loading
@@ -45,7 +45,7 @@ describe DeploymentPlatform do
is_expected.to eq(group_cluster.platform_kubernetes)
end
 
context 'when child group has configured kubernetes cluster', :nested_groups do
context 'when child group has configured kubernetes cluster' do
let(:child_group1) { create(:group, parent: group) }
let!(:child_group1_cluster) { create(:cluster_for_group, groups: [child_group1]) }
 
Loading
Loading
Loading
Loading
@@ -2,7 +2,7 @@
 
require 'spec_helper'
 
describe GroupDescendant, :nested_groups do
describe GroupDescendant do
let(:parent) { create(:group) }
let(:subgroup) { create(:group, parent: parent) }
let(:subsub_group) { create(:group, parent: subgroup) }
Loading
Loading
@@ -84,7 +84,7 @@ describe GroupDescendant, :nested_groups do
it 'tracks the exception when a parent was not preloaded' do
expect(Gitlab::Sentry).to receive(:track_exception).and_call_original
 
expect { GroupDescendant.build_hierarchy([subsub_group]) }.to raise_error(ArgumentError)
expect { described_class.build_hierarchy([subsub_group]) }.to raise_error(ArgumentError)
end
 
it 'recovers if a parent was not reloaded by querying for the parent' do
Loading
Loading
@@ -93,7 +93,7 @@ describe GroupDescendant, :nested_groups do
# this does not raise in production, so stubbing it here.
allow(Gitlab::Sentry).to receive(:track_exception)
 
expect(GroupDescendant.build_hierarchy([subsub_group])).to eq(expected_hierarchy)
expect(described_class.build_hierarchy([subsub_group])).to eq(expected_hierarchy)
end
 
it 'raises an error if not all elements were preloaded' do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment