summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-05-12 03:10:21 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-05-12 03:10:21 +0000
commit3e7f2f00ca92b26d631009c5f45986500a27024b (patch)
treef91f6c4dc97a762a58190b4bb9ea355e2fc2cd7c /spec
parenta160c4b1a72105a751cdc2f9f973dbe39a1c0dfd (diff)
downloadgitlab-ce-3e7f2f00ca92b26d631009c5f45986500a27024b.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec')
-rw-r--r--spec/controllers/projects/merge_requests/diffs_controller_spec.rb2
-rw-r--r--spec/controllers/projects/merge_requests_controller_spec.rb4
-rw-r--r--spec/features/calendar_spec.rb4
-rw-r--r--spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb2
-rw-r--r--spec/features/merge_request/user_sees_mr_from_deleted_forked_project_spec.rb2
-rw-r--r--spec/features/merge_request/user_sees_pipelines_spec.rb2
-rw-r--r--spec/features/unsubscribe_links_spec.rb2
-rw-r--r--spec/features/users/user_browses_projects_on_user_page_spec.rb2
-rw-r--r--spec/lib/gitlab/ci/pipeline/chain/skip_spec.rb12
-rw-r--r--spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb2
-rw-r--r--spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb2
-rw-r--r--spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb2
-rw-r--r--spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb2
-rw-r--r--spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb2
-rw-r--r--spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb2
-rw-r--r--spec/models/ci/build_spec.rb2
-rw-r--r--spec/models/concerns/noteable_spec.rb2
-rw-r--r--spec/models/merge_request_diff_spec.rb2
-rw-r--r--spec/models/merge_request_spec.rb4
-rw-r--r--spec/models/project_services/microsoft_teams_service_spec.rb4
-rw-r--r--spec/serializers/issue_entity_spec.rb4
-rw-r--r--spec/services/discussions/capture_diff_note_positions_service_spec.rb2
-rw-r--r--spec/services/draft_notes/publish_service_spec.rb2
-rw-r--r--spec/services/issuable/common_system_notes_service_spec.rb4
-rw-r--r--spec/services/issuable/destroy_service_spec.rb2
-rw-r--r--spec/services/issues/after_create_service_spec.rb2
-rw-r--r--spec/services/issues/build_service_spec.rb6
-rw-r--r--spec/services/issues/clone_service_spec.rb2
-rw-r--r--spec/services/issues/close_service_spec.rb20
-rw-r--r--spec/services/issues/create_service_spec.rb60
-rw-r--r--spec/services/issues/duplicate_service_spec.rb2
-rw-r--r--spec/services/issues/move_service_spec.rb2
-rw-r--r--spec/services/issues/referenced_merge_requests_service_spec.rb2
-rw-r--r--spec/services/issues/related_branches_service_spec.rb4
-rw-r--r--spec/services/issues/reopen_service_spec.rb14
-rw-r--r--spec/services/issues/reorder_service_spec.rb4
-rw-r--r--spec/services/issues/resolve_discussions_spec.rb36
-rw-r--r--spec/services/issues/update_service_spec.rb24
-rw-r--r--spec/services/issues/zoom_link_service_spec.rb2
-rw-r--r--spec/services/merge_requests/add_context_service_spec.rb6
-rw-r--r--spec/services/merge_requests/add_spent_time_service_spec.rb4
-rw-r--r--spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb2
-rw-r--r--spec/services/merge_requests/after_create_service_spec.rb4
-rw-r--r--spec/services/merge_requests/approval_service_spec.rb2
-rw-r--r--spec/services/merge_requests/assign_issues_service_spec.rb22
-rw-r--r--spec/services/merge_requests/base_service_spec.rb2
-rw-r--r--spec/services/merge_requests/build_service_spec.rb4
-rw-r--r--spec/services/merge_requests/cleanup_refs_service_spec.rb2
-rw-r--r--spec/services/merge_requests/close_service_spec.rb14
-rw-r--r--spec/services/merge_requests/create_from_issue_service_spec.rb14
-rw-r--r--spec/services/merge_requests/create_pipeline_service_spec.rb2
-rw-r--r--spec/services/merge_requests/create_service_spec.rb26
-rw-r--r--spec/services/merge_requests/ff_merge_service_spec.rb4
-rw-r--r--spec/services/merge_requests/get_urls_service_spec.rb4
-rw-r--r--spec/services/merge_requests/handle_assignees_change_service_spec.rb2
-rw-r--r--spec/services/merge_requests/link_lfs_objects_service_spec.rb2
-rw-r--r--spec/services/merge_requests/mark_reviewer_reviewed_service_spec.rb6
-rw-r--r--spec/services/merge_requests/merge_service_spec.rb12
-rw-r--r--spec/services/merge_requests/merge_to_ref_service_spec.rb6
-rw-r--r--spec/services/merge_requests/mergeability_check_service_spec.rb8
-rw-r--r--spec/services/merge_requests/post_merge_service_spec.rb2
-rw-r--r--spec/services/merge_requests/push_options_handler_service_spec.rb2
-rw-r--r--spec/services/merge_requests/pushed_branches_service_spec.rb2
-rw-r--r--spec/services/merge_requests/rebase_service_spec.rb2
-rw-r--r--spec/services/merge_requests/refresh_service_spec.rb48
-rw-r--r--spec/services/merge_requests/reload_merge_head_diff_service_spec.rb2
-rw-r--r--spec/services/merge_requests/remove_approval_service_spec.rb2
-rw-r--r--spec/services/merge_requests/reopen_service_spec.rb12
-rw-r--r--spec/services/merge_requests/request_review_service_spec.rb4
-rw-r--r--spec/services/merge_requests/resolved_discussion_notification_service_spec.rb2
-rw-r--r--spec/services/merge_requests/retarget_chain_service_spec.rb2
-rw-r--r--spec/services/merge_requests/squash_service_spec.rb6
-rw-r--r--spec/services/merge_requests/update_assignees_service_spec.rb8
-rw-r--r--spec/services/merge_requests/update_service_spec.rb54
-rw-r--r--spec/services/notes/copy_service_spec.rb2
-rw-r--r--spec/services/notes/create_service_spec.rb2
-rw-r--r--spec/services/notes/quick_actions_service_spec.rb8
-rw-r--r--spec/services/projects/unlink_fork_service_spec.rb12
-rw-r--r--spec/services/suggestions/apply_service_spec.rb2
-rw-r--r--spec/support/helpers/cycle_analytics_helpers.rb6
-rw-r--r--spec/support/services/issuable_update_service_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/models/chat_service_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/requests/api/time_tracking_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb2
-rw-r--r--spec/support/shared_examples/services/common_system_notes_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/services/issuable_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/services/merge_request_shared_examples.rb4
-rw-r--r--spec/support/shared_examples/services/updating_mentions_shared_examples.rb2
-rw-r--r--spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb2
-rw-r--r--spec/workers/merge_requests/create_pipeline_worker_spec.rb2
-rw-r--r--spec/workers/process_commit_worker_spec.rb2
-rw-r--r--spec/workers/rebase_worker_spec.rb2
-rw-r--r--spec/workers/update_merge_requests_worker_spec.rb2
93 files changed, 308 insertions, 310 deletions
diff --git a/spec/controllers/projects/merge_requests/diffs_controller_spec.rb b/spec/controllers/projects/merge_requests/diffs_controller_spec.rb
index 41d3cac63a6..989f941caea 100644
--- a/spec/controllers/projects/merge_requests/diffs_controller_spec.rb
+++ b/spec/controllers/projects/merge_requests/diffs_controller_spec.rb
@@ -204,7 +204,7 @@ RSpec.describe Projects::MergeRequests::DiffsController do
end
it "correctly generates the right diff between versions" do
- MergeRequests::MergeToRefService.new(project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: project, current_user: merge_request.author).execute(merge_request)
expect_next_instance_of(CompareService) do |service|
expect(service).to receive(:execute).with(
diff --git a/spec/controllers/projects/merge_requests_controller_spec.rb b/spec/controllers/projects/merge_requests_controller_spec.rb
index a04bda9902b..d4c52e1c7ca 100644
--- a/spec/controllers/projects/merge_requests_controller_spec.rb
+++ b/spec/controllers/projects/merge_requests_controller_spec.rb
@@ -531,7 +531,7 @@ RSpec.describe Projects::MergeRequestsController do
sha: merge_request.diff_head_sha,
merge_request: merge_request }
- expect_next_instance_of(MergeRequests::SquashService, project, user, expected_squash_params) do |squash_service|
+ expect_next_instance_of(MergeRequests::SquashService, project: project, current_user: user, params: expected_squash_params) do |squash_service|
expect(squash_service).to receive(:execute).and_return({
status: :success,
squash_sha: SecureRandom.hex(20)
@@ -1831,7 +1831,7 @@ RSpec.describe Projects::MergeRequestsController do
it 'calls MergeRequests::AssignIssuesService' do
expect(MergeRequests::AssignIssuesService).to receive(:new)
- .with(project, user, merge_request: merge_request)
+ .with(project: project, current_user: user, params: { merge_request: merge_request })
.and_return(double(execute: { count: 1 }))
post_assign_issues
diff --git a/spec/features/calendar_spec.rb b/spec/features/calendar_spec.rb
index 0b73226268d..1281d890ef7 100644
--- a/spec/features/calendar_spec.rb
+++ b/spec/features/calendar_spec.rb
@@ -146,7 +146,7 @@ RSpec.describe 'Contributions Calendar', :js do
describe '1 issue creation calendar activity' do
before do
- Issues::CreateService.new(contributed_project, user, issue_params).execute
+ Issues::CreateService.new(project: contributed_project, current_user: user, params: issue_params).execute
end
it_behaves_like 'a day with activity', contribution_count: 1
@@ -181,7 +181,7 @@ RSpec.describe 'Contributions Calendar', :js do
push_code_contribution
travel_to(Date.yesterday) do
- Issues::CreateService.new(contributed_project, user, issue_params).execute
+ Issues::CreateService.new(project: contributed_project, current_user: user, params: issue_params).execute
end
end
include_context 'visit user page'
diff --git a/spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb b/spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb
index 78c1b2a718e..35be21a646e 100644
--- a/spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb
+++ b/spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb
@@ -15,7 +15,7 @@ RSpec.describe 'Merge request > User cherry-picks', :js do
context 'Viewing a merged merge request' do
before do
- service = MergeRequests::MergeService.new(project, user, sha: merge_request.diff_head_sha)
+ service = MergeRequests::MergeService.new(project: project, current_user: user, params: { sha: merge_request.diff_head_sha })
perform_enqueued_jobs do
service.execute(merge_request)
diff --git a/spec/features/merge_request/user_sees_mr_from_deleted_forked_project_spec.rb b/spec/features/merge_request/user_sees_mr_from_deleted_forked_project_spec.rb
index cbd68025b50..a764dd97878 100644
--- a/spec/features/merge_request/user_sees_mr_from_deleted_forked_project_spec.rb
+++ b/spec/features/merge_request/user_sees_mr_from_deleted_forked_project_spec.rb
@@ -15,7 +15,7 @@ RSpec.describe 'Merge request > User sees MR from deleted forked project', :js d
end
before do
- MergeRequests::MergeService.new(project, user).execute(merge_request)
+ MergeRequests::MergeService.new(project: project, current_user: user).execute(merge_request)
forked_project.destroy!
sign_in(user)
visit project_merge_request_path(project, merge_request)
diff --git a/spec/features/merge_request/user_sees_pipelines_spec.rb b/spec/features/merge_request/user_sees_pipelines_spec.rb
index a5047c8d550..2d8fe10b987 100644
--- a/spec/features/merge_request/user_sees_pipelines_spec.rb
+++ b/spec/features/merge_request/user_sees_pipelines_spec.rb
@@ -239,7 +239,7 @@ RSpec.describe 'Merge request > User sees pipelines', :js do
threads << Thread.new do
Sidekiq::Worker.skipping_transaction_check do
- @merge_request = MergeRequests::CreateService.new(project, user, merge_request_params).execute
+ @merge_request = MergeRequests::CreateService.new(project: project, current_user: user, params: merge_request_params).execute
end
end
diff --git a/spec/features/unsubscribe_links_spec.rb b/spec/features/unsubscribe_links_spec.rb
index 966d90ab16b..b2d0f29808c 100644
--- a/spec/features/unsubscribe_links_spec.rb
+++ b/spec/features/unsubscribe_links_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe 'Unsubscribe links', :sidekiq_might_not_need_inline do
let(:author) { create(:user) }
let(:project) { create(:project, :public) }
let(:params) { { title: 'A bug!', description: 'Fix it!', assignees: [recipient] } }
- let(:issue) { Issues::CreateService.new(project, author, params).execute }
+ let(:issue) { Issues::CreateService.new(project: project, current_user: author, params: params).execute }
let(:mail) { ActionMailer::Base.deliveries.last }
let(:body) { Capybara::Node::Simple.new(mail.default_part_body.to_s) }
diff --git a/spec/features/users/user_browses_projects_on_user_page_spec.rb b/spec/features/users/user_browses_projects_on_user_page_spec.rb
index 7d05b2ae27a..ded90be3924 100644
--- a/spec/features/users/user_browses_projects_on_user_page_spec.rb
+++ b/spec/features/users/user_browses_projects_on_user_page_spec.rb
@@ -125,7 +125,7 @@ RSpec.describe 'Users > User browses projects on user page', :js do
end
before do
- Issues::CreateService.new(contributed_project, user, { title: 'Bug in old browser' }).execute
+ Issues::CreateService.new(project: contributed_project, current_user: user, params: { title: 'Bug in old browser' }).execute
event = create(:push_event, project: contributed_project, author: user)
create(:push_event_payload, event: event, commit_count: 3)
end
diff --git a/spec/lib/gitlab/ci/pipeline/chain/skip_spec.rb b/spec/lib/gitlab/ci/pipeline/chain/skip_spec.rb
index ae427eaf403..27af8d379ef 100644
--- a/spec/lib/gitlab/ci/pipeline/chain/skip_spec.rb
+++ b/spec/lib/gitlab/ci/pipeline/chain/skip_spec.rb
@@ -40,18 +40,6 @@ RSpec.describe Gitlab::Ci::Pipeline::Chain::Skip do
step.perform!
end
-
- context 'when the ci_pipeline_ensure_iid_on_save feature flag is off' do
- before do
- stub_feature_flags(ci_pipeline_ensure_iid_on_skip: false)
- end
-
- it 'does not call ensure_project_iid explicitly' do
- expect(pipeline).not_to receive(:ensure_project_iid!)
-
- step.perform!
- end
- end
end
context 'when pipeline has not been skipped' do
diff --git a/spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb b/spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb
index 1f278048ad5..053499344e1 100644
--- a/spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb
+++ b/spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb
@@ -45,7 +45,7 @@ RSpec.describe 'Jobs/Build.gitlab-ci.yml' do
end
context 'on merge request' do
- let(:service) { MergeRequests::CreatePipelineService.new(project, user) }
+ let(:service) { MergeRequests::CreatePipelineService.new(project: project, current_user: user) }
let(:merge_request) { create(:merge_request, :simple, source_project: project) }
let(:pipeline) { service.execute(merge_request) }
diff --git a/spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb b/spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb
index 0a76de82421..b23457315cc 100644
--- a/spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb
+++ b/spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb
@@ -45,7 +45,7 @@ RSpec.describe 'Jobs/Code-Quality.gitlab-ci.yml' do
end
context 'on merge request' do
- let(:service) { MergeRequests::CreatePipelineService.new(project, user) }
+ let(:service) { MergeRequests::CreatePipelineService.new(project: project, current_user: user) }
let(:merge_request) { create(:merge_request, :simple, source_project: project) }
let(:pipeline) { service.execute(merge_request) }
diff --git a/spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb b/spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb
index 25c88c161ea..1d137ef89e1 100644
--- a/spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb
+++ b/spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb
@@ -208,7 +208,7 @@ RSpec.describe 'Jobs/Deploy.gitlab-ci.yml' do
end
context 'on merge request' do
- let(:service) { MergeRequests::CreatePipelineService.new(project, user) }
+ let(:service) { MergeRequests::CreatePipelineService.new(project: project, current_user: user) }
let(:merge_request) { create(:merge_request, :simple, source_project: project) }
let(:pipeline) { service.execute(merge_request) }
diff --git a/spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb b/spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb
index b64959a9917..7fa8d906d07 100644
--- a/spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb
+++ b/spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb
@@ -45,7 +45,7 @@ RSpec.describe 'Jobs/Test.gitlab-ci.yml' do
end
context 'on merge request' do
- let(:service) { MergeRequests::CreatePipelineService.new(project, user) }
+ let(:service) { MergeRequests::CreatePipelineService.new(project: project, current_user: user) }
let(:merge_request) { create(:merge_request, :simple, source_project: project) }
let(:pipeline) { service.execute(merge_request) }
diff --git a/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb b/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb
index 03fa45fe0a1..e53d2f4f975 100644
--- a/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb
+++ b/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb
@@ -62,7 +62,7 @@ RSpec.describe 'Verify/Load-Performance-Testing.gitlab-ci.yml' do
end
context 'on merge request' do
- let(:service) { MergeRequests::CreatePipelineService.new(project, user) }
+ let(:service) { MergeRequests::CreatePipelineService.new(project: project, current_user: user) }
let(:merge_request) { create(:merge_request, :simple, source_project: project) }
let(:pipeline) { service.execute(merge_request) }
diff --git a/spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb b/spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb
index 7b3440b40a7..7d36e67ddbf 100644
--- a/spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb
+++ b/spec/lib/gitlab/slash_commands/presenters/issue_move_spec.rb
@@ -8,7 +8,7 @@ RSpec.describe Gitlab::SlashCommands::Presenters::IssueMove do
let_it_be(:other_project) { create(:project) }
let_it_be(:old_issue, reload: true) { create(:issue, project: project) }
- let(:new_issue) { Issues::MoveService.new(project, user).execute(old_issue, other_project) }
+ let(:new_issue) { Issues::MoveService.new(project: project, current_user: user).execute(old_issue, other_project) }
let(:attachment) { subject[:attachments].first }
subject { described_class.new(new_issue).present(old_issue) }
diff --git a/spec/models/ci/build_spec.rb b/spec/models/ci/build_spec.rb
index c7850b0bc16..e51711c3895 100644
--- a/spec/models/ci/build_spec.rb
+++ b/spec/models/ci/build_spec.rb
@@ -3653,7 +3653,7 @@ RSpec.describe Ci::Build do
end
describe 'state transition when build fails' do
- let(:service) { ::MergeRequests::AddTodoWhenBuildFailsService.new(project, user) }
+ let(:service) { ::MergeRequests::AddTodoWhenBuildFailsService.new(project: project, current_user: user) }
before do
allow(::MergeRequests::AddTodoWhenBuildFailsService).to receive(:new).and_return(service)
diff --git a/spec/models/concerns/noteable_spec.rb b/spec/models/concerns/noteable_spec.rb
index a7117af81a2..38766d8decd 100644
--- a/spec/models/concerns/noteable_spec.rb
+++ b/spec/models/concerns/noteable_spec.rb
@@ -288,7 +288,7 @@ RSpec.describe Noteable do
end
before do
- MergeRequests::MergeToRefService.new(merge_request.project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: merge_request.project, current_user: merge_request.author).execute(merge_request)
Discussions::CaptureDiffNotePositionsService.new(merge_request).execute
end
diff --git a/spec/models/merge_request_diff_spec.rb b/spec/models/merge_request_diff_spec.rb
index 0e843f0d9dc..4075eb96fc2 100644
--- a/spec/models/merge_request_diff_spec.rb
+++ b/spec/models/merge_request_diff_spec.rb
@@ -61,7 +61,7 @@ RSpec.describe MergeRequestDiff do
let_it_be(:merge_head) do
MergeRequests::MergeToRefService
- .new(merge_request.project, merge_request.author)
+ .new(project: merge_request.project, current_user: merge_request.author)
.execute(merge_request)
merge_request.create_merge_head_diff
diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb
index b534c761d2a..84d4794df5e 100644
--- a/spec/models/merge_request_spec.rb
+++ b/spec/models/merge_request_spec.rb
@@ -2628,7 +2628,7 @@ RSpec.describe MergeRequest, factory_default: :keep do
context 'when the MR has been merged' do
before do
MergeRequests::MergeService
- .new(subject.target_project, subject.author, { sha: subject.diff_head_sha })
+ .new(project: subject.target_project, current_user: subject.author, params: { sha: subject.diff_head_sha })
.execute(subject)
end
@@ -4806,7 +4806,7 @@ RSpec.describe MergeRequest, factory_default: :keep do
context 'when merge_ref_sha is not present' do
let!(:result) do
MergeRequests::MergeToRefService
- .new(merge_request.project, merge_request.author)
+ .new(project: merge_request.project, current_user: merge_request.author)
.execute(merge_request)
end
diff --git a/spec/models/project_services/microsoft_teams_service_spec.rb b/spec/models/project_services/microsoft_teams_service_spec.rb
index 53ab63ef030..b7eb558b2e7 100644
--- a/spec/models/project_services/microsoft_teams_service_spec.rb
+++ b/spec/models/project_services/microsoft_teams_service_spec.rb
@@ -73,7 +73,7 @@ RSpec.describe MicrosoftTeamsService do
context 'with issue events' do
let(:opts) { { title: 'Awesome issue', description: 'please fix' } }
let(:issues_sample_data) do
- service = Issues::CreateService.new(project, user, opts)
+ service = Issues::CreateService.new(project: project, current_user: user, params: opts)
issue = service.execute
service.hook_data(issue, 'open')
end
@@ -96,7 +96,7 @@ RSpec.describe MicrosoftTeamsService do
end
let(:merge_sample_data) do
- service = MergeRequests::CreateService.new(project, user, opts)
+ service = MergeRequests::CreateService.new(project: project, current_user: user, params: opts)
merge_request = service.execute
service.hook_data(merge_request, 'open')
end
diff --git a/spec/serializers/issue_entity_spec.rb b/spec/serializers/issue_entity_spec.rb
index 82ea26fae40..76f8cf644c6 100644
--- a/spec/serializers/issue_entity_spec.rb
+++ b/spec/serializers/issue_entity_spec.rb
@@ -29,7 +29,7 @@ RSpec.describe IssueEntity do
before do
project.add_developer(member)
public_project.add_developer(member)
- Issues::MoveService.new(public_project, member).execute(issue, project)
+ Issues::MoveService.new(project: public_project, current_user: member).execute(issue, project)
end
context 'when user cannot read target project' do
@@ -61,7 +61,7 @@ RSpec.describe IssueEntity do
before do
Issues::DuplicateService
- .new(project, member)
+ .new(project: project, current_user: member)
.execute(issue, new_issue)
end
diff --git a/spec/services/discussions/capture_diff_note_positions_service_spec.rb b/spec/services/discussions/capture_diff_note_positions_service_spec.rb
index be53b02a4c1..25e5f549bee 100644
--- a/spec/services/discussions/capture_diff_note_positions_service_spec.rb
+++ b/spec/services/discussions/capture_diff_note_positions_service_spec.rb
@@ -55,7 +55,7 @@ RSpec.describe Discussions::CaptureDiffNotePositionsService do
context 'and position of the discussion changed on target branch head' do
it 'diff positions are created for the first notes of the discussions' do
- MergeRequests::MergeToRefService.new(project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: project, current_user: merge_request.author).execute(merge_request)
service.execute
verify_diff_note_position!(first_discussion_note, new_line: first_new_line)
diff --git a/spec/services/draft_notes/publish_service_spec.rb b/spec/services/draft_notes/publish_service_spec.rb
index f93622dc25a..2e1de367da3 100644
--- a/spec/services/draft_notes/publish_service_spec.rb
+++ b/spec/services/draft_notes/publish_service_spec.rb
@@ -202,7 +202,7 @@ RSpec.describe DraftNotes::PublishService do
expect(newrev).to be_present
# Generates new MR revision at DB level
- refresh = MergeRequests::RefreshService.new(project, user)
+ refresh = MergeRequests::RefreshService.new(project: project, current_user: user)
refresh.execute(oldrev, newrev, merge_request.source_branch_ref)
expect { publish(draft: draft) }.to change { Suggestion.count }.by(1)
diff --git a/spec/services/issuable/common_system_notes_service_spec.rb b/spec/services/issuable/common_system_notes_service_spec.rb
index a988ab81754..1426ef2a1f6 100644
--- a/spec/services/issuable/common_system_notes_service_spec.rb
+++ b/spec/services/issuable/common_system_notes_service_spec.rb
@@ -23,7 +23,7 @@ RSpec.describe Issuable::CommonSystemNotesService do
end
it 'creates a resource label event' do
- described_class.new(project, user).execute(issuable, old_labels: [])
+ described_class.new(project: project, current_user: user).execute(issuable, old_labels: [])
event = issuable.reload.resource_label_events.last
expect(event).not_to be_nil
@@ -66,7 +66,7 @@ RSpec.describe Issuable::CommonSystemNotesService do
context 'on issuable create' do
let(:issuable) { build(:issue, project: project) }
- subject { described_class.new(project, user).execute(issuable, old_labels: [], is_update: false) }
+ subject { described_class.new(project: project, current_user: user).execute(issuable, old_labels: [], is_update: false) }
it 'does not create system note for title and description' do
issuable.save!
diff --git a/spec/services/issuable/destroy_service_spec.rb b/spec/services/issuable/destroy_service_spec.rb
index fa4902e5237..21063539a4b 100644
--- a/spec/services/issuable/destroy_service_spec.rb
+++ b/spec/services/issuable/destroy_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe Issuable::DestroyService do
let(:group) { create(:group, :public) }
let(:project) { create(:project, :public, group: group) }
- subject(:service) { described_class.new(project, user) }
+ subject(:service) { described_class.new(project: project, current_user: user) }
describe '#execute' do
context 'when issuable is an issue' do
diff --git a/spec/services/issues/after_create_service_spec.rb b/spec/services/issues/after_create_service_spec.rb
index bc9be3211d3..6b720d6e687 100644
--- a/spec/services/issues/after_create_service_spec.rb
+++ b/spec/services/issues/after_create_service_spec.rb
@@ -11,7 +11,7 @@ RSpec.describe Issues::AfterCreateService do
let_it_be(:milestone) { create(:milestone, project: project) }
let_it_be(:issue) { create(:issue, project: project, author: current_user, milestone: milestone, assignee_ids: [assignee.id]) }
- subject(:after_create_service) { described_class.new(project, current_user) }
+ subject(:after_create_service) { described_class.new(project: project, current_user: current_user) }
describe '#execute' do
it 'creates a pending todo for new assignee' do
diff --git a/spec/services/issues/build_service_spec.rb b/spec/services/issues/build_service_spec.rb
index 87b5f250d4b..d0f228fb3d9 100644
--- a/spec/services/issues/build_service_spec.rb
+++ b/spec/services/issues/build_service_spec.rb
@@ -15,7 +15,7 @@ RSpec.describe Issues::BuildService do
end
def build_issue(issue_params = {})
- described_class.new(project, user, issue_params).execute
+ described_class.new(project: project, current_user: user, params: issue_params).execute
end
context 'for a single discussion' do
@@ -41,7 +41,7 @@ RSpec.describe Issues::BuildService do
describe '#items_for_discussions' do
it 'has an item for each discussion' do
create(:diff_note_on_merge_request, noteable: merge_request, project: merge_request.source_project, line_number: 13)
- service = described_class.new(project, user, merge_request_to_resolve_discussions_of: merge_request.iid)
+ service = described_class.new(project: project, current_user: user, params: { merge_request_to_resolve_discussions_of: merge_request.iid })
service.execute
@@ -50,7 +50,7 @@ RSpec.describe Issues::BuildService do
end
describe '#item_for_discussion' do
- let(:service) { described_class.new(project, user, merge_request_to_resolve_discussions_of: merge_request.iid) }
+ let(:service) { described_class.new(project: project, current_user: user, params: { merge_request_to_resolve_discussions_of: merge_request.iid }) }
it 'mentions the author of the note' do
discussion = create(:diff_note_on_merge_request, author: create(:user, username: 'author')).to_discussion
diff --git a/spec/services/issues/clone_service_spec.rb b/spec/services/issues/clone_service_spec.rb
index 44180a322ca..abbcb1c1d48 100644
--- a/spec/services/issues/clone_service_spec.rb
+++ b/spec/services/issues/clone_service_spec.rb
@@ -22,7 +22,7 @@ RSpec.describe Issues::CloneService do
let(:with_notes) { false }
subject(:clone_service) do
- described_class.new(old_project, user)
+ described_class.new(project: old_project, current_user: user)
end
shared_context 'user can clone issue' do
diff --git a/spec/services/issues/close_service_spec.rb b/spec/services/issues/close_service_spec.rb
index 8e02a07c0cd..f18c72d3991 100644
--- a/spec/services/issues/close_service_spec.rb
+++ b/spec/services/issues/close_service_spec.rb
@@ -20,7 +20,7 @@ RSpec.describe Issues::CloseService do
end
describe '#execute' do
- let(:service) { described_class.new(project, user) }
+ let(:service) { described_class.new(project: project, current_user: user) }
it 'checks if the user is authorized to update the issue' do
expect(service).to receive(:can?).with(user, :update_issue, issue)
@@ -87,7 +87,7 @@ RSpec.describe Issues::CloseService do
project.reload
expect(project.external_issue_tracker).to receive(:close_issue)
- described_class.new(project, user).close_issue(external_issue)
+ described_class.new(project: project, current_user: user).close_issue(external_issue)
end
end
@@ -98,7 +98,7 @@ RSpec.describe Issues::CloseService do
project.reload
expect(project.external_issue_tracker).not_to receive(:close_issue)
- described_class.new(project, user).close_issue(external_issue)
+ described_class.new(project: project, current_user: user).close_issue(external_issue)
end
end
@@ -109,7 +109,7 @@ RSpec.describe Issues::CloseService do
project.reload
expect(project.external_issue_tracker).not_to receive(:close_issue)
- described_class.new(project, user).close_issue(external_issue)
+ described_class.new(project: project, current_user: user).close_issue(external_issue)
end
end
end
@@ -117,7 +117,7 @@ RSpec.describe Issues::CloseService do
context "closed by a merge request", :sidekiq_might_not_need_inline do
subject(:close_issue) do
perform_enqueued_jobs do
- described_class.new(project, user).close_issue(issue, closed_via: closing_merge_request)
+ described_class.new(project: project, current_user: user).close_issue(issue, closed_via: closing_merge_request)
end
end
@@ -186,7 +186,7 @@ RSpec.describe Issues::CloseService do
context "closed by a commit", :sidekiq_might_not_need_inline do
it 'mentions closure via a commit' do
perform_enqueued_jobs do
- described_class.new(project, user).close_issue(issue, closed_via: closing_commit)
+ described_class.new(project: project, current_user: user).close_issue(issue, closed_via: closing_commit)
end
email = ActionMailer::Base.deliveries.last
@@ -200,7 +200,7 @@ RSpec.describe Issues::CloseService do
it 'does not mention the commit id' do
project.project_feature.update_attribute(:repository_access_level, ProjectFeature::DISABLED)
perform_enqueued_jobs do
- described_class.new(project, user).close_issue(issue, closed_via: closing_commit)
+ described_class.new(project: project, current_user: user).close_issue(issue, closed_via: closing_commit)
end
email = ActionMailer::Base.deliveries.last
@@ -216,7 +216,7 @@ RSpec.describe Issues::CloseService do
context "valid params" do
subject(:close_issue) do
perform_enqueued_jobs do
- described_class.new(project, user).close_issue(issue)
+ described_class.new(project: project, current_user: user).close_issue(issue)
end
end
@@ -325,7 +325,7 @@ RSpec.describe Issues::CloseService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :issue_hooks)
- described_class.new(project, user).close_issue(issue)
+ described_class.new(project: project, current_user: user).close_issue(issue)
end
end
@@ -336,7 +336,7 @@ RSpec.describe Issues::CloseService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :confidential_issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :confidential_issue_hooks)
- described_class.new(project, user).close_issue(issue)
+ described_class.new(project: project, current_user: user).close_issue(issue)
end
end
diff --git a/spec/services/issues/create_service_spec.rb b/spec/services/issues/create_service_spec.rb
index 83c6373c335..9c84242d8ae 100644
--- a/spec/services/issues/create_service_spec.rb
+++ b/spec/services/issues/create_service_spec.rb
@@ -12,7 +12,7 @@ RSpec.describe Issues::CreateService do
let_it_be(:assignee) { create(:user) }
let_it_be(:milestone) { create(:milestone, project: project) }
- let(:issue) { described_class.new(project, user, opts).execute }
+ let(:issue) { described_class.new(project: project, current_user: user, params: opts).execute }
context 'when params are valid' do
let_it_be(:labels) { create_pair(:label, project: project) }
@@ -44,7 +44,7 @@ RSpec.describe Issues::CreateService do
end
context 'when skip_system_notes is true' do
- let(:issue) { described_class.new(project, user, opts).execute(skip_system_notes: true) }
+ let(:issue) { described_class.new(project: project, current_user: user, params: opts).execute(skip_system_notes: true) }
it 'does not call Issuable::CommonSystemNotesService' do
expect(Issuable::CommonSystemNotesService).not_to receive(:new)
@@ -96,7 +96,7 @@ RSpec.describe Issues::CreateService do
end
it 'filters out params that cannot be set without the :admin_issue permission' do
- issue = described_class.new(project, guest, opts).execute
+ issue = described_class.new(project: project, current_user: guest, params: opts).execute
expect(issue).to be_persisted
expect(issue.title).to eq('Awesome issue')
@@ -108,7 +108,7 @@ RSpec.describe Issues::CreateService do
end
it 'creates confidential issues' do
- issue = described_class.new(project, guest, confidential: true).execute
+ issue = described_class.new(project: project, current_user: guest, params: { confidential: true }).execute
expect(issue.confidential).to be_truthy
end
@@ -117,7 +117,7 @@ RSpec.describe Issues::CreateService do
it 'moves the issue to the end, in an asynchronous worker' do
expect(IssuePlacementWorker).to receive(:perform_async).with(be_nil, Integer)
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
end
context 'when label belongs to project group' do
@@ -204,7 +204,7 @@ RSpec.describe Issues::CreateService do
it 'invalidates open issues counter for assignees when issue is assigned' do
project.add_maintainer(assignee)
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
expect(assignee.assigned_open_issues_count).to eq 1
end
@@ -230,7 +230,7 @@ RSpec.describe Issues::CreateService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :issue_hooks)
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
end
it 'executes confidential issue hooks when issue is confidential' do
@@ -239,7 +239,7 @@ RSpec.describe Issues::CreateService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :confidential_issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :confidential_issue_hooks)
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
end
context 'after_save callback to store_mentions' do
@@ -283,7 +283,7 @@ RSpec.describe Issues::CreateService do
it 'removes assignee when user id is invalid' do
opts = { title: 'Title', description: 'Description', assignee_ids: [-1] }
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.assignees).to be_empty
end
@@ -291,7 +291,7 @@ RSpec.describe Issues::CreateService do
it 'removes assignee when user id is 0' do
opts = { title: 'Title', description: 'Description', assignee_ids: [0] }
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.assignees).to be_empty
end
@@ -300,7 +300,7 @@ RSpec.describe Issues::CreateService do
project.add_maintainer(assignee)
opts = { title: 'Title', description: 'Description', assignee_ids: [assignee.id] }
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.assignees).to eq([assignee])
end
@@ -318,7 +318,7 @@ RSpec.describe Issues::CreateService do
project.update!(visibility_level: level)
opts = { title: 'Title', description: 'Description', assignee_ids: [assignee.id] }
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.assignees).to be_empty
end
@@ -328,7 +328,7 @@ RSpec.describe Issues::CreateService do
end
it_behaves_like 'issuable record that supports quick actions' do
- let(:issuable) { described_class.new(project, user, params).execute }
+ let(:issuable) { described_class.new(project: project, current_user: user, params: params).execute }
end
context 'Quick actions' do
@@ -368,14 +368,14 @@ RSpec.describe Issues::CreateService do
let(:opts) { { discussion_to_resolve: discussion.id, merge_request_to_resolve_discussions_of: merge_request.iid } }
it 'resolves the discussion' do
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
discussion.first_note.reload
expect(discussion.resolved?).to be(true)
end
it 'added a system note to the discussion' do
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
reloaded_discussion = MergeRequest.find(merge_request.id).discussions.first
@@ -383,17 +383,19 @@ RSpec.describe Issues::CreateService do
end
it 'assigns the title and description for the issue' do
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.title).not_to be_nil
expect(issue.description).not_to be_nil
end
it 'can set nil explicitly to the title and description' do
- issue = described_class.new(project, user,
- merge_request_to_resolve_discussions_of: merge_request,
- description: nil,
- title: nil).execute
+ issue = described_class.new(project: project, current_user: user,
+ params: {
+ merge_request_to_resolve_discussions_of: merge_request,
+ description: nil,
+ title: nil
+ }).execute
expect(issue.description).to be_nil
expect(issue.title).to be_nil
@@ -404,14 +406,14 @@ RSpec.describe Issues::CreateService do
let(:opts) { { merge_request_to_resolve_discussions_of: merge_request.iid } }
it 'resolves the discussion' do
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
discussion.first_note.reload
expect(discussion.resolved?).to be(true)
end
it 'added a system note to the discussion' do
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
reloaded_discussion = MergeRequest.find(merge_request.id).discussions.first
@@ -419,17 +421,19 @@ RSpec.describe Issues::CreateService do
end
it 'assigns the title and description for the issue' do
- issue = described_class.new(project, user, opts).execute
+ issue = described_class.new(project: project, current_user: user, params: opts).execute
expect(issue.title).not_to be_nil
expect(issue.description).not_to be_nil
end
it 'can set nil explicitly to the title and description' do
- issue = described_class.new(project, user,
- merge_request_to_resolve_discussions_of: merge_request,
- description: nil,
- title: nil).execute
+ issue = described_class.new(project: project, current_user: user,
+ params: {
+ merge_request_to_resolve_discussions_of: merge_request,
+ description: nil,
+ title: nil
+ }).execute
expect(issue.description).to be_nil
expect(issue.title).to be_nil
@@ -454,7 +458,7 @@ RSpec.describe Issues::CreateService do
end
subject do
- described_class.new(project, user, params)
+ described_class.new(project: project, current_user: user, params: params)
end
before do
diff --git a/spec/services/issues/duplicate_service_spec.rb b/spec/services/issues/duplicate_service_spec.rb
index 0b5bc3f32ef..0eb0bbb1480 100644
--- a/spec/services/issues/duplicate_service_spec.rb
+++ b/spec/services/issues/duplicate_service_spec.rb
@@ -10,7 +10,7 @@ RSpec.describe Issues::DuplicateService do
let(:canonical_issue) { create(:issue, project: canonical_project) }
let(:duplicate_issue) { create(:issue, project: duplicate_project) }
- subject { described_class.new(duplicate_project, user, {}) }
+ subject { described_class.new(project: duplicate_project, current_user: user) }
describe '#execute' do
context 'when the issues passed are the same' do
diff --git a/spec/services/issues/move_service_spec.rb b/spec/services/issues/move_service_spec.rb
index 2f29a2e2022..76588860957 100644
--- a/spec/services/issues/move_service_spec.rb
+++ b/spec/services/issues/move_service_spec.rb
@@ -20,7 +20,7 @@ RSpec.describe Issues::MoveService do
end
subject(:move_service) do
- described_class.new(old_project, user)
+ described_class.new(project: old_project, current_user: user)
end
shared_context 'user can move issue' do
diff --git a/spec/services/issues/referenced_merge_requests_service_spec.rb b/spec/services/issues/referenced_merge_requests_service_spec.rb
index 1dfe88d9951..dc55ba8ebea 100644
--- a/spec/services/issues/referenced_merge_requests_service_spec.rb
+++ b/spec/services/issues/referenced_merge_requests_service_spec.rb
@@ -26,7 +26,7 @@ RSpec.describe Issues::ReferencedMergeRequestsService do
let_it_be(:referencing_mr) { create_referencing_mr(source_project: project, source_branch: 'csv') }
let_it_be(:referencing_mr_other_project) { create_referencing_mr(source_project: other_project, source_branch: 'csv') }
- let(:service) { described_class.new(project, user) }
+ let(:service) { described_class.new(project: project, current_user: user) }
describe '#execute' do
it 'returns a list of sorted merge requests' do
diff --git a/spec/services/issues/related_branches_service_spec.rb b/spec/services/issues/related_branches_service_spec.rb
index c9c029bca4f..7a4bae7f852 100644
--- a/spec/services/issues/related_branches_service_spec.rb
+++ b/spec/services/issues/related_branches_service_spec.rb
@@ -8,7 +8,7 @@ RSpec.describe Issues::RelatedBranchesService do
let(:user) { developer }
- subject { described_class.new(issue.project, user) }
+ subject { described_class.new(project: issue.project, current_user: user) }
before do
issue.project.add_developer(developer)
@@ -95,7 +95,7 @@ RSpec.describe Issues::RelatedBranchesService do
merge_request.create_cross_references!(user)
referenced_merge_requests = Issues::ReferencedMergeRequestsService
- .new(issue.project, user)
+ .new(project: issue.project, current_user: user)
.referenced_merge_requests(issue)
expect(referenced_merge_requests).not_to be_empty
diff --git a/spec/services/issues/reopen_service_spec.rb b/spec/services/issues/reopen_service_spec.rb
index ffe74cca9cf..746a9105531 100644
--- a/spec/services/issues/reopen_service_spec.rb
+++ b/spec/services/issues/reopen_service_spec.rb
@@ -13,7 +13,7 @@ RSpec.describe Issues::ReopenService do
project.add_guest(guest)
perform_enqueued_jobs do
- described_class.new(project, guest).execute(issue)
+ described_class.new(project: project, current_user: guest).execute(issue)
end
end
@@ -33,11 +33,11 @@ RSpec.describe Issues::ReopenService do
issue.assignees << user
expect_any_instance_of(User).to receive(:invalidate_issue_cache_counts)
- described_class.new(project, user).execute(issue)
+ described_class.new(project: project, current_user: user).execute(issue)
end
it 'refreshes the number of opened issues' do
- service = described_class.new(project, user)
+ service = described_class.new(project: project, current_user: user)
expect { service.execute(issue) }
.to change { project.open_issues_count }.from(0).to(1)
@@ -50,14 +50,14 @@ RSpec.describe Issues::ReopenService do
expect(service).to receive(:delete_cache).and_call_original
end
- described_class.new(project, user).execute(issue)
+ described_class.new(project: project, current_user: user).execute(issue)
end
context 'issue is incident type' do
let(:issue) { create(:incident, :closed, project: project) }
let(:current_user) { user }
- subject { described_class.new(project, user).execute(issue) }
+ subject { described_class.new(project: project, current_user: user).execute(issue) }
it_behaves_like 'an incident management tracked event', :incident_management_incident_reopened
end
@@ -67,7 +67,7 @@ RSpec.describe Issues::ReopenService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :issue_hooks)
- described_class.new(project, user).execute(issue)
+ described_class.new(project: project, current_user: user).execute(issue)
end
end
@@ -78,7 +78,7 @@ RSpec.describe Issues::ReopenService do
expect(project).to receive(:execute_hooks).with(an_instance_of(Hash), :confidential_issue_hooks)
expect(project).to receive(:execute_services).with(an_instance_of(Hash), :confidential_issue_hooks)
- described_class.new(project, user).execute(issue)
+ described_class.new(project: project, current_user: user).execute(issue)
end
end
end
diff --git a/spec/services/issues/reorder_service_spec.rb b/spec/services/issues/reorder_service_spec.rb
index 78b937a1caf..15668a3aa23 100644
--- a/spec/services/issues/reorder_service_spec.rb
+++ b/spec/services/issues/reorder_service_spec.rb
@@ -75,7 +75,7 @@ RSpec.describe Issues::ReorderService do
match_params = { move_between_ids: [issue2.id, issue3.id], board_group_id: group.id }
expect(Issues::UpdateService)
- .to receive(:new).with(project, user, match_params)
+ .to receive(:new).with(project: project, current_user: user, params: match_params)
.and_return(double(execute: build(:issue)))
subject.execute(issue1)
@@ -95,6 +95,6 @@ RSpec.describe Issues::ReorderService do
end
def service(params)
- described_class.new(project, user, params)
+ described_class.new(project: project, current_user: user, params: params)
end
end
diff --git a/spec/services/issues/resolve_discussions_spec.rb b/spec/services/issues/resolve_discussions_spec.rb
index 927dd7ae3e7..1ac71b966bc 100644
--- a/spec/services/issues/resolve_discussions_spec.rb
+++ b/spec/services/issues/resolve_discussions_spec.rb
@@ -11,7 +11,7 @@ RSpec.describe Issues::ResolveDiscussions do
DummyService.class_eval do
include ::Issues::ResolveDiscussions
- def initialize(*args)
+ def initialize(project:, current_user: nil, params: {})
super
filter_resolve_discussion_params
end
@@ -26,7 +26,7 @@ RSpec.describe Issues::ResolveDiscussions do
let(:other_merge_request) { create(:merge_request, source_project: project, source_branch: "fix") }
describe "#merge_request_for_resolving_discussion" do
- let(:service) { DummyService.new(project, user, merge_request_to_resolve_discussions_of: merge_request.iid) }
+ let(:service) { DummyService.new(project: project, current_user: user, params: { merge_request_to_resolve_discussions_of: merge_request.iid }) }
it "finds the merge request" do
expect(service.merge_request_to_resolve_discussions_of).to eq(merge_request)
@@ -45,10 +45,12 @@ RSpec.describe Issues::ResolveDiscussions do
describe "#discussions_to_resolve" do
it "contains a single discussion when matching merge request and discussion are passed" do
service = DummyService.new(
- project,
- user,
- discussion_to_resolve: discussion.id,
- merge_request_to_resolve_discussions_of: merge_request.iid
+ project: project,
+ current_user: user,
+ params: {
+ discussion_to_resolve: discussion.id,
+ merge_request_to_resolve_discussions_of: merge_request.iid
+ }
)
# We need to compare discussion id's because the Discussion-objects are rebuilt
# which causes the object-id's not to be different.
@@ -63,9 +65,9 @@ RSpec.describe Issues::ResolveDiscussions do
project: merge_request.target_project,
line_number: 15)])
service = DummyService.new(
- project,
- user,
- merge_request_to_resolve_discussions_of: merge_request.iid
+ project: project,
+ current_user: user,
+ params: { merge_request_to_resolve_discussions_of: merge_request.iid }
)
# We need to compare discussion id's because the Discussion-objects are rebuilt
# which causes the object-id's not to be different.
@@ -81,9 +83,9 @@ RSpec.describe Issues::ResolveDiscussions do
line_number: 15
)])
service = DummyService.new(
- project,
- user,
- merge_request_to_resolve_discussions_of: merge_request.iid
+ project: project,
+ current_user: user,
+ params: { merge_request_to_resolve_discussions_of: merge_request.iid }
)
# We need to compare discussion id's because the Discussion-objects are rebuilt
# which causes the object-id's not to be different.
@@ -94,10 +96,12 @@ RSpec.describe Issues::ResolveDiscussions do
it "is empty when a discussion and another merge request are passed" do
service = DummyService.new(
- project,
- user,
- discussion_to_resolve: discussion.id,
- merge_request_to_resolve_discussions_of: other_merge_request.iid
+ project: project,
+ current_user: user,
+ params: {
+ discussion_to_resolve: discussion.id,
+ merge_request_to_resolve_discussions_of: other_merge_request.iid
+ }
)
expect(service.discussions_to_resolve).to be_empty
diff --git a/spec/services/issues/update_service_spec.rb b/spec/services/issues/update_service_spec.rb
index 5d716d2a53e..2bb62f49bd0 100644
--- a/spec/services/issues/update_service_spec.rb
+++ b/spec/services/issues/update_service_spec.rb
@@ -41,7 +41,7 @@ RSpec.describe Issues::UpdateService, :mailer do
end
def update_issue(opts)
- described_class.new(project, user, opts).execute(issue)
+ described_class.new(project: project, current_user: user, params: opts).execute(issue)
end
context 'valid params' do
@@ -269,7 +269,7 @@ RSpec.describe Issues::UpdateService, :mailer do
opts[:move_between_ids] = [issue_1.id, issue_2.id]
opts[:board_group_id] = group.id
- described_class.new(issue_3.project, user, opts).execute(issue_3)
+ described_class.new(project: issue_3.project, current_user: user, params: opts).execute(issue_3)
expect(issue_2.relative_position).to be_between(issue_1.relative_position, issue_2.relative_position)
end
end
@@ -283,9 +283,7 @@ RSpec.describe Issues::UpdateService, :mailer do
it 'filters out params that cannot be set without the :admin_issue permission' do
described_class.new(
- project,
- guest,
- opts.merge(
+ project: project, current_user: guest, params: opts.merge(
confidential: true,
issue_type: 'test_case'
)
@@ -658,7 +656,7 @@ RSpec.describe Issues::UpdateService, :mailer do
opts = { label_ids: [label.id] }
perform_enqueued_jobs do
- @issue = described_class.new(project, user, opts).execute(issue)
+ @issue = described_class.new(project: project, current_user: user, params: opts).execute(issue)
end
should_email(subscriber)
@@ -674,7 +672,7 @@ RSpec.describe Issues::UpdateService, :mailer do
opts = { label_ids: [label.id, label2.id] }
perform_enqueued_jobs do
- @issue = described_class.new(project, user, opts).execute(issue)
+ @issue = described_class.new(project: project, current_user: user, params: opts).execute(issue)
end
should_not_email(subscriber)
@@ -685,7 +683,7 @@ RSpec.describe Issues::UpdateService, :mailer do
opts = { label_ids: [label2.id] }
perform_enqueued_jobs do
- @issue = described_class.new(project, user, opts).execute(issue)
+ @issue = described_class.new(project: project, current_user: user, params: opts).execute(issue)
end
should_not_email(subscriber)
@@ -717,7 +715,7 @@ RSpec.describe Issues::UpdateService, :mailer do
line_number: 1
}
}
- service = described_class.new(project, user, params)
+ service = described_class.new(project: project, current_user: user, params: params)
expect(Spam::SpamActionService).not_to receive(:new)
@@ -793,7 +791,7 @@ RSpec.describe Issues::UpdateService, :mailer do
context 'updating labels' do
let(:label3) { create(:label, project: project) }
- let(:result) { described_class.new(project, user, params).execute(issue).reload }
+ let(:result) { described_class.new(project: project, current_user: user, params: params).execute(issue).reload }
context 'when add_label_ids and label_ids are passed' do
let(:params) { { label_ids: [label.id], add_label_ids: [label3.id] } }
@@ -991,14 +989,14 @@ RSpec.describe Issues::UpdateService, :mailer do
it 'raises an error for invalid move ids within a project' do
opts = { move_between_ids: [9000, non_existing_record_id] }
- expect { described_class.new(issue.project, user, opts).execute(issue) }
+ expect { described_class.new(project: issue.project, current_user: user, params: opts).execute(issue) }
.to raise_error(ActiveRecord::RecordNotFound)
end
it 'raises an error for invalid move ids within a group' do
opts = { move_between_ids: [9000, non_existing_record_id], board_group_id: create(:group).id }
- expect { described_class.new(issue.project, user, opts).execute(issue) }
+ expect { described_class.new(project: issue.project, current_user: user, params: opts).execute(issue) }
.to raise_error(ActiveRecord::RecordNotFound)
end
end
@@ -1040,7 +1038,7 @@ RSpec.describe Issues::UpdateService, :mailer do
it_behaves_like 'issuable record that supports quick actions' do
let(:existing_issue) { create(:issue, project: project) }
- let(:issuable) { described_class.new(project, user, params).execute(existing_issue) }
+ let(:issuable) { described_class.new(project: project, current_user: user, params: params).execute(existing_issue) }
end
end
end
diff --git a/spec/services/issues/zoom_link_service_spec.rb b/spec/services/issues/zoom_link_service_spec.rb
index 8e8adc516cf..19db892fcae 100644
--- a/spec/services/issues/zoom_link_service_spec.rb
+++ b/spec/services/issues/zoom_link_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe Issues::ZoomLinkService do
let_it_be(:issue) { create(:issue) }
let(:project) { issue.project }
- let(:service) { described_class.new(issue, user) }
+ let(:service) { described_class.new(project: project, current_user: user, params: { issue: issue }) }
let(:zoom_link) { 'https://zoom.us/j/123456789' }
before do
diff --git a/spec/services/merge_requests/add_context_service_spec.rb b/spec/services/merge_requests/add_context_service_spec.rb
index 27b46a9023c..448be27efe8 100644
--- a/spec/services/merge_requests/add_context_service_spec.rb
+++ b/spec/services/merge_requests/add_context_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::AddContextService do
let(:commits) { ["874797c3a73b60d2187ed6e2fcabd289ff75171e"] }
let(:raw_repository) { project.repository.raw }
- subject(:service) { described_class.new(project, admin, merge_request: merge_request, commits: commits) }
+ subject(:service) { described_class.new(project: project, current_user: admin, params: { merge_request: merge_request, commits: commits }) }
describe "#execute" do
context "when admin mode is enabled", :enable_admin_mode do
@@ -32,7 +32,7 @@ RSpec.describe MergeRequests::AddContextService do
let(:user) { create(:user) }
let(:merge_request1) { create(:merge_request, source_project: project, author: user) }
- subject(:service) { described_class.new(project, user, merge_request: merge_request, commits: commits) }
+ subject(:service) { described_class.new(project: project, current_user: user, params: { merge_request: merge_request, commits: commits }) }
it "doesn't add context commit" do
subject.execute
@@ -42,7 +42,7 @@ RSpec.describe MergeRequests::AddContextService do
end
context "when the commits array is empty" do
- subject(:service) { described_class.new(project, admin, merge_request: merge_request, commits: []) }
+ subject(:service) { described_class.new(project: project, current_user: admin, params: { merge_request: merge_request, commits: [] }) }
it "doesn't add context commit" do
subject.execute
diff --git a/spec/services/merge_requests/add_spent_time_service_spec.rb b/spec/services/merge_requests/add_spent_time_service_spec.rb
index 42c692eb128..db3380e9582 100644
--- a/spec/services/merge_requests/add_spent_time_service_spec.rb
+++ b/spec/services/merge_requests/add_spent_time_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::AddSpentTimeService do
let(:duration) { 1500 }
let(:params) { { spend_time: { duration: duration, user_id: user.id } } }
- let(:service) { described_class.new(project, user, params) }
+ let(:service) { described_class.new(project: project, current_user: user, params: params) }
describe '#execute' do
before do
@@ -44,7 +44,7 @@ RSpec.describe MergeRequests::AddSpentTimeService do
it 'is more efficient than using the full update-service' do
other_mr = create(:merge_request, :simple, :unique_branches, source_project: project)
- update_service = ::MergeRequests::UpdateService.new(project, user, params)
+ update_service = ::MergeRequests::UpdateService.new(project: project, current_user: user, params: params)
other_mr.reload
expect { service.execute(merge_request) }
diff --git a/spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb b/spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb
index 6edaa91b8b2..8d1abe5ea89 100644
--- a/spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb
+++ b/spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe ::MergeRequests::AddTodoWhenBuildFailsService do
let(:ref) { merge_request.source_branch }
let(:service) do
- described_class.new(project, user, commit_message: 'Awesome message')
+ described_class.new(project: project, current_user: user, params: { commit_message: 'Awesome message' })
end
let(:todo_service) { spy('todo service') }
diff --git a/spec/services/merge_requests/after_create_service_spec.rb b/spec/services/merge_requests/after_create_service_spec.rb
index e1f28e32164..cbbd193a411 100644
--- a/spec/services/merge_requests/after_create_service_spec.rb
+++ b/spec/services/merge_requests/after_create_service_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe MergeRequests::AfterCreateService do
let_it_be(:merge_request) { create(:merge_request) }
subject(:after_create_service) do
- described_class.new(merge_request.target_project, merge_request.author)
+ described_class.new(project: merge_request.target_project, current_user: merge_request.author)
end
describe '#execute' do
@@ -191,7 +191,7 @@ RSpec.describe MergeRequests::AfterCreateService do
it 'calls MergeRequests::LinkLfsObjectsService#execute' do
service = instance_spy(MergeRequests::LinkLfsObjectsService)
- allow(MergeRequests::LinkLfsObjectsService).to receive(:new).with(merge_request.target_project).and_return(service)
+ allow(MergeRequests::LinkLfsObjectsService).to receive(:new).with(project: merge_request.target_project).and_return(service)
execute_service
diff --git a/spec/services/merge_requests/approval_service_spec.rb b/spec/services/merge_requests/approval_service_spec.rb
index df9a98c5540..d30b2721a36 100644
--- a/spec/services/merge_requests/approval_service_spec.rb
+++ b/spec/services/merge_requests/approval_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::ApprovalService do
let(:project) { merge_request.project }
let!(:todo) { create(:todo, user: user, project: project, target: merge_request) }
- subject(:service) { described_class.new(project, user) }
+ subject(:service) { described_class.new(project: project, current_user: user) }
before do
project.add_developer(user)
diff --git a/spec/services/merge_requests/assign_issues_service_spec.rb b/spec/services/merge_requests/assign_issues_service_spec.rb
index 6398e8c533e..b857f26c052 100644
--- a/spec/services/merge_requests/assign_issues_service_spec.rb
+++ b/spec/services/merge_requests/assign_issues_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe MergeRequests::AssignIssuesService do
let(:project) { create(:project, :public, :repository) }
let(:issue) { create(:issue, project: project) }
let(:merge_request) { create(:merge_request, :simple, source_project: project, author: user, description: "fixes #{issue.to_reference}") }
- let(:service) { described_class.new(project, user, merge_request: merge_request) }
+ let(:service) { described_class.new(project: project, current_user: user, params: { merge_request: merge_request }) }
before do
project.add_developer(user)
@@ -37,10 +37,12 @@ RSpec.describe MergeRequests::AssignIssuesService do
it 'accepts precomputed data for closes_issues' do
issue2 = create(:issue, project: project)
- service2 = described_class.new(project,
- user,
- merge_request: merge_request,
- closes_issues: [issue, issue2])
+ service2 = described_class.new(project: project,
+ current_user: user,
+ params: {
+ merge_request: merge_request,
+ closes_issues: [issue, issue2]
+ })
expect(service2.assignable_issues.count).to eq 2
end
@@ -52,10 +54,12 @@ RSpec.describe MergeRequests::AssignIssuesService do
it 'ignores external issues' do
external_issue = ExternalIssue.new('JIRA-123', project)
service = described_class.new(
- project,
- user,
- merge_request: merge_request,
- closes_issues: [external_issue]
+ project: project,
+ current_user: user,
+ params: {
+ merge_request: merge_request,
+ closes_issues: [external_issue]
+ }
)
expect(service.assignable_issues.count).to eq 0
diff --git a/spec/services/merge_requests/base_service_spec.rb b/spec/services/merge_requests/base_service_spec.rb
index d8ba2bc43fb..7911392ef19 100644
--- a/spec/services/merge_requests/base_service_spec.rb
+++ b/spec/services/merge_requests/base_service_spec.rb
@@ -17,7 +17,7 @@ RSpec.describe MergeRequests::BaseService do
}
end
- subject { MergeRequests::CreateService.new(project, project.owner, params) }
+ subject { MergeRequests::CreateService.new(project: project, current_user: project.owner, params: params) }
describe '#execute_hooks' do
shared_examples 'enqueues Jira sync worker' do
diff --git a/spec/services/merge_requests/build_service_spec.rb b/spec/services/merge_requests/build_service_spec.rb
index 8adf6d69f73..5a6a9df3f44 100644
--- a/spec/services/merge_requests/build_service_spec.rb
+++ b/spec/services/merge_requests/build_service_spec.rb
@@ -49,7 +49,7 @@ RSpec.describe MergeRequests::BuildService do
end
let(:service) do
- described_class.new(project, user, params)
+ described_class.new(project: project, current_user: user, params: params)
end
before do
@@ -100,7 +100,7 @@ RSpec.describe MergeRequests::BuildService do
context 'with force_remove_source_branch parameter when the user is authorized' do
let(:mr_params) { params.merge(force_remove_source_branch: '1') }
let(:source_project) { fork_project(project, user) }
- let(:merge_request) { described_class.new(project, user, mr_params).execute }
+ let(:merge_request) { described_class.new(project: project, current_user: user, params: mr_params).execute }
before do
project.add_reporter(user)
diff --git a/spec/services/merge_requests/cleanup_refs_service_spec.rb b/spec/services/merge_requests/cleanup_refs_service_spec.rb
index a1822a4d5ba..e8690ae5bf2 100644
--- a/spec/services/merge_requests/cleanup_refs_service_spec.rb
+++ b/spec/services/merge_requests/cleanup_refs_service_spec.rb
@@ -54,7 +54,7 @@ RSpec.describe MergeRequests::CleanupRefsService do
context 'when merge request has merge ref' do
before do
MergeRequests::MergeToRefService
- .new(merge_request.project, merge_request.author)
+ .new(project: merge_request.project, current_user: merge_request.author)
.execute(merge_request)
end
diff --git a/spec/services/merge_requests/close_service_spec.rb b/spec/services/merge_requests/close_service_spec.rb
index 48f56b3ec68..f6336a85a25 100644
--- a/spec/services/merge_requests/close_service_spec.rb
+++ b/spec/services/merge_requests/close_service_spec.rb
@@ -21,7 +21,7 @@ RSpec.describe MergeRequests::CloseService do
it_behaves_like 'merge request reviewers cache counters invalidator'
context 'valid params' do
- let(:service) { described_class.new(project, user, {}) }
+ let(:service) { described_class.new(project: project, current_user: user) }
before do
allow(service).to receive(:execute_hooks)
@@ -73,7 +73,7 @@ RSpec.describe MergeRequests::CloseService do
expect(metrics_service).to receive(:close)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'calls the merge request activity counter' do
@@ -81,11 +81,11 @@ RSpec.describe MergeRequests::CloseService do
.to receive(:track_close_mr_action)
.with(user: user)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'refreshes the number of open merge requests for a valid MR', :use_clean_rails_memory_store_caching do
- service = described_class.new(project, user, {})
+ service = described_class.new(project: project, current_user: user)
expect { service.execute(merge_request) }
.to change { project.open_merge_requests_count }.from(1).to(0)
@@ -96,19 +96,19 @@ RSpec.describe MergeRequests::CloseService do
expect(service).to receive(:execute_for_merge_request).with(merge_request)
end
- described_class.new(project, user).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'schedules CleanupRefsService' do
expect(MergeRequests::CleanupRefsService).to receive(:schedule).with(merge_request)
- described_class.new(project, user).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
context 'current user is not authorized to close merge request' do
before do
perform_enqueued_jobs do
- @merge_request = described_class.new(project, guest).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: guest).execute(merge_request)
end
end
diff --git a/spec/services/merge_requests/create_from_issue_service_spec.rb b/spec/services/merge_requests/create_from_issue_service_spec.rb
index 6528edfc8b7..749b30bff5f 100644
--- a/spec/services/merge_requests/create_from_issue_service_spec.rb
+++ b/spec/services/merge_requests/create_from_issue_service_spec.rb
@@ -11,8 +11,8 @@ RSpec.describe MergeRequests::CreateFromIssueService do
let(:milestone_id) { create(:milestone, project: project).id }
let(:issue) { create(:issue, project: project, milestone_id: milestone_id) }
let(:custom_source_branch) { 'custom-source-branch' }
- let(:service) { described_class.new(project, user, service_params) }
- let(:service_with_custom_source_branch) { described_class.new(project, user, branch_name: custom_source_branch, **service_params) }
+ let(:service) { described_class.new(project: project, current_user: user, mr_params: service_params) }
+ let(:service_with_custom_source_branch) { described_class.new(project: project, current_user: user, mr_params: { branch_name: custom_source_branch, **service_params }) }
before do
project.add_developer(user)
@@ -21,14 +21,14 @@ RSpec.describe MergeRequests::CreateFromIssueService do
describe '#execute' do
shared_examples_for 'a service that creates a merge request from an issue' do
it 'returns an error when user can not create merge request on target project' do
- result = described_class.new(project, create(:user), service_params).execute
+ result = described_class.new(project: project, current_user: create(:user), mr_params: service_params).execute
expect(result[:status]).to eq(:error)
expect(result[:message]).to eq('Not allowed to create merge request')
end
it 'returns an error with invalid issue iid' do
- result = described_class.new(project, user, issue_iid: -1).execute
+ result = described_class.new(project: project, current_user: user, mr_params: { issue_iid: -1 }).execute
expect(result[:status]).to eq(:error)
expect(result[:message]).to eq('Invalid issue iid')
@@ -123,7 +123,7 @@ RSpec.describe MergeRequests::CreateFromIssueService do
end
context 'when ref branch is set', :sidekiq_might_not_need_inline do
- subject { described_class.new(project, user, ref: 'feature', **service_params).execute }
+ subject { described_class.new(project: project, current_user: user, mr_params: { ref: 'feature', **service_params }).execute }
it 'sets the merge request source branch to the new issue branch' do
expect(subject[:merge_request].source_branch).to eq(issue.to_branch_name)
@@ -134,7 +134,7 @@ RSpec.describe MergeRequests::CreateFromIssueService do
end
context 'when the ref is a tag' do
- subject { described_class.new(project, user, ref: 'v1.0.0', **service_params).execute }
+ subject { described_class.new(project: project, current_user: user, mr_params: { ref: 'v1.0.0', **service_params }).execute }
it 'sets the merge request source branch to the new issue branch' do
expect(subject[:merge_request].source_branch).to eq(issue.to_branch_name)
@@ -150,7 +150,7 @@ RSpec.describe MergeRequests::CreateFromIssueService do
end
context 'when ref branch does not exist' do
- subject { described_class.new(project, user, ref: 'no-such-branch', **service_params).execute }
+ subject { described_class.new(project: project, current_user: user, mr_params: { ref: 'no-such-branch', **service_params }).execute }
it 'creates a merge request' do
expect { subject }.to change(target_project.merge_requests, :count).by(1)
diff --git a/spec/services/merge_requests/create_pipeline_service_spec.rb b/spec/services/merge_requests/create_pipeline_service_spec.rb
index 3e2e940dc24..a0ac168f3d7 100644
--- a/spec/services/merge_requests/create_pipeline_service_spec.rb
+++ b/spec/services/merge_requests/create_pipeline_service_spec.rb
@@ -8,7 +8,7 @@ RSpec.describe MergeRequests::CreatePipelineService do
let_it_be(:project, reload: true) { create(:project, :repository) }
let_it_be(:user) { create(:user) }
- let(:service) { described_class.new(project, actor, params) }
+ let(:service) { described_class.new(project: project, current_user: actor, params: params) }
let(:actor) { user }
let(:params) { {} }
diff --git a/spec/services/merge_requests/create_service_spec.rb b/spec/services/merge_requests/create_service_spec.rb
index f2bc55103f0..b2351ab53bd 100644
--- a/spec/services/merge_requests/create_service_spec.rb
+++ b/spec/services/merge_requests/create_service_spec.rb
@@ -21,7 +21,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
}
end
- let(:service) { described_class.new(project, user, opts) }
+ let(:service) { described_class.new(project: project, current_user: user, params: opts) }
let(:merge_request) { service.execute }
before do
@@ -347,12 +347,12 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
}
end
- let(:issuable) { described_class.new(project, user, params).execute }
+ let(:issuable) { described_class.new(project: project, current_user: user, params: params).execute }
end
context 'Quick actions' do
context 'with assignee and milestone in params and command' do
- let(:merge_request) { described_class.new(project, user, opts).execute }
+ let(:merge_request) { described_class.new(project: project, current_user: user, params: opts).execute }
let(:milestone) { create(:milestone, project: project) }
let(:opts) do
@@ -390,7 +390,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
it 'removes assignee_id when user id is invalid' do
opts = { title: 'Title', description: 'Description', assignee_ids: [-1] }
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request.assignee_ids).to be_empty
end
@@ -398,7 +398,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
it 'removes assignee_id when user id is 0' do
opts = { title: 'Title', description: 'Description', assignee_ids: [0] }
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request.assignee_ids).to be_empty
end
@@ -407,7 +407,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
project.add_maintainer(user2)
opts = { title: 'Title', description: 'Description', assignee_ids: [user2.id] }
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request.assignees).to eq([user2])
end
@@ -426,7 +426,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
it 'invalidates open merge request counter for assignees when merge request is assigned' do
project.add_maintainer(user2)
- described_class.new(project, user, opts).execute
+ described_class.new(project: project, current_user: user, params: opts).execute
expect(user2.assigned_open_merge_requests_count).to eq 1
end
@@ -445,7 +445,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
project.update!(visibility_level: level)
opts = { title: 'Title', description: 'Description', assignee_ids: [user2.id] }
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request.assignee_id).to be_nil
end
@@ -473,7 +473,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
end
it 'raises an error' do
- expect { described_class.new(project, user, opts).execute }
+ expect { described_class.new(project: project, current_user: user, params: opts).execute }
.to raise_error Gitlab::Access::AccessDeniedError
end
end
@@ -485,7 +485,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
end
it 'raises an error' do
- expect { described_class.new(project, user, opts).execute }
+ expect { described_class.new(project: project, current_user: user, params: opts).execute }
.to raise_error Gitlab::Access::AccessDeniedError
end
end
@@ -497,7 +497,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
end
it 'creates the merge request', :sidekiq_might_not_need_inline do
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request).to be_persisted
end
@@ -505,7 +505,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
it 'does not create the merge request when the target project is archived' do
target_project.update!(archived: true)
- expect { described_class.new(project, user, opts).execute }
+ expect { described_class.new(project: project, current_user: user, params: opts).execute }
.to raise_error Gitlab::Access::AccessDeniedError
end
end
@@ -529,7 +529,7 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state do
end
it 'ignores source_project_id' do
- merge_request = described_class.new(project, user, opts).execute
+ merge_request = described_class.new(project: project, current_user: user, params: opts).execute
expect(merge_request.source_project_id).to eq(project.id)
end
diff --git a/spec/services/merge_requests/ff_merge_service_spec.rb b/spec/services/merge_requests/ff_merge_service_spec.rb
index aec5a3b3fa3..24a1a8b3113 100644
--- a/spec/services/merge_requests/ff_merge_service_spec.rb
+++ b/spec/services/merge_requests/ff_merge_service_spec.rb
@@ -23,7 +23,7 @@ RSpec.describe MergeRequests::FfMergeService do
describe '#execute' do
context 'valid params' do
- let(:service) { described_class.new(project, user, valid_merge_params) }
+ let(:service) { described_class.new(project: project, current_user: user, params: valid_merge_params) }
def execute_ff_merge
perform_enqueued_jobs do
@@ -92,7 +92,7 @@ RSpec.describe MergeRequests::FfMergeService do
end
context 'error handling' do
- let(:service) { described_class.new(project, user, valid_merge_params.merge(commit_message: 'Awesome message')) }
+ let(:service) { described_class.new(project: project, current_user: user, params: valid_merge_params.merge(commit_message: 'Awesome message')) }
before do
allow(Gitlab::AppLogger).to receive(:error)
diff --git a/spec/services/merge_requests/get_urls_service_spec.rb b/spec/services/merge_requests/get_urls_service_spec.rb
index 053752626dc..5f81e1728fa 100644
--- a/spec/services/merge_requests/get_urls_service_spec.rb
+++ b/spec/services/merge_requests/get_urls_service_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe MergeRequests::GetUrlsService do
include ProjectForksHelper
let(:project) { create(:project, :public, :repository) }
- let(:service) { described_class.new(project) }
+ let(:service) { described_class.new(project: project) }
let(:source_branch) { "merge-test" }
let(:new_merge_request_url) { "http://#{Gitlab.config.gitlab.host}/#{project.full_path}/-/merge_requests/new?merge_request%5Bsource_branch%5D=#{source_branch}" }
let(:show_merge_request_url) { "http://#{Gitlab.config.gitlab.host}/#{project.full_path}/-/merge_requests/#{merge_request.iid}" }
@@ -106,7 +106,7 @@ RSpec.describe MergeRequests::GetUrlsService do
let!(:merge_request) { create(:merge_request, source_project: forked_project, target_project: project, source_branch: source_branch) }
let(:changes) { existing_branch_changes }
# Source project is now the forked one
- let(:service) { described_class.new(forked_project) }
+ let(:service) { described_class.new(project: forked_project) }
before do
allow(forked_project).to receive(:empty_repo?).and_return(false)
diff --git a/spec/services/merge_requests/handle_assignees_change_service_spec.rb b/spec/services/merge_requests/handle_assignees_change_service_spec.rb
index cc595aab04b..cb4bda0442e 100644
--- a/spec/services/merge_requests/handle_assignees_change_service_spec.rb
+++ b/spec/services/merge_requests/handle_assignees_change_service_spec.rb
@@ -10,7 +10,7 @@ RSpec.describe MergeRequests::HandleAssigneesChangeService do
let_it_be(:old_assignees) { create_list(:user, 3) }
let(:options) { {} }
- let(:service) { described_class.new(project, user) }
+ let(:service) { described_class.new(project: project, current_user: user) }
before_all do
project.add_maintainer(user)
diff --git a/spec/services/merge_requests/link_lfs_objects_service_spec.rb b/spec/services/merge_requests/link_lfs_objects_service_spec.rb
index c1765e3a2ab..2fb6bbaf02f 100644
--- a/spec/services/merge_requests/link_lfs_objects_service_spec.rb
+++ b/spec/services/merge_requests/link_lfs_objects_service_spec.rb
@@ -18,7 +18,7 @@ RSpec.describe MergeRequests::LinkLfsObjectsService, :sidekiq_inline do
)
end
- subject { described_class.new(target_project) }
+ subject { described_class.new(project: target_project) }
shared_examples_for 'linking LFS objects' do
context 'when source project is the same as target project' do
diff --git a/spec/services/merge_requests/mark_reviewer_reviewed_service_spec.rb b/spec/services/merge_requests/mark_reviewer_reviewed_service_spec.rb
index 1075f6f9034..4d7bd3d8800 100644
--- a/spec/services/merge_requests/mark_reviewer_reviewed_service_spec.rb
+++ b/spec/services/merge_requests/mark_reviewer_reviewed_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe MergeRequests::MarkReviewerReviewedService do
let(:merge_request) { create(:merge_request, reviewers: [current_user]) }
let(:reviewer) { merge_request.merge_request_reviewers.find_by(user_id: current_user.id) }
let(:project) { merge_request.project }
- let(:service) { described_class.new(project, current_user) }
+ let(:service) { described_class.new(project: project, current_user: current_user) }
let(:result) { service.execute(merge_request) }
before do
@@ -16,7 +16,7 @@ RSpec.describe MergeRequests::MarkReviewerReviewedService do
describe '#execute' do
describe 'invalid permissions' do
- let(:service) { described_class.new(project, create(:user)) }
+ let(:service) { described_class.new(project: project, current_user: create(:user)) }
it 'returns an error' do
expect(result[:status]).to eq :error
@@ -24,7 +24,7 @@ RSpec.describe MergeRequests::MarkReviewerReviewedService do
end
describe 'reviewer does not exist' do
- let(:service) { described_class.new(project, create(:user)) }
+ let(:service) { described_class.new(project: project, current_user: create(:user)) }
it 'returns an error' do
expect(result[:status]).to eq :error
diff --git a/spec/services/merge_requests/merge_service_spec.rb b/spec/services/merge_requests/merge_service_spec.rb
index df7d9bbf13d..ac39fb59c62 100644
--- a/spec/services/merge_requests/merge_service_spec.rb
+++ b/spec/services/merge_requests/merge_service_spec.rb
@@ -17,7 +17,7 @@ RSpec.describe MergeRequests::MergeService do
end
describe '#execute' do
- let(:service) { described_class.new(project, user, merge_params) }
+ let(:service) { described_class.new(project: project, current_user: user, params: merge_params) }
let(:merge_params) do
{ commit_message: 'Awesome message', sha: merge_request.diff_head_sha }
end
@@ -228,7 +228,7 @@ RSpec.describe MergeRequests::MergeService do
context 'source branch removal' do
context 'when the source branch is protected' do
let(:service) do
- described_class.new(project, user, merge_params.merge('should_remove_source_branch' => true))
+ described_class.new(project: project, current_user: user, params: merge_params.merge('should_remove_source_branch' => true))
end
before do
@@ -244,7 +244,7 @@ RSpec.describe MergeRequests::MergeService do
context 'when the source branch is the default branch' do
let(:service) do
- described_class.new(project, user, merge_params.merge('should_remove_source_branch' => true))
+ described_class.new(project: project, current_user: user, params: merge_params.merge('should_remove_source_branch' => true))
end
before do
@@ -270,7 +270,7 @@ RSpec.describe MergeRequests::MergeService do
end
context 'when the merger set the source branch not to be removed' do
- let(:service) { described_class.new(project, user, merge_params.merge('should_remove_source_branch' => false)) }
+ let(:service) { described_class.new(project: project, current_user: user, params: merge_params.merge('should_remove_source_branch' => false)) }
it 'does not delete the source branch' do
expect(::MergeRequests::DeleteSourceBranchWorker).not_to receive(:perform_async)
@@ -282,7 +282,7 @@ RSpec.describe MergeRequests::MergeService do
context 'when MR merger set the source branch to be removed' do
let(:service) do
- described_class.new(project, user, merge_params.merge('should_remove_source_branch' => true))
+ described_class.new(project: project, current_user: user, params: merge_params.merge('should_remove_source_branch' => true))
end
it 'removes the source branch using the current user' do
@@ -330,7 +330,7 @@ RSpec.describe MergeRequests::MergeService do
unauthorized_user = create(:user)
project.add_reporter(unauthorized_user)
- service = described_class.new(project, unauthorized_user)
+ service = described_class.new(project: project, current_user: unauthorized_user)
service.execute(merge_request)
diff --git a/spec/services/merge_requests/merge_to_ref_service_spec.rb b/spec/services/merge_requests/merge_to_ref_service_spec.rb
index 01dce0dfbce..bb764ff5672 100644
--- a/spec/services/merge_requests/merge_to_ref_service_spec.rb
+++ b/spec/services/merge_requests/merge_to_ref_service_spec.rb
@@ -74,7 +74,7 @@ RSpec.describe MergeRequests::MergeToRefService do
describe '#execute' do
let(:service) do
- described_class.new(project, user, **params)
+ described_class.new(project: project, current_user: user, params: params)
end
let(:params) { { commit_message: 'Awesome message', should_remove_source_branch: true, sha: merge_request.diff_head_sha } }
@@ -111,11 +111,11 @@ RSpec.describe MergeRequests::MergeToRefService do
end
let(:merge_ref_service) do
- described_class.new(project, user, {})
+ described_class.new(project: project, current_user: user)
end
let(:merge_service) do
- MergeRequests::MergeService.new(project, user, { sha: merge_request.diff_head_sha })
+ MergeRequests::MergeService.new(project: project, current_user: user, params: { sha: merge_request.diff_head_sha })
end
context 'when merge commit' do
diff --git a/spec/services/merge_requests/mergeability_check_service_spec.rb b/spec/services/merge_requests/mergeability_check_service_spec.rb
index 32d7991e593..65599b7e046 100644
--- a/spec/services/merge_requests/mergeability_check_service_spec.rb
+++ b/spec/services/merge_requests/mergeability_check_service_spec.rb
@@ -232,7 +232,7 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
context 'when MR cannot be merged and has outdated merge ref' do
before do
- MergeRequests::MergeToRefService.new(project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: project, current_user: merge_request.author).execute(merge_request)
merge_request.mark_as_unmergeable!
end
@@ -332,7 +332,7 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
context 'when MR is mergeable but merge-ref is already updated' do
before do
- MergeRequests::MergeToRefService.new(project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: project, current_user: merge_request.author).execute(merge_request)
merge_request.mark_as_mergeable!
end
@@ -361,7 +361,7 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
context 'merge with conflicts' do
it 'calls MergeToRefService with true allow_conflicts param' do
expect(MergeRequests::MergeToRefService).to receive(:new)
- .with(project, merge_request.author, { allow_conflicts: true }).and_call_original
+ .with(project: project, current_user: merge_request.author, params: { allow_conflicts: true }).and_call_original
subject
end
@@ -373,7 +373,7 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
it 'calls MergeToRefService with false allow_conflicts param' do
expect(MergeRequests::MergeToRefService).to receive(:new)
- .with(project, merge_request.author, { allow_conflicts: false }).and_call_original
+ .with(project: project, current_user: merge_request.author, params: { allow_conflicts: false }).and_call_original
subject
end
diff --git a/spec/services/merge_requests/post_merge_service_spec.rb b/spec/services/merge_requests/post_merge_service_spec.rb
index cc347904f49..14804aa33d4 100644
--- a/spec/services/merge_requests/post_merge_service_spec.rb
+++ b/spec/services/merge_requests/post_merge_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::PostMergeService do
let_it_be(:merge_request, reload: true) { create(:merge_request, assignees: [user]) }
let_it_be(:project) { merge_request.project }
- subject { described_class.new(project, user).execute(merge_request) }
+ subject { described_class.new(project: project, current_user: user).execute(merge_request) }
before do
project.add_maintainer(user)
diff --git a/spec/services/merge_requests/push_options_handler_service_spec.rb b/spec/services/merge_requests/push_options_handler_service_spec.rb
index b5086ea3a82..87c3fc6a2d8 100644
--- a/spec/services/merge_requests/push_options_handler_service_spec.rb
+++ b/spec/services/merge_requests/push_options_handler_service_spec.rb
@@ -11,7 +11,7 @@ RSpec.describe MergeRequests::PushOptionsHandlerService do
let_it_be(:user3) { create(:user, developer_projects: [project]) }
let_it_be(:forked_project) { fork_project(project, user1, repository: true) }
- let(:service) { described_class.new(project, user1, changes, push_options) }
+ let(:service) { described_class.new(project: project, current_user: user1, changes: changes, push_options: push_options) }
let(:source_branch) { 'fix' }
let(:target_branch) { 'feature' }
let(:title) { 'my title' }
diff --git a/spec/services/merge_requests/pushed_branches_service_spec.rb b/spec/services/merge_requests/pushed_branches_service_spec.rb
index cd6af4c275e..59424263ec5 100644
--- a/spec/services/merge_requests/pushed_branches_service_spec.rb
+++ b/spec/services/merge_requests/pushed_branches_service_spec.rb
@@ -4,7 +4,7 @@ require 'spec_helper'
RSpec.describe MergeRequests::PushedBranchesService do
let(:project) { create(:project) }
- let!(:service) { described_class.new(project, nil, changes: pushed_branches) }
+ let!(:service) { described_class.new(project: project, current_user: nil, params: { changes: pushed_branches }) }
context 'when branches pushed' do
let(:pushed_branches) do
diff --git a/spec/services/merge_requests/rebase_service_spec.rb b/spec/services/merge_requests/rebase_service_spec.rb
index 653fcf12a76..a46f3cf6148 100644
--- a/spec/services/merge_requests/rebase_service_spec.rb
+++ b/spec/services/merge_requests/rebase_service_spec.rb
@@ -18,7 +18,7 @@ RSpec.describe MergeRequests::RebaseService do
let(:repository) { project.repository.raw }
let(:skip_ci) { false }
- subject(:service) { described_class.new(project, user, {}) }
+ subject(:service) { described_class.new(project: project, current_user: user) }
before do
project.add_maintainer(user)
diff --git a/spec/services/merge_requests/refresh_service_spec.rb b/spec/services/merge_requests/refresh_service_spec.rb
index 26f757d5ba0..6e6b4a91e0d 100644
--- a/spec/services/merge_requests/refresh_service_spec.rb
+++ b/spec/services/merge_requests/refresh_service_spec.rb
@@ -64,7 +64,7 @@ RSpec.describe MergeRequests::RefreshService do
end
context 'push to origin repo source branch' do
- let(:refresh_service) { service.new(@project, @user) }
+ let(:refresh_service) { service.new(project: @project, current_user: @user) }
let(:notification_service) { spy('notification_service') }
before do
@@ -187,7 +187,7 @@ RSpec.describe MergeRequests::RefreshService do
context 'when pipeline exists for the source branch' do
let!(:pipeline) { create(:ci_empty_pipeline, ref: @merge_request.source_branch, project: @project, sha: @commits.first.sha)}
- subject { service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/master') }
+ subject { service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/master') }
it 'updates the head_pipeline_id for @merge_request', :sidekiq_might_not_need_inline do
expect { subject }.to change { @merge_request.reload.head_pipeline_id }.from(nil).to(pipeline.id)
@@ -203,7 +203,7 @@ RSpec.describe MergeRequests::RefreshService do
stub_ci_pipeline_yaml_file(config)
end
- subject { service.new(project, @user).execute(@oldrev, @newrev, ref) }
+ subject { service.new(project: project, current_user: @user).execute(@oldrev, @newrev, ref) }
let(:ref) { 'refs/heads/master' }
let(:project) { @project }
@@ -291,11 +291,11 @@ RSpec.describe MergeRequests::RefreshService do
context "when MergeRequestUpdateWorker is retried by an exception" do
it 'does not re-create a duplicate detached merge request pipeline' do
expect do
- service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/master')
+ service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/master')
end.to change { @merge_request.pipelines_for_merge_request.count }.by(1)
expect do
- service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/master')
+ service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/master')
end.not_to change { @merge_request.pipelines_for_merge_request.count }
end
end
@@ -365,7 +365,7 @@ RSpec.describe MergeRequests::RefreshService do
end
context 'push to origin repo source branch' do
- let(:refresh_service) { service.new(@project, @user) }
+ let(:refresh_service) { service.new(project: @project, current_user: @user) }
let(:notification_service) { spy('notification_service') }
before do
@@ -397,7 +397,7 @@ RSpec.describe MergeRequests::RefreshService do
context 'push to origin repo target branch', :sidekiq_might_not_need_inline do
context 'when all MRs to the target branch had diffs' do
before do
- service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')
+ service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/feature')
reload_mrs
end
@@ -426,7 +426,7 @@ RSpec.describe MergeRequests::RefreshService do
# feature all along.
empty_fork_merge_request.update_columns(target_branch: 'feature')
- service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')
+ service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/feature')
reload_mrs
empty_fork_merge_request.reload
end
@@ -449,7 +449,7 @@ RSpec.describe MergeRequests::RefreshService do
# Merge master -> feature branch
@project.repository.merge(@user, @merge_request.diff_head_sha, @merge_request, 'Test message')
commit = @project.repository.commit('feature')
- service.new(@project, @user).execute(@oldrev, commit.id, 'refs/heads/feature')
+ service.new(project: @project, current_user: @user).execute(@oldrev, commit.id, 'refs/heads/feature')
reload_mrs
end
@@ -467,7 +467,7 @@ RSpec.describe MergeRequests::RefreshService do
end
context 'push to fork repo source branch', :sidekiq_might_not_need_inline do
- let(:refresh_service) { service.new(@fork_project, @user) }
+ let(:refresh_service) { service.new(project: @fork_project, current_user: @user) }
def refresh
allow(refresh_service).to receive(:execute_hooks)
@@ -534,7 +534,7 @@ RSpec.describe MergeRequests::RefreshService do
context 'push to fork repo target branch', :sidekiq_might_not_need_inline do
describe 'changes to merge requests' do
before do
- service.new(@fork_project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')
+ service.new(project: @fork_project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/feature')
reload_mrs
end
@@ -551,7 +551,7 @@ RSpec.describe MergeRequests::RefreshService do
describe 'merge request diff' do
it 'does not reload the diff of the merge request made from fork' do
expect do
- service.new(@fork_project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')
+ service.new(project: @fork_project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/feature')
end.not_to change { @fork_merge_request.reload.merge_request_diff }
end
end
@@ -582,28 +582,28 @@ RSpec.describe MergeRequests::RefreshService do
it 'reloads a new diff for a push to the forked project' do
expect do
- service.new(@fork_project, @user).execute(@oldrev, first_commit, 'refs/heads/master')
+ service.new(project: @fork_project, current_user: @user).execute(@oldrev, first_commit, 'refs/heads/master')
reload_mrs
end.to change { forked_master_mr.merge_request_diffs.count }.by(1)
end
it 'reloads a new diff for a force push to the source branch' do
expect do
- service.new(@fork_project, @user).execute(@oldrev, force_push_commit, 'refs/heads/master')
+ service.new(project: @fork_project, current_user: @user).execute(@oldrev, force_push_commit, 'refs/heads/master')
reload_mrs
end.to change { forked_master_mr.merge_request_diffs.count }.by(1)
end
it 'reloads a new diff for a force push to the target branch' do
expect do
- service.new(@project, @user).execute(@oldrev, force_push_commit, 'refs/heads/master')
+ service.new(project: @project, current_user: @user).execute(@oldrev, force_push_commit, 'refs/heads/master')
reload_mrs
end.to change { forked_master_mr.merge_request_diffs.count }.by(1)
end
it 'reloads a new diff for a push to the target project that contains a commit in the MR' do
expect do
- service.new(@project, @user).execute(@oldrev, first_commit, 'refs/heads/master')
+ service.new(project: @project, current_user: @user).execute(@oldrev, first_commit, 'refs/heads/master')
reload_mrs
end.to change { forked_master_mr.merge_request_diffs.count }.by(1)
end
@@ -614,7 +614,7 @@ RSpec.describe MergeRequests::RefreshService do
branch_name: 'master')
expect do
- service.new(@project, @user).execute(@newrev, new_commit, 'refs/heads/master')
+ service.new(project: @project, current_user: @user).execute(@newrev, new_commit, 'refs/heads/master')
reload_mrs
end.not_to change { forked_master_mr.merge_request_diffs.count }
end
@@ -623,7 +623,7 @@ RSpec.describe MergeRequests::RefreshService do
context 'push to origin repo target branch after fork project was removed' do
before do
@fork_project.destroy!
- service.new(@project, @user).execute(@oldrev, @newrev, 'refs/heads/feature')
+ service.new(project: @project, current_user: @user).execute(@oldrev, @newrev, 'refs/heads/feature')
reload_mrs
end
@@ -639,7 +639,7 @@ RSpec.describe MergeRequests::RefreshService do
end
context 'push new branch that exists in a merge request' do
- let(:refresh_service) { service.new(@fork_project, @user) }
+ let(:refresh_service) { service.new(project: @fork_project, current_user: @user) }
it 'refreshes the merge request', :sidekiq_might_not_need_inline do
expect(refresh_service).to receive(:execute_hooks)
@@ -688,7 +688,7 @@ RSpec.describe MergeRequests::RefreshService do
source_branch: 'close-by-commit',
source_project: project)
- refresh_service = service.new(project, user)
+ refresh_service = service.new(project: project, current_user: user)
allow(refresh_service).to receive(:execute_hooks)
refresh_service.execute(@oldrev, @newrev, 'refs/heads/close-by-commit')
@@ -711,7 +711,7 @@ RSpec.describe MergeRequests::RefreshService do
source_branch: 'close-by-commit',
source_project: forked_project)
- refresh_service = service.new(forked_project, user)
+ refresh_service = service.new(project: forked_project, current_user: user)
allow(refresh_service).to receive(:execute_hooks)
refresh_service.execute(@oldrev, @newrev, 'refs/heads/close-by-commit')
@@ -722,7 +722,7 @@ RSpec.describe MergeRequests::RefreshService do
end
context 'marking the merge request as draft' do
- let(:refresh_service) { service.new(@project, @user) }
+ let(:refresh_service) { service.new(project: @project, current_user: @user) }
before do
allow(refresh_service).to receive(:execute_hooks)
@@ -802,7 +802,7 @@ RSpec.describe MergeRequests::RefreshService do
end
describe 'updating merge_commit' do
- let(:service) { described_class.new(project, user) }
+ let(:service) { described_class.new(project: project, current_user: user) }
let(:user) { create(:user) }
let(:project) { create(:project, :repository) }
@@ -890,7 +890,7 @@ RSpec.describe MergeRequests::RefreshService do
end
let(:auto_merge_strategy) { AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS }
- let(:refresh_service) { service.new(project, user) }
+ let(:refresh_service) { service.new(project: project, current_user: user) }
before do
target_project.merge_method = merge_method
diff --git a/spec/services/merge_requests/reload_merge_head_diff_service_spec.rb b/spec/services/merge_requests/reload_merge_head_diff_service_spec.rb
index 3152a4e3861..b333d4af6cf 100644
--- a/spec/services/merge_requests/reload_merge_head_diff_service_spec.rb
+++ b/spec/services/merge_requests/reload_merge_head_diff_service_spec.rb
@@ -10,7 +10,7 @@ RSpec.describe MergeRequests::ReloadMergeHeadDiffService do
describe '#execute' do
before do
MergeRequests::MergeToRefService
- .new(merge_request.project, merge_request.author)
+ .new(project: merge_request.project, current_user: merge_request.author)
.execute(merge_request)
end
diff --git a/spec/services/merge_requests/remove_approval_service_spec.rb b/spec/services/merge_requests/remove_approval_service_spec.rb
index 4ef2da290e1..ef6a0ec69bd 100644
--- a/spec/services/merge_requests/remove_approval_service_spec.rb
+++ b/spec/services/merge_requests/remove_approval_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::RemoveApprovalService do
let(:merge_request) { create(:merge_request, source_project: project) }
let!(:existing_approval) { create(:approval, merge_request: merge_request) }
- subject(:service) { described_class.new(project, user) }
+ subject(:service) { described_class.new(project: project, current_user: user) }
def execute!
service.execute(merge_request)
diff --git a/spec/services/merge_requests/reopen_service_spec.rb b/spec/services/merge_requests/reopen_service_spec.rb
index 8541d597581..b9df31b6727 100644
--- a/spec/services/merge_requests/reopen_service_spec.rb
+++ b/spec/services/merge_requests/reopen_service_spec.rb
@@ -20,7 +20,7 @@ RSpec.describe MergeRequests::ReopenService do
it_behaves_like 'merge request reviewers cache counters invalidator'
context 'valid params' do
- let(:service) { described_class.new(project, user, {}) }
+ let(:service) { described_class.new(project: project, current_user: user) }
before do
allow(service).to receive(:execute_hooks)
@@ -65,7 +65,7 @@ RSpec.describe MergeRequests::ReopenService do
it 'caches merge request closing issues' do
expect(merge_request).to receive(:cache_merge_request_closes_issues!)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'updates metrics' do
@@ -78,7 +78,7 @@ RSpec.describe MergeRequests::ReopenService do
expect(service).to receive(:reopen)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'calls the merge request activity counter' do
@@ -86,11 +86,11 @@ RSpec.describe MergeRequests::ReopenService do
.to receive(:track_reopen_mr_action)
.with(user: user)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
it 'refreshes the number of open merge requests for a valid MR' do
- service = described_class.new(project, user, {})
+ service = described_class.new(project: project, current_user: user)
expect { service.execute(merge_request) }
.to change { project.open_merge_requests_count }.from(0).to(1)
@@ -99,7 +99,7 @@ RSpec.describe MergeRequests::ReopenService do
context 'current user is not authorized to reopen merge request' do
before do
perform_enqueued_jobs do
- @merge_request = described_class.new(project, guest).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: guest).execute(merge_request)
end
end
diff --git a/spec/services/merge_requests/request_review_service_spec.rb b/spec/services/merge_requests/request_review_service_spec.rb
index 5cb4120852a..8bc31df605c 100644
--- a/spec/services/merge_requests/request_review_service_spec.rb
+++ b/spec/services/merge_requests/request_review_service_spec.rb
@@ -8,7 +8,7 @@ RSpec.describe MergeRequests::RequestReviewService do
let(:merge_request) { create(:merge_request, reviewers: [user]) }
let(:reviewer) { merge_request.find_reviewer(user) }
let(:project) { merge_request.project }
- let(:service) { described_class.new(project, current_user) }
+ let(:service) { described_class.new(project: project, current_user: current_user) }
let(:result) { service.execute(merge_request, user) }
let(:todo_service) { spy('todo service') }
let(:notification_service) { spy('notification service') }
@@ -26,7 +26,7 @@ RSpec.describe MergeRequests::RequestReviewService do
describe '#execute' do
describe 'invalid permissions' do
- let(:service) { described_class.new(project, create(:user)) }
+ let(:service) { described_class.new(project: project, current_user: create(:user)) }
it 'returns an error' do
expect(result[:status]).to eq :error
diff --git a/spec/services/merge_requests/resolved_discussion_notification_service_spec.rb b/spec/services/merge_requests/resolved_discussion_notification_service_spec.rb
index 874cf66659a..74f3a1b06fc 100644
--- a/spec/services/merge_requests/resolved_discussion_notification_service_spec.rb
+++ b/spec/services/merge_requests/resolved_discussion_notification_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe MergeRequests::ResolvedDiscussionNotificationService do
let(:user) { create(:user) }
let(:project) { merge_request.project }
- subject { described_class.new(project, user) }
+ subject { described_class.new(project: project, current_user: user) }
describe "#execute" do
context "when not all discussions are resolved" do
diff --git a/spec/services/merge_requests/retarget_chain_service_spec.rb b/spec/services/merge_requests/retarget_chain_service_spec.rb
index 3937fbe58c3..87bde4a1400 100644
--- a/spec/services/merge_requests/retarget_chain_service_spec.rb
+++ b/spec/services/merge_requests/retarget_chain_service_spec.rb
@@ -9,7 +9,7 @@ RSpec.describe MergeRequests::RetargetChainService do
let_it_be(:merge_request, reload: true) { create(:merge_request, assignees: [user]) }
let_it_be(:project) { merge_request.project }
- subject { described_class.new(project, user).execute(merge_request) }
+ subject { described_class.new(project: project, current_user: user).execute(merge_request) }
before do
project.add_maintainer(user)
diff --git a/spec/services/merge_requests/squash_service_spec.rb b/spec/services/merge_requests/squash_service_spec.rb
index acbd0a42fcd..149748cdabc 100644
--- a/spec/services/merge_requests/squash_service_spec.rb
+++ b/spec/services/merge_requests/squash_service_spec.rb
@@ -5,7 +5,7 @@ require 'spec_helper'
RSpec.describe MergeRequests::SquashService do
include GitHelpers
- let(:service) { described_class.new(project, user, { merge_request: merge_request }) }
+ let(:service) { described_class.new(project: project, current_user: user, params: { merge_request: merge_request }) }
let(:user) { project.owner }
let(:project) { create(:project, :repository) }
let(:repository) { project.repository.raw }
@@ -62,7 +62,7 @@ RSpec.describe MergeRequests::SquashService do
end
it 'will still perform the squash when a custom squash commit message has been provided' do
- service = described_class.new(project, user, { merge_request: merge_request, squash_commit_message: 'A custom commit message' })
+ service = described_class.new(project: project, current_user: user, params: { merge_request: merge_request, squash_commit_message: 'A custom commit message' })
expect(merge_request.target_project.repository).to receive(:squash).and_return('sha')
@@ -98,7 +98,7 @@ RSpec.describe MergeRequests::SquashService do
end
context 'if a message was provided' do
- let(:service) { described_class.new(project, user, { merge_request: merge_request, squash_commit_message: message }) }
+ let(:service) { described_class.new(project: project, current_user: user, params: { merge_request: merge_request, squash_commit_message: message }) }
let(:message) { 'My custom message' }
let(:squash_sha) { service.execute[:squash_sha] }
diff --git a/spec/services/merge_requests/update_assignees_service_spec.rb b/spec/services/merge_requests/update_assignees_service_spec.rb
index de03aab5418..113bfb0f31a 100644
--- a/spec/services/merge_requests/update_assignees_service_spec.rb
+++ b/spec/services/merge_requests/update_assignees_service_spec.rb
@@ -26,7 +26,7 @@ RSpec.describe MergeRequests::UpdateAssigneesService do
project.add_developer(user3)
end
- let(:service) { described_class.new(project, user, opts) }
+ let(:service) { described_class.new(project: project, current_user: user, params: opts) }
let(:opts) { { assignee_ids: [user2.id] } }
describe 'execute' do
@@ -37,7 +37,7 @@ RSpec.describe MergeRequests::UpdateAssigneesService do
context 'when the parameters are valid' do
it 'updates the MR, and queues the more expensive work for later' do
- expect_next(MergeRequests::HandleAssigneesChangeService, project, user) do |service|
+ expect_next(MergeRequests::HandleAssigneesChangeService, project: project, current_user: user) do |service|
expect(service)
.to receive(:async_execute)
.with(merge_request, [user3], execute_hooks: true)
@@ -56,7 +56,7 @@ RSpec.describe MergeRequests::UpdateAssigneesService do
end
it 'is more efficient than using the full update-service' do
- allow_next(MergeRequests::HandleAssigneesChangeService, project, user) do |service|
+ allow_next(MergeRequests::HandleAssigneesChangeService, project: project, current_user: user) do |service|
expect(service)
.to receive(:async_execute)
.with(merge_request, [user3], execute_hooks: true)
@@ -69,7 +69,7 @@ RSpec.describe MergeRequests::UpdateAssigneesService do
source_project: merge_request.project,
author: merge_request.author)
- update_service = ::MergeRequests::UpdateService.new(project, user, opts)
+ update_service = ::MergeRequests::UpdateService.new(project: project, current_user: user, params: opts)
expect { service.execute(merge_request) }
.to issue_fewer_queries_than { update_service.execute(other_mr) }
diff --git a/spec/services/merge_requests/update_service_spec.rb b/spec/services/merge_requests/update_service_spec.rb
index 2d5365a195d..a85fbd77d70 100644
--- a/spec/services/merge_requests/update_service_spec.rb
+++ b/spec/services/merge_requests/update_service_spec.rb
@@ -43,7 +43,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
end
def update_merge_request(opts)
- @merge_request = MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ @merge_request = MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
@merge_request.reload
end
@@ -64,7 +64,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
}
end
- let(:service) { described_class.new(project, current_user, opts) }
+ let(:service) { described_class.new(project: project, current_user: current_user, params: opts) }
let(:current_user) { user }
before do
@@ -99,7 +99,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
expect(Gitlab::UsageDataCounters::MergeRequestActivityUniqueCounter)
.to receive(:track_description_edit_action).once.with(user: user)
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request2)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request2)
end
it 'tracks Draft/WIP marking' do
@@ -108,7 +108,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:title] = "WIP: #{opts[:title]}"
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request2)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request2)
end
it 'tracks Draft/WIP un-marking' do
@@ -117,7 +117,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:title] = "Non-draft/wip title string"
- MergeRequests::UpdateService.new(project, user, opts).execute(draft_merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(draft_merge_request)
end
context 'when MR is locked' do
@@ -128,7 +128,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:discussion_locked] = true
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
@@ -139,7 +139,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:discussion_locked] = false
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
end
@@ -154,7 +154,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:discussion_locked] = false
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
@@ -165,7 +165,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:discussion_locked] = true
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
end
@@ -184,7 +184,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
spent_at: Date.parse('2021-02-24')
}
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
it 'tracks milestone change' do
@@ -193,7 +193,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:milestone] = milestone
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
it 'track labels change' do
@@ -202,7 +202,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:label_ids] = [label2.id]
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
context 'reviewers' do
@@ -213,7 +213,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:reviewers] = [user2]
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
@@ -224,7 +224,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts[:reviewers] = merge_request.reviewers
- MergeRequests::UpdateService.new(project, user, opts).execute(merge_request)
+ MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request)
end
end
end
@@ -439,7 +439,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
let(:milestone) { create(:milestone, project: project) }
let(:req_opts) { { source_branch: 'feature', target_branch: 'master' } }
- subject { MergeRequests::UpdateService.new(project, user, opts).execute(merge_request) }
+ subject { MergeRequests::UpdateService.new(project: project, current_user: user, params: opts).execute(merge_request) }
context 'when mentionable attributes change' do
let(:opts) { { description: "Description with #{user.to_reference}" }.merge(req_opts) }
@@ -486,7 +486,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
}
end
- let(:service) { described_class.new(project, user, opts) }
+ let(:service) { described_class.new(project: project, current_user: user, params: opts) }
context 'without pipeline' do
before do
@@ -547,7 +547,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
context 'with a non-authorised user' do
let(:visitor) { create(:user) }
- let(:service) { described_class.new(project, visitor, opts) }
+ let(:service) { described_class.new(project: project, current_user: visitor, params: opts) }
before do
merge_request.update_attribute(:merge_error, 'Error')
@@ -805,7 +805,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts = { title: 'New title' }
perform_enqueued_jobs do
- @merge_request = described_class.new(project, user, opts).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: user, params: opts).execute(merge_request)
end
should_email(subscriber)
@@ -818,7 +818,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts = { title: 'Draft: New title' }
perform_enqueued_jobs do
- @merge_request = described_class.new(project, user, opts).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: user, params: opts).execute(merge_request)
end
should_not_email(subscriber)
@@ -840,7 +840,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts = { label_ids: [label.id] }
perform_enqueued_jobs do
- @merge_request = described_class.new(project, user, opts).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: user, params: opts).execute(merge_request)
end
should_email(subscriber)
@@ -856,7 +856,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts = { label_ids: [label.id, label2.id] }
perform_enqueued_jobs do
- @merge_request = described_class.new(project, user, opts).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: user, params: opts).execute(merge_request)
end
should_not_email(subscriber)
@@ -867,7 +867,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
opts = { label_ids: [label2.id] }
perform_enqueued_jobs do
- @merge_request = described_class.new(project, user, opts).execute(merge_request)
+ @merge_request = described_class.new(project: project, current_user: user, params: opts).execute(merge_request)
end
should_not_email(subscriber)
@@ -933,7 +933,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
it 'creates a `MergeRequestsClosingIssues` record for each issue' do
issue_closing_opts = { description: "Closes #{first_issue.to_reference} and #{second_issue.to_reference}" }
- service = described_class.new(project, user, issue_closing_opts)
+ service = described_class.new(project: project, current_user: user, params: issue_closing_opts)
allow(service).to receive(:execute_hooks)
service.execute(merge_request)
@@ -945,7 +945,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
create(:merge_requests_closing_issues, issue: first_issue, merge_request: merge_request)
create(:merge_requests_closing_issues, issue: second_issue, merge_request: merge_request)
- service = described_class.new(project, user, description: "not closing any issues")
+ service = described_class.new(project: project, current_user: user, params: { description: "not closing any issues" })
allow(service).to receive(:execute_hooks)
service.execute(merge_request.reload)
@@ -1002,7 +1002,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
it 'unassigns assignee when user id is 0' do
merge_request.update!(assignee_ids: [user.id])
- expect_next_instance_of(MergeRequests::HandleAssigneesChangeService, project, user) do |service|
+ expect_next_instance_of(MergeRequests::HandleAssigneesChangeService, project: project, current_user: user) do |service|
expect(service)
.to receive(:async_execute)
.with(merge_request, [user])
@@ -1014,7 +1014,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
end
it 'saves assignee when user id is valid' do
- expect_next_instance_of(MergeRequests::HandleAssigneesChangeService, project, user) do |service|
+ expect_next_instance_of(MergeRequests::HandleAssigneesChangeService, project: project, current_user: user) do |service|
expect(service)
.to receive(:async_execute)
.with(merge_request, [user3])
@@ -1174,7 +1174,7 @@ RSpec.describe MergeRequests::UpdateService, :mailer do
it_behaves_like 'issuable record that supports quick actions' do
let(:existing_merge_request) { create(:merge_request, source_project: project) }
- let(:issuable) { described_class.new(project, user, params).execute(existing_merge_request) }
+ let(:issuable) { described_class.new(project: project, current_user: user, params: params).execute(existing_merge_request) }
end
end
end
diff --git a/spec/services/notes/copy_service_spec.rb b/spec/services/notes/copy_service_spec.rb
index fd44aa7cf40..d9b6bafd7ff 100644
--- a/spec/services/notes/copy_service_spec.rb
+++ b/spec/services/notes/copy_service_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe Notes::CopyService do
let_it_be(:noteable) { create(:issue) }
it 'validates that we cannot copy notes to the same Noteable' do
- expect { described_class.new(noteable, noteable) }.to raise_error(ArgumentError)
+ expect { described_class.new(nil, noteable, noteable) }.to raise_error(ArgumentError)
end
end
diff --git a/spec/services/notes/create_service_spec.rb b/spec/services/notes/create_service_spec.rb
index d28cb118529..31263feb947 100644
--- a/spec/services/notes/create_service_spec.rb
+++ b/spec/services/notes/create_service_spec.rb
@@ -176,7 +176,7 @@ RSpec.describe Notes::CreateService do
end
it 'note is associated with a note diff file' do
- MergeRequests::MergeToRefService.new(merge_request.project, merge_request.author).execute(merge_request)
+ MergeRequests::MergeToRefService.new(project: merge_request.project, current_user: merge_request.author).execute(merge_request)
note = described_class.new(project_with_repo, user, new_opts).execute
diff --git a/spec/services/notes/quick_actions_service_spec.rb b/spec/services/notes/quick_actions_service_spec.rb
index bdce049bd3d..9692bb08379 100644
--- a/spec/services/notes/quick_actions_service_spec.rb
+++ b/spec/services/notes/quick_actions_service_spec.rb
@@ -238,25 +238,25 @@ RSpec.describe Notes::QuickActionsService do
end
end
- describe '.noteable_update_service' do
+ describe '.noteable_update_service_class' do
include_context 'note on noteable'
it 'returns Issues::UpdateService for a note on an issue' do
note = create(:note_on_issue, project: project)
- expect(described_class.noteable_update_service(note)).to eq(Issues::UpdateService)
+ expect(described_class.noteable_update_service_class(note)).to eq(Issues::UpdateService)
end
it 'returns MergeRequests::UpdateService for a note on a merge request' do
note = create(:note_on_merge_request, project: project)
- expect(described_class.noteable_update_service(note)).to eq(MergeRequests::UpdateService)
+ expect(described_class.noteable_update_service_class(note)).to eq(MergeRequests::UpdateService)
end
it 'returns Commits::TagService for a note on a commit' do
note = create(:note_on_commit, project: project)
- expect(described_class.noteable_update_service(note)).to eq(Commits::TagService)
+ expect(described_class.noteable_update_service_class(note)).to eq(Commits::TagService)
end
end
diff --git a/spec/services/projects/unlink_fork_service_spec.rb b/spec/services/projects/unlink_fork_service_spec.rb
index 90def365fca..d939a79b7e9 100644
--- a/spec/services/projects/unlink_fork_service_spec.rb
+++ b/spec/services/projects/unlink_fork_service_spec.rb
@@ -16,11 +16,11 @@ RSpec.describe Projects::UnlinkForkService, :use_clean_rails_memory_store_cachin
let(:merge_request2) { create(:merge_request, source_project: forked_project, target_project: fork_project(project)) }
let(:merge_request_in_fork) { create(:merge_request, source_project: forked_project, target_project: forked_project) }
- let(:mr_close_service) { MergeRequests::CloseService.new(forked_project, user) }
+ let(:mr_close_service) { MergeRequests::CloseService.new(project: forked_project, current_user: user) }
before do
allow(MergeRequests::CloseService).to receive(:new)
- .with(forked_project, user)
+ .with(project: forked_project, current_user: user)
.and_return(mr_close_service)
end
@@ -79,11 +79,11 @@ RSpec.describe Projects::UnlinkForkService, :use_clean_rails_memory_store_cachin
let!(:merge_request2) { create(:merge_request, source_project: project, target_project: fork_project(project)) }
let!(:merge_request_in_fork) { create(:merge_request, source_project: forked_project, target_project: forked_project) }
- let(:mr_close_service) { MergeRequests::CloseService.new(project, user) }
+ let(:mr_close_service) { MergeRequests::CloseService.new(project: project, current_user: user) }
before do
allow(MergeRequests::CloseService).to receive(:new)
- .with(project, user)
+ .with(project: project, current_user: user)
.and_return(mr_close_service)
end
@@ -142,11 +142,11 @@ RSpec.describe Projects::UnlinkForkService, :use_clean_rails_memory_store_cachin
let!(:mr_from_child) { create(:merge_request, source_project: fork_of_fork, target_project: forked_project) }
let!(:merge_request_in_fork) { create(:merge_request, source_project: forked_project, target_project: forked_project) }
- let(:mr_close_service) { MergeRequests::CloseService.new(forked_project, user) }
+ let(:mr_close_service) { MergeRequests::CloseService.new(project: forked_project, current_user: user) }
before do
allow(MergeRequests::CloseService).to receive(:new)
- .with(forked_project, user)
+ .with(project: forked_project, current_user: user)
.and_return(mr_close_service)
end
diff --git a/spec/services/suggestions/apply_service_spec.rb b/spec/services/suggestions/apply_service_spec.rb
index f6d7297bf60..9cf794cde7e 100644
--- a/spec/services/suggestions/apply_service_spec.rb
+++ b/spec/services/suggestions/apply_service_spec.rb
@@ -398,7 +398,7 @@ RSpec.describe Suggestions::ApplyService do
suggestion.reload
expect(result[:status]).to eq(:success)
- refresh = MergeRequests::RefreshService.new(project, user)
+ refresh = MergeRequests::RefreshService.new(project: project, current_user: user)
refresh.execute(merge_request.diff_head_sha,
suggestion.commit_id,
merge_request.source_branch_ref)
diff --git a/spec/support/helpers/cycle_analytics_helpers.rb b/spec/support/helpers/cycle_analytics_helpers.rb
index 5915ffe202d..5510284b30d 100644
--- a/spec/support/helpers/cycle_analytics_helpers.rb
+++ b/spec/support/helpers/cycle_analytics_helpers.rb
@@ -125,17 +125,17 @@ module CycleAnalyticsHelpers
target_branch: 'master'
}
- mr = MergeRequests::CreateService.new(project, user, opts).execute
+ mr = MergeRequests::CreateService.new(project: project, current_user: user, params: opts).execute
NewMergeRequestWorker.new.perform(mr, user)
mr
end
def merge_merge_requests_closing_issue(user, project, issue)
merge_requests = Issues::ReferencedMergeRequestsService
- .new(project, user)
+ .new(project: project, current_user: user)
.closed_by_merge_requests(issue)
- merge_requests.each { |merge_request| MergeRequests::MergeService.new(project, user, sha: merge_request.diff_head_sha).execute(merge_request) }
+ merge_requests.each { |merge_request| MergeRequests::MergeService.new(project: project, current_user: user, params: { sha: merge_request.diff_head_sha }).execute(merge_request) }
end
def deploy_master(user, project, environment: 'production')
diff --git a/spec/support/services/issuable_update_service_shared_examples.rb b/spec/support/services/issuable_update_service_shared_examples.rb
index 8867a1e3a90..4d2843af1c4 100644
--- a/spec/support/services/issuable_update_service_shared_examples.rb
+++ b/spec/support/services/issuable_update_service_shared_examples.rb
@@ -12,13 +12,13 @@ RSpec.shared_examples 'issuable update service' do
context 'to reopened' do
it 'executes hooks only once' do
- described_class.new(project, user, state_event: 'reopen').execute(closed_issuable)
+ described_class.new(project: project, current_user: user, params: { state_event: 'reopen' }).execute(closed_issuable)
end
end
context 'to closed' do
it 'executes hooks only once' do
- described_class.new(project, user, state_event: 'close').execute(open_issuable)
+ described_class.new(project: project, current_user: user, params: { state_event: 'close' }).execute(open_issuable)
end
end
end
diff --git a/spec/support/shared_examples/models/chat_service_shared_examples.rb b/spec/support/shared_examples/models/chat_service_shared_examples.rb
index 59e249bb865..4a47aad0957 100644
--- a/spec/support/shared_examples/models/chat_service_shared_examples.rb
+++ b/spec/support/shared_examples/models/chat_service_shared_examples.rb
@@ -163,7 +163,7 @@ RSpec.shared_examples "chat service" do |service_name|
context "with issue events" do
let(:opts) { { title: "Awesome issue", description: "please fix" } }
let(:sample_data) do
- service = Issues::CreateService.new(project, user, opts)
+ service = Issues::CreateService.new(project: project, current_user: user, params: opts)
issue = service.execute
service.hook_data(issue, "open")
end
@@ -182,7 +182,7 @@ RSpec.shared_examples "chat service" do |service_name|
end
let(:sample_data) do
- service = MergeRequests::CreateService.new(project, user, opts)
+ service = MergeRequests::CreateService.new(project: project, current_user: user, params: opts)
merge_request = service.execute
service.hook_data(merge_request, "open")
end
diff --git a/spec/support/shared_examples/requests/api/time_tracking_shared_examples.rb b/spec/support/shared_examples/requests/api/time_tracking_shared_examples.rb
index 5b603ac08c8..afc902dd184 100644
--- a/spec/support/shared_examples/requests/api/time_tracking_shared_examples.rb
+++ b/spec/support/shared_examples/requests/api/time_tracking_shared_examples.rb
@@ -128,7 +128,7 @@ RSpec.shared_examples 'time tracking endpoints' do |issuable_name|
if issuable_name == 'merge_request'
it 'calls update service with :use_specialized_service param' do
- expect(::MergeRequests::UpdateService).to receive(:new).with(project, user, hash_including(use_specialized_service: true))
+ expect(::MergeRequests::UpdateService).to receive(:new).with(project: project, current_user: user, params: hash_including(use_specialized_service: true))
post api("/projects/#{project.id}/#{issuable_collection_name}/#{issuable.iid}/add_spent_time", user), params: { duration: '2h' }
end
@@ -136,7 +136,7 @@ RSpec.shared_examples 'time tracking endpoints' do |issuable_name|
if issuable_name == 'issue'
it 'calls update service without :use_specialized_service param' do
- expect(::Issues::UpdateService).to receive(:new).with(project, user, hash_not_including(use_specialized_service: true))
+ expect(::Issues::UpdateService).to receive(:new).with(project: project, current_user: user, params: hash_not_including(use_specialized_service: true))
post api("/projects/#{project.id}/#{issuable_collection_name}/#{issuable.iid}/add_spent_time", user), params: { duration: '2h' }
end
diff --git a/spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb b/spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb
index 4aa5d7d890b..7d4fbeea0dc 100644
--- a/spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb
+++ b/spec/support/shared_examples/services/boards/issues_move_service_shared_examples.rb
@@ -146,7 +146,7 @@ RSpec.shared_examples 'issues move service' do |group|
params.merge!(move_after_id: issue1.id, move_before_id: issue2.id)
match_params = { move_between_ids: [issue1.id, issue2.id], board_group_id: parent.id }
- expect(Issues::UpdateService).to receive(:new).with(issue.project, user, match_params).and_return(double(execute: build(:issue)))
+ expect(Issues::UpdateService).to receive(:new).with(project: issue.project, current_user: user, params: match_params).and_return(double(execute: build(:issue)))
described_class.new(parent, user, params).execute(issue)
end
diff --git a/spec/support/shared_examples/services/common_system_notes_shared_examples.rb b/spec/support/shared_examples/services/common_system_notes_shared_examples.rb
index 7b277d4bede..ce412ef55de 100644
--- a/spec/support/shared_examples/services/common_system_notes_shared_examples.rb
+++ b/spec/support/shared_examples/services/common_system_notes_shared_examples.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
RSpec.shared_examples 'system note creation' do |update_params, note_text|
- subject { described_class.new(project, user).execute(issuable, old_labels: []) }
+ subject { described_class.new(project: project, current_user: user).execute(issuable, old_labels: []) }
before do
issuable.assign_attributes(update_params)
@@ -18,7 +18,7 @@ RSpec.shared_examples 'system note creation' do |update_params, note_text|
end
RSpec.shared_examples 'draft notes creation' do |action|
- subject { described_class.new(project, user).execute(issuable, old_labels: []) }
+ subject { described_class.new(project: project, current_user: user).execute(issuable, old_labels: []) }
it 'creates Draft toggle and title change notes' do
expect { subject }.to change { Note.count }.from(0).to(2)
diff --git a/spec/support/shared_examples/services/issuable_shared_examples.rb b/spec/support/shared_examples/services/issuable_shared_examples.rb
index 5b3e0f9e0b9..a50a386afe1 100644
--- a/spec/support/shared_examples/services/issuable_shared_examples.rb
+++ b/spec/support/shared_examples/services/issuable_shared_examples.rb
@@ -4,14 +4,14 @@ RSpec.shared_examples 'cache counters invalidator' do
it 'invalidates counter cache for assignees' do
expect_any_instance_of(User).to receive(:invalidate_merge_request_cache_counts)
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
end
RSpec.shared_examples 'updating a single task' do
def update_issuable(opts)
issuable = try(:issue) || try(:merge_request)
- described_class.new(project, user, opts).execute(issuable)
+ described_class.new(project: project, current_user: user, params: opts).execute(issuable)
end
before do
diff --git a/spec/support/shared_examples/services/merge_request_shared_examples.rb b/spec/support/shared_examples/services/merge_request_shared_examples.rb
index 178b6bc47e1..d2595b92cbc 100644
--- a/spec/support/shared_examples/services/merge_request_shared_examples.rb
+++ b/spec/support/shared_examples/services/merge_request_shared_examples.rb
@@ -70,7 +70,7 @@ RSpec.shared_examples 'merge request reviewers cache counters invalidator' do
it 'invalidates counter cache for reviewers' do
expect(merge_request.reviewers).to all(receive(:invalidate_merge_request_cache_counts))
- described_class.new(project, user, {}).execute(merge_request)
+ described_class.new(project: project, current_user: user).execute(merge_request)
end
end
@@ -86,7 +86,7 @@ RSpec.shared_examples_for 'a service that can create a merge request' do
context 'when project has been forked', :sidekiq_might_not_need_inline do
let(:forked_project) { fork_project(project, user1, repository: true) }
- let(:service) { described_class.new(forked_project, user1, changes, push_options) }
+ let(:service) { described_class.new(project: forked_project, current_user: user1, changes: changes, push_options: push_options) }
before do
allow(forked_project).to receive(:empty_repo?).and_return(false)
diff --git a/spec/support/shared_examples/services/updating_mentions_shared_examples.rb b/spec/support/shared_examples/services/updating_mentions_shared_examples.rb
index 84f6c4d136a..13a2aa9ddac 100644
--- a/spec/support/shared_examples/services/updating_mentions_shared_examples.rb
+++ b/spec/support/shared_examples/services/updating_mentions_shared_examples.rb
@@ -15,7 +15,7 @@ RSpec.shared_examples 'updating mentions' do |service_class|
def update_mentionable(opts)
perform_enqueued_jobs do
- service_class.new(project, user, opts).execute(mentionable)
+ service_class.new(project: project, current_user: user, params: opts).execute(mentionable)
end
mentionable.reload
diff --git a/spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb b/spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb
index 4690c73d121..e5de0ba0143 100644
--- a/spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb
+++ b/spec/workers/ci/merge_requests/add_todo_when_build_fails_worker_spec.rb
@@ -15,7 +15,7 @@ RSpec.describe Ci::MergeRequests::AddTodoWhenBuildFailsWorker do
include_examples 'an idempotent worker' do
it 'executes todo service' do
service = double
- expect(::MergeRequests::AddTodoWhenBuildFailsService).to receive(:new).with(project, nil).and_return(service).twice
+ expect(::MergeRequests::AddTodoWhenBuildFailsService).to receive(:new).with(project: project).and_return(service).twice
expect(service).to receive(:execute).with(job).twice
perform_twice
diff --git a/spec/workers/merge_requests/create_pipeline_worker_spec.rb b/spec/workers/merge_requests/create_pipeline_worker_spec.rb
index 8efce5220be..06d44c45706 100644
--- a/spec/workers/merge_requests/create_pipeline_worker_spec.rb
+++ b/spec/workers/merge_requests/create_pipeline_worker_spec.rb
@@ -13,7 +13,7 @@ RSpec.describe MergeRequests::CreatePipelineWorker do
context 'when the objects exist' do
it 'calls the merge request create pipeline service and calls update head pipeline' do
aggregate_failures do
- expect_next_instance_of(MergeRequests::CreatePipelineService, project, user) do |service|
+ expect_next_instance_of(MergeRequests::CreatePipelineService, project: project, current_user: user) do |service|
expect(service).to receive(:execute).with(merge_request)
end
diff --git a/spec/workers/process_commit_worker_spec.rb b/spec/workers/process_commit_worker_spec.rb
index 7a168bf054e..294a05c652b 100644
--- a/spec/workers/process_commit_worker_spec.rb
+++ b/spec/workers/process_commit_worker_spec.rb
@@ -94,7 +94,7 @@ RSpec.describe ProcessCommitWorker do
project.repository.after_create_branch
MergeRequests::MergeService
- .new(project, merge_request.author, { sha: merge_request.diff_head_sha })
+ .new(project: project, current_user: merge_request.author, params: { sha: merge_request.diff_head_sha })
.execute(merge_request)
merge_request.reload.merge_commit
diff --git a/spec/workers/rebase_worker_spec.rb b/spec/workers/rebase_worker_spec.rb
index 9246b283be5..4bdfd7219f2 100644
--- a/spec/workers/rebase_worker_spec.rb
+++ b/spec/workers/rebase_worker_spec.rb
@@ -19,7 +19,7 @@ RSpec.describe RebaseWorker, '#perform' do
it 'sets the correct project for running hooks' do
expect(MergeRequests::RebaseService)
- .to receive(:new).with(forked_project, merge_request.author).and_call_original
+ .to receive(:new).with(project: forked_project, current_user: merge_request.author).and_call_original
subject.perform(merge_request.id, merge_request.author.id)
end
diff --git a/spec/workers/update_merge_requests_worker_spec.rb b/spec/workers/update_merge_requests_worker_spec.rb
index fb12086c2f4..bd0dc2f9ef4 100644
--- a/spec/workers/update_merge_requests_worker_spec.rb
+++ b/spec/workers/update_merge_requests_worker_spec.rb
@@ -20,7 +20,7 @@ RSpec.describe UpdateMergeRequestsWorker do
end
it 'executes MergeRequests::RefreshService with expected values' do
- expect_next_instance_of(MergeRequests::RefreshService, project, user) do |refresh_service|
+ expect_next_instance_of(MergeRequests::RefreshService, project: project, current_user: user) do |refresh_service|
expect(refresh_service).to receive(:execute).with(oldrev, newrev, ref)
end