diff --git a/lib/gitlab/current/organization.rb b/lib/gitlab/current/organization.rb index 00fc99d7b4a8f11594d53444b570ed292c97183e..988be87a04f777524c92f4eca293dd9a1cc8d84d 100644 --- a/lib/gitlab/current/organization.rb +++ b/lib/gitlab/current/organization.rb @@ -35,7 +35,7 @@ def from_headers def from_user return unless user - ::Organizations::Organization.with_user(user).first + user.organization end def from_group_params diff --git a/spec/lib/gitlab/current/organization_spec.rb b/spec/lib/gitlab/current/organization_spec.rb index 9fc74d25b3161cee2aa662b718a3f2fa477e3a73..6b8188d8cab0ea197871aa14c4eb3bc3bd9a8097 100644 --- a/spec/lib/gitlab/current/organization_spec.rb +++ b/spec/lib/gitlab/current/organization_spec.rb @@ -12,8 +12,9 @@ let_it_be(:session_organization) { create(:organization) } let_it_be(:header_organization) { create(:organization) } let_it_be(:default_organization) { create(:organization, :default) } + let_it_be(:group) { create(:group, organization: organization) } - let_it_be(:user) { create(:user, organization: user_organization) } + let_it_be(:user) { create(:user, organization: user_organization, organizations: [default_organization]) } let_it_be(:params_with_namespace_id) { { namespace_id: group.full_path } } let_it_be(:params_with_group_id) { { group_id: group.full_path } } diff --git a/spec/requests/api/graphql/current_user/groups_query_spec.rb b/spec/requests/api/graphql/current_user/groups_query_spec.rb index 13161436c98be6f40d6ba483332668462b762452..c7bb87f4548758a869ddcf9001af5978f6e3646e 100644 --- a/spec/requests/api/graphql/current_user/groups_query_spec.rb +++ b/spec/requests/api/graphql/current_user/groups_query_spec.rb @@ -5,14 +5,13 @@ RSpec.describe 'Query current user groups', feature_category: :groups_and_projects do include GraphqlHelpers - let_it_be(:organization) { create(:organization) } let_it_be(:user) { create(:user) } - let_it_be(:root_group) { create(:group, name: 'Root group', path: 'root-group', organization: organization) } - let_it_be(:guest_group) { create(:group, name: 'public guest', path: 'public-guest', guests: user, organization: organization) } - let_it_be(:private_maintainer_group) { create(:group, :private, name: 'b private maintainer', path: 'b-private-maintainer', parent: root_group, maintainers: user, organization: organization) } - let_it_be(:public_developer_group) { create(:group, project_creation_level: nil, name: 'c public developer', path: 'c-public-developer', developers: user, organization: organization) } - let_it_be(:public_maintainer_group) { create(:group, name: 'a public maintainer', path: 'a-public-maintainer', parent: root_group, maintainers: user, organization: organization) } - let_it_be(:public_owner_group) { create(:group, name: 'a public owner', path: 'a-public-owner', owners: user, organization: organization) } + let_it_be(:root_group) { create(:group, name: 'Root group', path: 'root-group') } + let_it_be(:guest_group) { create(:group, name: 'public guest', path: 'public-guest', guests: user) } + let_it_be(:private_maintainer_group) { create(:group, :private, name: 'b private maintainer', path: 'b-private-maintainer', parent: root_group, maintainers: user) } + let_it_be(:public_developer_group) { create(:group, project_creation_level: nil, name: 'c public developer', path: 'c-public-developer', developers: user) } + let_it_be(:public_maintainer_group) { create(:group, name: 'a public maintainer', path: 'a-public-maintainer', parent: root_group, maintainers: user) } + let_it_be(:public_owner_group) { create(:group, name: 'a public owner', path: 'a-public-owner', owners: user) } let(:group_arguments) { {} } let(:current_user) { user } @@ -38,7 +37,7 @@ it 'avoids N+1 queries', :request_store do control = ActiveRecord::QueryRecorder.new { post_graphql(query, current_user: current_user) } - new_group = create(:group, :private, organization: organization) + new_group = create(:group, :private) new_group.add_maintainer(current_user) expect { post_graphql(query, current_user: current_user) }.not_to exceed_query_limit(control)