diff --git a/ee/spec/models/ee/project_group_link_spec.rb b/ee/spec/models/ee/project_group_link_spec.rb index c5332173227dfe0867e8558b54046c7013f09e4c..9f9b9ad7124396b4a92b80a758e6edfc74583809 100644 --- a/ee/spec/models/ee/project_group_link_spec.rb +++ b/ee/spec/models/ee/project_group_link_spec.rb @@ -25,7 +25,7 @@ let!(:protected_tag) do ProtectedTags::CreateService.new( project, - project.owner, + project.first_owner, attributes_for( :protected_tag, create_access_levels_attributes: [{ group_id: group.id }, { user_id: user.id }] @@ -42,7 +42,7 @@ let!(:protected_environment) do ProtectedEnvironments::CreateService.new( container: project, - current_user: project.owner, + current_user: project.first_owner, params: attributes_for( :protected_environment, deploy_access_levels_attributes: [{ group_id: group.id }, { user_id: user.id }] diff --git a/ee/spec/models/instance_security_dashboard_spec.rb b/ee/spec/models/instance_security_dashboard_spec.rb index 536b66bf51772938b7d81df276c068552242c175..2f91a9a8db72253f204530d780fb3f679d24dcdf 100644 --- a/ee/spec/models/instance_security_dashboard_spec.rb +++ b/ee/spec/models/instance_security_dashboard_spec.rb @@ -113,7 +113,7 @@ context 'when the user is not an auditor' do context 'when the user is project owner' do - let(:user) { project1.owner } + let(:user) { project1.first_owner } it_behaves_like 'project permissions' do let(:expected_projects) { project1 } diff --git a/ee/spec/models/productivity_analytics_spec.rb b/ee/spec/models/productivity_analytics_spec.rb index b1e5af95d9483629726fff2adb57f7d68742c127..aa8cd2421fe285e6c1746d15f7f323a98a46303e 100644 --- a/ee/spec/models/productivity_analytics_spec.rb +++ b/ee/spec/models/productivity_analytics_spec.rb @@ -7,7 +7,7 @@ subject(:analytics) { described_class.new(merge_requests: finder_mrs, sort: custom_sort) } let(:project) { create(:project) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:finder_mrs) { ProductivityAnalyticsFinder.new(user, finder_options).execute } let(:finder_options) { { state: 'merged' } } diff --git a/ee/spec/models/project_spec.rb b/ee/spec/models/project_spec.rb index 3f89d7ed333f2a40e90ba18d1a61cbef79df10d6..e7d1c31e0f9eb0e91d2de30760f3165905dd16d9 100644 --- a/ee/spec/models/project_spec.rb +++ b/ee/spec/models/project_spec.rb @@ -2839,7 +2839,7 @@ expect(project).to receive(:create_import_state) - project.update!(mirror: true, mirror_user: project.owner, import_url: 'http://foo.com') + project.update!(mirror: true, mirror_user: project.first_owner, import_url: 'http://foo.com') end end diff --git a/ee/spec/models/security/orchestration_policy_configuration_spec.rb b/ee/spec/models/security/orchestration_policy_configuration_spec.rb index dd8d4133da8aaa86f2573ca7afb98213e68651f9..c51fe076ebc906e8b2a504e01cbdfabc89a855b1 100644 --- a/ee/spec/models/security/orchestration_policy_configuration_spec.rb +++ b/ee/spec/models/security/orchestration_policy_configuration_spec.rb @@ -291,7 +291,7 @@ end describe '#policy_last_updated_by' do - let(:commit) { create(:commit, author: security_policy_management_project.owner) } + let(:commit) { create(:commit, author: security_policy_management_project.first_owner) } subject(:policy_last_updated_by) { security_orchestration_policy_configuration.policy_last_updated_by } @@ -301,7 +301,7 @@ end context 'when last commit to policy file exists' do - it { is_expected.to eq(security_policy_management_project.owner) } + it { is_expected.to eq(security_policy_management_project.first_owner) } end context 'when last commit to policy file does not exist' do diff --git a/ee/spec/presenters/ee/blob_presenter_spec.rb b/ee/spec/presenters/ee/blob_presenter_spec.rb index 399cb569f1bb69080c8f20a708eb1165f5319a94..503f47ee7d6d02a1129c54d4995c643390329d1d 100644 --- a/ee/spec/presenters/ee/blob_presenter_spec.rb +++ b/ee/spec/presenters/ee/blob_presenter_spec.rb @@ -4,7 +4,7 @@ RSpec.describe BlobPresenter do let_it_be(:project) { create(:project, :repository) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } let(:blob) { project.repository.blob_at('HEAD', 'files/ruby/regex.rb') } diff --git a/ee/spec/requests/api/api_spec.rb b/ee/spec/requests/api/api_spec.rb index bf7f4a1219ecd659817a36d6028760ca43ad70c2..af3f9edafecb9986cd8bdf0757ab9a92fad33391 100644 --- a/ee/spec/requests/api/api_spec.rb +++ b/ee/spec/requests/api/api_spec.rb @@ -5,7 +5,7 @@ RSpec.describe API::API do describe 'logging', :aggregate_failures do let_it_be(:project) { create(:project, :public) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } context 'when the method is not allowed' do it 'logs the route and context metadata for the client' do diff --git a/ee/spec/requests/api/ci/pipelines_spec.rb b/ee/spec/requests/api/ci/pipelines_spec.rb index 8a0a4187e5268a75ce6e2e78517248907390c929..50ee71479226fb80e1bf36d06e68928dbcb7cf39 100644 --- a/ee/spec/requests/api/ci/pipelines_spec.rb +++ b/ee/spec/requests/api/ci/pipelines_spec.rb @@ -17,7 +17,7 @@ describe 'DELETE /projects/:id/pipelines/:pipeline_id' do context 'authorized user' do - let(:owner) { project.owner } + let(:owner) { project.first_owner } context 'when audit events is enabled' do before do diff --git a/ee/spec/requests/api/graphql/mutations/projects/set_compliance_framework_spec.rb b/ee/spec/requests/api/graphql/mutations/projects/set_compliance_framework_spec.rb index eaf22680fc670a5c8903d8b0e3f746eb623ce78b..66fb84f17a6f459cc3a56e6d59eaea70c3fa38ff 100644 --- a/ee/spec/requests/api/graphql/mutations/projects/set_compliance_framework_spec.rb +++ b/ee/spec/requests/api/graphql/mutations/projects/set_compliance_framework_spec.rb @@ -8,7 +8,7 @@ let_it_be(:namespace) { create(:namespace) } let_it_be(:project) { create(:project, namespace: namespace) } let_it_be(:framework) { create(:compliance_framework, namespace: namespace) } - let_it_be(:current_user) { project.owner } + let_it_be(:current_user) { project.first_owner } let(:variables) { { project_id: GitlabSchema.id_from_object(project).to_s, compliance_framework_id: GitlabSchema.id_from_object(framework).to_s } } diff --git a/ee/spec/requests/api/status_checks_spec.rb b/ee/spec/requests/api/status_checks_spec.rb index d505a383e1869c85ca1f5fa298546124daf92134..189e13ebc4c38b1393c2e1cdee19ca5530c5eb8f 100644 --- a/ee/spec/requests/api/status_checks_spec.rb +++ b/ee/spec/requests/api/status_checks_spec.rb @@ -134,7 +134,7 @@ it 'deletes the specified rule' do expect do - delete api(single_object_url, project.owner) + delete api(single_object_url, project.first_owner) end.to change { MergeRequests::ExternalStatusCheck.count }.by(-1) end @@ -152,7 +152,7 @@ end it 'returns the correct status code' do - delete api(single_object_url, (project_owner ? project.owner : build(:user))) + delete api(single_object_url, (project_owner ? project.first_owner : build(:user))) expect(response).to have_gitlab_http_status(status) end @@ -167,7 +167,7 @@ end subject do - post api("/projects/#{project.id}/external_status_checks", project.owner), params: attributes_for(:external_status_check) + post api("/projects/#{project.id}/external_status_checks", project.first_owner), params: attributes_for(:external_status_check) end it 'creates a new external approval rule' do @@ -182,7 +182,7 @@ end subject do - post api("/projects/#{project.id}/external_status_checks", project.owner), params: params + post api("/projects/#{project.id}/external_status_checks", project.first_owner), params: params end it 'returns expected status code' do @@ -242,14 +242,14 @@ end it 'responds with expected JSON', :aggregate_failures do - get api(collection_url, project.owner) + get api(collection_url, project.first_owner) expect(json_response.size).to eq(2) expect(json_response.map { |r| r['name'] }).to contain_exactly('rule 1', 'rule 2') end it 'paginates correctly' do - get api(collection_url, project.owner), params: { per_page: 1 } + get api(collection_url, project.first_owner), params: { per_page: 1 } expect_paginated_array_response([rule.id]) end @@ -268,7 +268,7 @@ end it 'returns the correct status code' do - get api(collection_url, (project_owner ? project.owner : build(:user))) + get api(collection_url, (project_owner ? project.first_owner : build(:user))) expect(response).to have_gitlab_http_status(status) end @@ -285,7 +285,7 @@ end subject do - put api(single_object_url, project.owner), params: params + put api(single_object_url, project.first_owner), params: params end it 'updates an approval rule' do @@ -306,7 +306,7 @@ end subject do - put api(single_object_url, project.owner), params: params + put api(single_object_url, project.first_owner), params: params end it 'is invalid' do @@ -324,7 +324,7 @@ end subject do - put api(single_object_url, project.owner), params: params + put api(single_object_url, project.first_owner), params: params end it 'returns expected status code' do @@ -362,7 +362,7 @@ end it 'returns the correct status code' do - put api(single_object_url, (project_owner ? project.owner : build(:user))), params: attributes_for(:external_status_check) + put api(single_object_url, (project_owner ? project.first_owner : build(:user))), params: attributes_for(:external_status_check) expect(response).to have_gitlab_http_status(status) end diff --git a/ee/spec/requests/projects/audit_events_spec.rb b/ee/spec/requests/projects/audit_events_spec.rb index abcdba202b962715bf20522270f54976fe842520..a84941c6ce5e1e09838247eaae8178574bc0822d 100644 --- a/ee/spec/requests/projects/audit_events_spec.rb +++ b/ee/spec/requests/projects/audit_events_spec.rb @@ -5,7 +5,7 @@ RSpec.describe 'view audit events' do describe 'GET /:namespace/:project/-/audit_events' do let_it_be(:project) { create(:project, :repository) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } let_it_be(:audit_event) { create(:project_audit_event, entity_id: project.id) } before do diff --git a/ee/spec/services/ci/create_pipeline_service/compliance_spec.rb b/ee/spec/services/ci/create_pipeline_service/compliance_spec.rb index c85e64baee78ac981d858b37fe550410a734964b..51f24d82def6ed4ee70ec2ead212aba9f268d847 100644 --- a/ee/spec/services/ci/create_pipeline_service/compliance_spec.rb +++ b/ee/spec/services/ci/create_pipeline_service/compliance_spec.rb @@ -8,7 +8,7 @@ subject(:execute) { service.execute(:push) } let(:project) { create(:project, :repository, name: 'website') } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:compliance_group) { create(:group, :private, name: "compliance") } let(:compliance_project) { create(:project, :repository, namespace: compliance_group, name: "hippa") } let(:framework) { create(:compliance_framework, namespace_id: compliance_group.id, pipeline_configuration_full_path: ".compliance-gitlab-ci.yml@compliance/hippa") } @@ -37,7 +37,7 @@ context 'when user has access to compliance project' do before do - compliance_project.add_maintainer(project.owner) + compliance_project.add_maintainer(project.first_owner) end it 'responds with success' do diff --git a/ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb b/ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb index 0faafbb6f2d56efa8098582118d993279153b930..3ef464ce0dc47cda22533dd41a22402aa76c9913 100644 --- a/ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb +++ b/ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb @@ -6,7 +6,7 @@ subject(:execute) { service.execute(:push) } let_it_be(:project) { create(:project, :repository) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } let(:service) do described_class.new(project, user, { ref: 'refs/heads/master' }) diff --git a/ee/spec/services/ci/create_pipeline_service/needs_spec.rb b/ee/spec/services/ci/create_pipeline_service/needs_spec.rb index 57c33f42badae856a37c34615ffa16ad935b3b64..af9df3d3b01486f584a794646febb44016e42598 100644 --- a/ee/spec/services/ci/create_pipeline_service/needs_spec.rb +++ b/ee/spec/services/ci/create_pipeline_service/needs_spec.rb @@ -6,7 +6,7 @@ let_it_be(:downstream_project) { create(:project, name: 'project', namespace: create(:namespace, name: 'some')) } let(:project) { create(:project, :repository) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:service) { described_class.new(project, user, { ref: 'refs/heads/master' }) } let(:config) do diff --git a/ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb b/ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb index b78c2cf22b95611f150a44b29c2faf0b60f30213..dfeb78da1d369838e577702d032b01837c77b779 100644 --- a/ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb +++ b/ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Ci::CreatePipelineService, :sidekiq_inline do let_it_be(:namespace) { create(:namespace, :with_used_build_minutes_limit) } let_it_be(:project) { create(:project, :repository, namespace: namespace) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } let_it_be(:instance_runner) { create(:ci_runner, :instance, :online) } let(:service) do diff --git a/ee/spec/services/ci/destroy_pipeline_service_spec.rb b/ee/spec/services/ci/destroy_pipeline_service_spec.rb index a4d1ca734776857b9ed65b3276debfb20bfea290..ceb0a8c7077ab308da529e95e1a485644425cab6 100644 --- a/ee/spec/services/ci/destroy_pipeline_service_spec.rb +++ b/ee/spec/services/ci/destroy_pipeline_service_spec.rb @@ -5,7 +5,7 @@ RSpec.describe ::Ci::DestroyPipelineService do let(:project) { create(:project) } let!(:pipeline) { create(:ci_pipeline, project: project) } - let(:user) { project.owner } + let(:user) { project.first_owner } subject { described_class.new(project, user).execute(pipeline) } diff --git a/ee/spec/services/ee/ci/pipeline_processing/atomic_processing_service_spec.rb b/ee/spec/services/ee/ci/pipeline_processing/atomic_processing_service_spec.rb index 9cad86592988548c203e34ede8866c18e01514f6..535f96b30116424b812728a2d6c0560c6c39ffef 100644 --- a/ee/spec/services/ee/ci/pipeline_processing/atomic_processing_service_spec.rb +++ b/ee/spec/services/ee/ci/pipeline_processing/atomic_processing_service_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Ci::PipelineProcessing::AtomicProcessingService do describe 'Pipeline Processing Service' do let(:project) { create(:project, :repository) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:pipeline) do create(:ci_empty_pipeline, ref: 'master', project: project) diff --git a/ee/spec/services/ee/integrations/test/project_service_spec.rb b/ee/spec/services/ee/integrations/test/project_service_spec.rb index c74d8f589190ec621c95e3a7b5ed113e5b7c9004..43a8453a61f327ce877e508322187ef75a3c58ae 100644 --- a/ee/spec/services/ee/integrations/test/project_service_spec.rb +++ b/ee/spec/services/ee/integrations/test/project_service_spec.rb @@ -5,7 +5,7 @@ RSpec.describe ::Integrations::Test::ProjectService do describe '#execute' do let(:project) { create(:project) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:event) { nil } let(:sample_data) { { data: 'sample' } } let(:success_result) { { success: true, result: {} } } diff --git a/ee/spec/services/ee/merge_requests/base_service_spec.rb b/ee/spec/services/ee/merge_requests/base_service_spec.rb index 3160bcc88e6b44992ced27c569f07615aee46795..3e8bc2c75a24861d399c3074789806993b3fa710 100644 --- a/ee/spec/services/ee/merge_requests/base_service_spec.rb +++ b/ee/spec/services/ee/merge_requests/base_service_spec.rb @@ -17,7 +17,7 @@ } end - subject { MergeRequests::CreateService.new(project: project, current_user: project.owner, params: params) } + subject { MergeRequests::CreateService.new(project: project, current_user: project.first_owner, params: params) } let_it_be(:status_checks) { create_list(:external_status_check, 3, project: project) } @@ -38,7 +38,7 @@ it 'calls ParamsFilteringService' do expect(ApprovalRules::ParamsFilteringService).to receive(:new).with( an_instance_of(MergeRequest), - project.owner, + project.first_owner, params ).and_return(params_filtering_service) expect(params_filtering_service).to receive(:execute).and_return(params) diff --git a/ee/spec/services/ee/merge_requests/create_service_spec.rb b/ee/spec/services/ee/merge_requests/create_service_spec.rb index 83a4a49f68b4484af9bba72b8c7cf95c17829154..73f47328214a751288dae1e7fcefca0d76f2411d 100644 --- a/ee/spec/services/ee/merge_requests/create_service_spec.rb +++ b/ee/spec/services/ee/merge_requests/create_service_spec.rb @@ -56,7 +56,7 @@ describe '#execute with blocking merge requests', :clean_gitlab_redis_shared_state do let(:opts) { { title: 'Blocked MR', source_branch: 'feature', target_branch: 'master' } } - let(:user) { project.owner } + let(:user) { project.first_owner } it 'delegates to MergeRequests::UpdateBlocksService' do expect(MergeRequests::UpdateBlocksService) diff --git a/ee/spec/services/ee/notification_service_spec.rb b/ee/spec/services/ee/notification_service_spec.rb index 5ac883d560ee28b2ee5935978893c25308494101..91428f6705e75f02011cf384e6d9bcfd6e77159e 100644 --- a/ee/spec/services/ee/notification_service_spec.rb +++ b/ee/spec/services/ee/notification_service_spec.rb @@ -115,7 +115,7 @@ def build_team(project, merge_request) let!(:project_member) { create(:project_member, :invited, project: project) } it 'sends email' do - expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.owner.id).and_call_original + expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.first_owner.id).and_call_original subject.mirror_was_hard_failed(project) end @@ -134,7 +134,7 @@ def build_team(project, merge_request) let(:project) { create(:project, :mirror, :import_hard_failed) } it 'sends email' do - expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.owner.id).and_call_original + expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.first_owner.id).and_call_original subject.mirror_was_hard_failed(project) end @@ -181,7 +181,7 @@ def build_team(project, merge_request) project = create(:project, :mirror, :import_hard_failed) project.add_maintainer(user) - expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.owner.id).and_call_original + expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, project.first_owner.id).and_call_original expect(Notify).to receive(:mirror_was_hard_failed_email).with(project.id, user.id).and_call_original subject.mirror_was_hard_failed(project) @@ -239,7 +239,7 @@ def build_team(project, merge_request) let!(:project_member) { create(:project_member, :invited, project: project) } it 'sends email' do - expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.owner.id, deleted_username).and_call_original + expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.first_owner.id, deleted_username).and_call_original subject.mirror_was_disabled(project, deleted_username) end @@ -256,7 +256,7 @@ def build_team(project, merge_request) context 'when user is owner' do it 'sends email' do - expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.owner.id, deleted_username).and_call_original + expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.first_owner.id, deleted_username).and_call_original subject.mirror_was_disabled(project, deleted_username) end @@ -302,7 +302,7 @@ def build_team(project, merge_request) it 'sends email' do project.add_maintainer(user) - expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.owner.id, deleted_username).and_call_original + expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, project.first_owner.id, deleted_username).and_call_original expect(Notify).to receive(:mirror_was_disabled_email).with(project.id, user.id, deleted_username).and_call_original subject.mirror_was_disabled(project, deleted_username) @@ -930,7 +930,7 @@ def add_users_with_subscription(project, issuable) let_it_be(:participant) { create(:incident_management_oncall_participant, rotation: rotation) } it 'sends an email to the owner and participants' do - expect(Notify).to receive(:user_removed_from_rotation_email).with(user, rotation, [schedule.project.owner]).once.and_call_original + expect(Notify).to receive(:user_removed_from_rotation_email).with(user, rotation, [schedule.project.first_owner]).once.and_call_original expect(Notify).to receive(:user_removed_from_rotation_email).with(user, rotation, [participant.user]).once.and_call_original subject.oncall_user_removed(rotation, user) @@ -949,14 +949,14 @@ def add_users_with_subscription(project, issuable) let!(:rule_2) { create(:incident_management_escalation_rule, :with_user, :resolved, project: project, user: user) } it 'immediately sends an email to the project owner' do - expect(Notify).to receive(:user_escalation_rule_deleted_email).with(user, project, rules, project.owner).once.and_call_original + expect(Notify).to receive(:user_escalation_rule_deleted_email).with(user, project, rules, project.first_owner).once.and_call_original expect(Notify).not_to receive(:user_escalation_rule_deleted_email).with(user, project, rules, user) expect { subject.user_escalation_rule_deleted(project, user, rules) }.to change(ActionMailer::Base.deliveries, :size).by(1) end context 'when project owner is the removed user' do - let(:user) { project.owner } + let(:user) { project.first_owner } it 'does not send an email' do expect(Notify).not_to receive(:user_escalation_rule_deleted_email) diff --git a/ee/spec/services/ee/protected_branches/create_service_spec.rb b/ee/spec/services/ee/protected_branches/create_service_spec.rb index a1ddfe61d262c2201056c497bc1311675efe64cb..2a1bf7727ec474d23ce912e910361ff0e3b8e7dd 100644 --- a/ee/spec/services/ee/protected_branches/create_service_spec.rb +++ b/ee/spec/services/ee/protected_branches/create_service_spec.rb @@ -8,7 +8,7 @@ let(:source_project) { create(:project) } let(:target_project) { fork_project(source_project, user, repository: true) } - let(:user) { source_project.owner } + let(:user) { source_project.first_owner } let(:params) do { diff --git a/ee/spec/services/ee/protected_branches/destroy_service_spec.rb b/ee/spec/services/ee/protected_branches/destroy_service_spec.rb index eb1365fbb48dd1a3a9270a84e5b0aafc8e5343f8..75e26b5e414d03d174e1b3b8efadf4b9676677e0 100644 --- a/ee/spec/services/ee/protected_branches/destroy_service_spec.rb +++ b/ee/spec/services/ee/protected_branches/destroy_service_spec.rb @@ -6,7 +6,7 @@ let(:protected_branch) { create(:protected_branch) } let(:branch_name) { protected_branch.name } let(:project) { protected_branch.project } - let(:user) { project.owner } + let(:user) { project.first_owner } describe '#execute' do subject(:service) { described_class.new(project, user) } diff --git a/ee/spec/services/ee/protected_branches/update_service_spec.rb b/ee/spec/services/ee/protected_branches/update_service_spec.rb index 101442f7f5f9ac250e307644878d1cc35fe3b990..cc35c7ffbf3623b2c1ec35ed559e3725688b7d07 100644 --- a/ee/spec/services/ee/protected_branches/update_service_spec.rb +++ b/ee/spec/services/ee/protected_branches/update_service_spec.rb @@ -6,7 +6,7 @@ let(:branch_name) { 'feature' } let(:protected_branch) { create(:protected_branch, name: branch_name) } let(:project) { protected_branch.project } - let(:user) { project.owner } + let(:user) { project.first_owner } subject(:service) { described_class.new(project, user, params) } diff --git a/ee/spec/services/ee/users/destroy_service_spec.rb b/ee/spec/services/ee/users/destroy_service_spec.rb index 53b7326e590f71912b7962d0841f95c3c4558d17..cdbad571b051984f28b2b047365c5bdf831efe68 100644 --- a/ee/spec/services/ee/users/destroy_service_spec.rb +++ b/ee/spec/services/ee/users/destroy_service_spec.rb @@ -83,7 +83,7 @@ context 'when user has escalation rules' do let(:project) { create(:project) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:project_policy) { create(:incident_management_escalation_policy, project: project) } let!(:project_rule) { create(:incident_management_escalation_rule, :with_user, policy: project_policy, user: user) } diff --git a/ee/spec/services/external_status_checks/create_service_spec.rb b/ee/spec/services/external_status_checks/create_service_spec.rb index 310db1dcf64e3b381a4616accb3f7b6a9d6c6890..b65f9f63e23209890cd8e688aedd04336a84116b 100644 --- a/ee/spec/services/external_status_checks/create_service_spec.rb +++ b/ee/spec/services/external_status_checks/create_service_spec.rb @@ -6,7 +6,7 @@ let_it_be(:project) { create(:project) } let_it_be(:protected_branch) { create(:protected_branch, project: project) } - let(:user) { project.owner } + let(:user) { project.first_owner } let(:params) do { name: 'Test', diff --git a/ee/spec/services/external_status_checks/destroy_service_spec.rb b/ee/spec/services/external_status_checks/destroy_service_spec.rb index 029d17433ad83bc166d39976d4cb79afe8d98b4c..91dcf02f0f54bd2a49d5caa839c94d33c4ca0f2c 100644 --- a/ee/spec/services/external_status_checks/destroy_service_spec.rb +++ b/ee/spec/services/external_status_checks/destroy_service_spec.rb @@ -6,7 +6,7 @@ let_it_be(:project) { create(:project) } let_it_be(:rule) { create(:external_status_check, project: project) } - let(:current_user) { project.owner } + let(:current_user) { project.first_owner } subject { described_class.new(container: project, current_user: current_user).execute(rule) } diff --git a/ee/spec/services/external_status_checks/update_service_spec.rb b/ee/spec/services/external_status_checks/update_service_spec.rb index dfe88ebca654f500a94165d84be4d438d6732ce0..e3449571e36824d259629046888e987b8e71d356 100644 --- a/ee/spec/services/external_status_checks/update_service_spec.rb +++ b/ee/spec/services/external_status_checks/update_service_spec.rb @@ -7,7 +7,7 @@ let_it_be(:check) { create(:external_status_check, project: project) } let_it_be(:protected_branch) { create(:protected_branch, project: project) } - let(:current_user) { project.owner } + let(:current_user) { project.first_owner } let(:params) { { id: project.id, check_id: check.id, external_url: 'http://newvalue.com', name: 'new name', protected_branch_ids: [protected_branch.id] } } subject { described_class.new(container: project, current_user: current_user, params: params).execute } diff --git a/ee/spec/services/merge_requests/update_blocks_service_spec.rb b/ee/spec/services/merge_requests/update_blocks_service_spec.rb index 4ba96e8b8e678880bec50c49307d44fc1c2c19aa..17d113a316dfb0852ca59fa1a845c60cda57f603 100644 --- a/ee/spec/services/merge_requests/update_blocks_service_spec.rb +++ b/ee/spec/services/merge_requests/update_blocks_service_spec.rb @@ -26,7 +26,7 @@ describe '#execute' do let(:merge_request) { create(:merge_request) } - let(:user) { merge_request.target_project.owner } + let(:user) { merge_request.target_project.first_owner } let(:mr_to_ignore) { create(:merge_request) } let(:mr_to_add) { create(:merge_request) } diff --git a/ee/spec/services/projects/destroy_service_spec.rb b/ee/spec/services/projects/destroy_service_spec.rb index 8a495998e53258c4cfecd4419411f78f4631f4a9..5aac45a24b44469e21323fb4c0c4ed016a8b07de 100644 --- a/ee/spec/services/projects/destroy_service_spec.rb +++ b/ee/spec/services/projects/destroy_service_spec.rb @@ -24,7 +24,7 @@ let(:max_capacity) { Gitlab::CurrentSettings.mirror_max_capacity } let_it_be(:project_mirror) { create(:project, :mirror, :repository, :import_scheduled) } - let(:result) { described_class.new(project_mirror, project_mirror.owner, {}).execute } + let(:result) { described_class.new(project_mirror, project_mirror.first_owner, {}).execute } before do Gitlab::Mirror.increment_capacity(project_mirror.id) diff --git a/ee/spec/services/projects/update_mirror_service_spec.rb b/ee/spec/services/projects/update_mirror_service_spec.rb index 72c77acd868a85e95ea5226cf344d82bc75c0beb..cb252f79a0ffbdf4f2c4e954ff423de0bac0a558 100644 --- a/ee/spec/services/projects/update_mirror_service_spec.rb +++ b/ee/spec/services/projects/update_mirror_service_spec.rb @@ -7,7 +7,7 @@ create(:project, :repository, :mirror, import_url: Project::UNKNOWN_IMPORT_URL, only_mirror_protected_branches: false) end - subject(:service) { described_class.new(project, project.owner) } + subject(:service) { described_class.new(project, project.first_owner) } describe "#execute" do context 'unlicensed' do @@ -121,7 +121,7 @@ stub_fetch_mirror(project) expect(Git::TagPushService).to receive(:new) - .with(project, project.owner, change: hash_including(ref: 'refs/tags/new-tag'), mirror_update: true) + .with(project, project.first_owner, change: hash_including(ref: 'refs/tags/new-tag'), mirror_update: true) .and_return(double(execute: true)) service.execute @@ -326,7 +326,7 @@ def create_file(repository) repository.create_file( - project.owner, + project.first_owner, '/newfile.txt', 'hello', message: 'Add newfile.txt', diff --git a/ee/spec/services/search/project_service_spec.rb b/ee/spec/services/search/project_service_spec.rb index 7cbd3c2178f4ba776316b89c27001bf50aa969ad..de15931c82918a231d4e0585f86c782215335fcf 100644 --- a/ee/spec/services/search/project_service_spec.rb +++ b/ee/spec/services/search/project_service_spec.rb @@ -15,7 +15,7 @@ it_behaves_like 'EE search service shared examples', ::Gitlab::ProjectSearchResults, ::Gitlab::Elastic::ProjectSearchResults do let_it_be(:scope) { create(:project) } - let(:user) { scope.owner } + let(:user) { scope.first_owner } let(:service) { described_class.new(scope, user, params) } end end diff --git a/ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb b/ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb index 6c60d192086c604f82cc084d10739691f7d984c2..6156193ad57aaa1ee71ddd8948fd4e4ac86a841f 100644 --- a/ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb +++ b/ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Security::SecurityOrchestrationPolicies::CreatePipelineService do describe '#execute' do let_it_be_with_reload(:project) { create(:project, :repository) } - let_it_be(:current_user) { project.owner } + let_it_be(:current_user) { project.first_owner } let_it_be(:branch) { project.default_branch } let(:action) { { scan: 'secret_detection' } } diff --git a/ee/spec/services/security/security_orchestration_policies/policy_commit_service_spec.rb b/ee/spec/services/security/security_orchestration_policies/policy_commit_service_spec.rb index fdd8b26d68d78627bbd69266b2873be469607fae..b2da472a6df99d85a7e50913c198d4dd77d41f85 100644 --- a/ee/spec/services/security/security_orchestration_policies/policy_commit_service_spec.rb +++ b/ee/spec/services/security/security_orchestration_policies/policy_commit_service_spec.rb @@ -7,7 +7,7 @@ describe '#execute' do let_it_be(:project) { create(:project) } - let_it_be(:current_user) { project.owner } + let_it_be(:current_user) { project.first_owner } let_it_be(:policy_management_project) { create(:project, :repository, creator: current_user) } let_it_be(:policy_configuration) { create(:security_orchestration_policy_configuration, security_policy_management_project: policy_management_project, project: project) } diff --git a/ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb b/ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb index a195a84152fa3f8d007405080cb176d217faf522..8d3be832b73800c5c3ce94f2a55ed03d25b1b051 100644 --- a/ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb +++ b/ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb @@ -10,12 +10,12 @@ let(:policy) { build(:scan_result_policy, name: 'Test Policy') } let(:policy_yaml) { Gitlab::Config::Loader::Yaml.new(policy.to_yaml).load! } let(:project) { policy_configuration.project } - let(:approver) { project.owner } + let(:approver) { project.first_owner } let(:service) { described_class.new(policy_configuration: policy_configuration, policy: policy, policy_index: 0) } before do group.add_maintainer(approver) - allow(policy_configuration).to receive(:policy_last_updated_by).and_return(project.owner) + allow(policy_configuration).to receive(:policy_last_updated_by).and_return(project.first_owner) end subject { service.execute } diff --git a/ee/spec/services/security/security_orchestration_policies/project_create_service_spec.rb b/ee/spec/services/security/security_orchestration_policies/project_create_service_spec.rb index adc65eebe2ae45769e8456422487eb385ad6670f..aaf483dc117d8a984e20c236cc29e1f2222800ac 100644 --- a/ee/spec/services/security/security_orchestration_policies/project_create_service_spec.rb +++ b/ee/spec/services/security/security_orchestration_policies/project_create_service_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Security::SecurityOrchestrationPolicies::ProjectCreateService do describe '#execute' do let_it_be(:project) { create(:project) } - let_it_be(:current_user) { project.owner } + let_it_be(:current_user) { project.first_owner } subject(:service) { described_class.new(project: project, current_user: current_user) } @@ -33,7 +33,7 @@ context 'when adding users to security policy project fails' do let_it_be(:project) { create(:project) } - let_it_be(:current_user) { project.owner } + let_it_be(:current_user) { project.first_owner } let_it_be(:maintainer) { create(:user) } before do diff --git a/ee/spec/services/security/store_report_service_spec.rb b/ee/spec/services/security/store_report_service_spec.rb index 9a16f573b9bf73f70c286e960ddb1b7fff7530a3..28246a86e372f443b6831e915202faa5b59953fd 100644 --- a/ee/spec/services/security/store_report_service_spec.rb +++ b/ee/spec/services/security/store_report_service_spec.rb @@ -766,7 +766,7 @@ def generate_new_pipeline before do stub_licensed_features(container_scanning: true, security_dashboard: true) - allow(pipeline).to receive(:user).and_return(project.owner) + allow(pipeline).to receive(:user).and_return(project.first_owner) end it 'populates finding location' do diff --git a/ee/spec/support/shared_contexts/graphql/resolvers/security_orchestration/resolves_orchestration_policy_shared_contexts.rb b/ee/spec/support/shared_contexts/graphql/resolvers/security_orchestration/resolves_orchestration_policy_shared_contexts.rb index ca91c952b304a9d5afd61cd0615a37f115f5e774..e594579a6a135b0ca03006aee910aedacce54566 100644 --- a/ee/spec/support/shared_contexts/graphql/resolvers/security_orchestration/resolves_orchestration_policy_shared_contexts.rb +++ b/ee/spec/support/shared_contexts/graphql/resolvers/security_orchestration/resolves_orchestration_policy_shared_contexts.rb @@ -4,5 +4,5 @@ let_it_be(:policy_last_updated_at) { Time.now } let_it_be(:project) { create(:project) } let_it_be(:policy_management_project) { create(:project) } - let_it_be(:user) { policy_management_project.owner } + let_it_be(:user) { policy_management_project.first_owner } end diff --git a/ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb b/ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb index 657f55bfd800af22dc2adcc955a9e8f47b3c1bb5..f0ce04f71791bdb434ba20f1da2e627d39c5c3a2 100644 --- a/ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb +++ b/ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb @@ -4,7 +4,7 @@ describe '/publish' do let_it_be(:status_page_setting) { create(:status_page_setting, :enabled, project: project) } - let(:user) { project.owner } + let(:user) { project.first_owner } before do stub_licensed_features(status_page: true) diff --git a/ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb b/ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb index 73840f790bde985a94c643932dc1a0d318d0b7c7..1066bfbd8b07492fabb9e6eff121ec396056cfa6 100644 --- a/ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb +++ b/ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb @@ -4,7 +4,7 @@ RSpec.describe 'layouts/nav/sidebar/_project' do let_it_be_with_refind(:project) { create(:project, :repository) } - let_it_be(:user) { project.owner } + let_it_be(:user) { project.first_owner } before do assign(:project, project) @@ -63,7 +63,7 @@ describe 'Jira' do let_it_be_with_refind(:project) { create(:project, has_external_issue_tracker: true) } - let(:user) { project.owner } + let(:user) { project.first_owner } before do allow(view).to receive(:current_user).and_return(user) @@ -100,7 +100,7 @@ end describe 'Requirements' do - let(:user) { project.owner } + let(:user) { project.first_owner } before do stub_licensed_features(requirements: true) diff --git a/ee/spec/views/projects/security/policies/index.html.haml_spec.rb b/ee/spec/views/projects/security/policies/index.html.haml_spec.rb index 4aba126997f8d2ce7c3c43f01dad72140245a477..db0e9414914a3489c3aa531acac7ee6194fcaa09 100644 --- a/ee/spec/views/projects/security/policies/index.html.haml_spec.rb +++ b/ee/spec/views/projects/security/policies/index.html.haml_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' RSpec.describe "projects/security/policies/index", type: :view do - let(:user) { project.owner } + let(:user) { project.first_owner } let(:project) { create(:project) } before do diff --git a/ee/spec/views/shared/_mirror_status.html.haml_spec.rb b/ee/spec/views/shared/_mirror_status.html.haml_spec.rb index 0ada089736402f0844031a1fc831ed5ca2bb37c6..2308b848afa1e2a814b1452b16c5ed42fc31ee03 100644 --- a/ee/spec/views/shared/_mirror_status.html.haml_spec.rb +++ b/ee/spec/views/shared/_mirror_status.html.haml_spec.rb @@ -10,7 +10,7 @@ before do @project = project # for the view - sign_in(project.owner) + sign_in(project.first_owner) end context 'when mirror has not updated yet' do diff --git a/ee/spec/views/shared/_mirror_update_button.html.haml_spec.rb b/ee/spec/views/shared/_mirror_update_button.html.haml_spec.rb index 356ec05f9018fcd449d8c8f5daca9d4a4209489f..998beaadfe78dae73d0e43b7ce453c24b3f7b135 100644 --- a/ee/spec/views/shared/_mirror_update_button.html.haml_spec.rb +++ b/ee/spec/views/shared/_mirror_update_button.html.haml_spec.rb @@ -9,7 +9,7 @@ let(:import_state) { project.import_state } - let(:owner) { project.owner } + let(:owner) { project.first_owner } let(:developer) { create(:user).tap { |user| project.team.add_developer(user) } } let(:reporter) { create(:user).tap { |user| project.team.add_reporter(user) } } diff --git a/ee/spec/workers/post_receive_spec.rb b/ee/spec/workers/post_receive_spec.rb index 30cd968315c345169d6fec8555115bfc9a2cc57a..66178f9f445c1b09a50f200f941e7f64a3b2d21b 100644 --- a/ee/spec/workers/post_receive_spec.rb +++ b/ee/spec/workers/post_receive_spec.rb @@ -11,7 +11,7 @@ let(:base64_changes) { Base64.encode64(wrongly_encoded_changes) } let(:base64_changes_with_master) { Base64.encode64(changes_with_master) } let(:gl_repository) { "project-#{project.id}" } - let(:key) { create(:key, user: project.owner) } + let(:key) { create(:key, user: project.first_owner) } let(:key_id) { key.shell_id } let(:project) { create(:project, :repository) } @@ -55,7 +55,7 @@ ] expect(::RepositoryPushAuditEventWorker).to receive(:perform_async) - .with(expected_changes, project.id, project.owner.id) + .with(expected_changes, project.id, project.first_owner.id) described_class.new.perform(gl_repository, key_id, base64_changes) end