summaryrefslogtreecommitdiff
path: root/spec/services
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-04-20 21:09:48 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-04-20 21:09:48 +0000
commit7fbb996fde20a9905177e253491f858870cd5882 (patch)
tree159c692eb50b7eb273fd4013217ceb5fab3296a4 /spec/services
parent4faa270685797bd689d2035efe7c7e724950eb82 (diff)
downloadgitlab-ce-7fbb996fde20a9905177e253491f858870cd5882.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/services')
-rw-r--r--spec/services/concerns/exclusive_lease_guard_spec.rb46
-rw-r--r--spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb22
-rw-r--r--spec/services/merge_requests/assign_issues_service_spec.rb14
-rw-r--r--spec/services/merge_requests/conflicts/resolve_service_spec.rb19
-rw-r--r--spec/services/merge_requests/create_service_spec.rb17
-rw-r--r--spec/services/merge_requests/ff_merge_service_spec.rb12
-rw-r--r--spec/services/merge_requests/merge_orchestration_service_spec.rb7
-rw-r--r--spec/services/merge_requests/merge_service_spec.rb120
-rw-r--r--spec/services/merge_requests/merge_to_ref_service_spec.rb26
-rw-r--r--spec/services/merge_requests/mergeability/detailed_merge_status_service_spec.rb11
-rw-r--r--spec/services/merge_requests/mergeability_check_service_spec.rb20
-rw-r--r--spec/services/merge_requests/rebase_service_spec.rb28
-rw-r--r--spec/services/merge_requests/refresh_service_spec.rb230
-rw-r--r--spec/services/merge_requests/reload_diffs_service_spec.rb9
-rw-r--r--spec/services/merge_requests/squash_service_spec.rb24
-rw-r--r--spec/services/merge_requests/update_assignees_service_spec.rb34
-rw-r--r--spec/services/merge_requests/update_reviewers_service_spec.rb18
-rw-r--r--spec/services/merge_requests/update_service_spec.rb44
-rw-r--r--spec/services/projects/git_deduplication_service_spec.rb2
19 files changed, 446 insertions, 257 deletions
diff --git a/spec/services/concerns/exclusive_lease_guard_spec.rb b/spec/services/concerns/exclusive_lease_guard_spec.rb
index b081d2642c0..ca8bff4ecc4 100644
--- a/spec/services/concerns/exclusive_lease_guard_spec.rb
+++ b/spec/services/concerns/exclusive_lease_guard_spec.rb
@@ -49,11 +49,49 @@ RSpec.describe ExclusiveLeaseGuard, :clean_gitlab_redis_shared_state, feature_ca
subject.exclusive_lease.cancel
end
- it 'does not call internal_method but logs error', :aggregate_failures do
- expect(subject).not_to receive(:internal_method)
- expect(Gitlab::AppLogger).to receive(:error).with("Cannot obtain an exclusive lease for #{subject.lease_key}. There must be another instance already in execution.")
+ context 'when the class does not override lease_taken_log_level' do
+ it 'does not call internal_method but logs error', :aggregate_failures do
+ expect(subject).not_to receive(:internal_method)
+ expect(Gitlab::AppJsonLogger).to receive(:error).with({ message: "Cannot obtain an exclusive lease. There must be another instance already in execution.", lease_key: 'exclusive_lease_guard_test_class', class_name: 'ExclusiveLeaseGuardTestClass', lease_timeout: 1.second })
- subject.call
+ subject.call
+ end
+ end
+
+ context 'when the class overrides lease_taken_log_level to return :info' do
+ subject :overwritten_subject_class do
+ Class.new(subject_class) do
+ def lease_taken_log_level
+ :info
+ end
+ end
+ end
+
+ let(:subject) { overwritten_subject_class.new }
+
+ it 'logs info', :aggregate_failures do
+ expect(Gitlab::AppJsonLogger).to receive(:info).with({ message: "Cannot obtain an exclusive lease. There must be another instance already in execution.", lease_key: 'exclusive_lease_guard_test_class', class_name: 'ExclusiveLeaseGuardTestClass', lease_timeout: 1.second })
+
+ subject.call
+ end
+ end
+
+ context 'when the class overrides lease_taken_log_level to return :debug' do
+ subject :overwritten_subject_class do
+ Class.new(subject_class) do
+ def lease_taken_log_level
+ :debug
+ end
+ end
+ end
+
+ let(:subject) { overwritten_subject_class.new }
+
+ it 'logs debug', :aggregate_failures do
+ expect(Gitlab::AppJsonLogger).to receive(:debug).with({ message: "Cannot obtain an exclusive lease. There must be another instance already in execution.", lease_key: 'exclusive_lease_guard_test_class', class_name: 'ExclusiveLeaseGuardTestClass', lease_timeout: 1.second })
+
+ subject.call
+ end
end
end
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 3c37792b576..1307e2be3be 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
@@ -74,10 +74,13 @@ RSpec.describe ::MergeRequests::AddTodoWhenBuildFailsService, feature_category:
context 'when build belongs to a merge request pipeline' do
let(:pipeline) do
- create(:ci_pipeline, source: :merge_request_event,
- ref: merge_request.merge_ref_path,
- merge_request: merge_request,
- merge_requests_as_head_pipeline: [merge_request])
+ create(
+ :ci_pipeline,
+ source: :merge_request_event,
+ ref: merge_request.merge_ref_path,
+ merge_request: merge_request,
+ merge_requests_as_head_pipeline: [merge_request]
+ )
end
let(:commit_status) { create(:ci_build, ref: merge_request.merge_ref_path, pipeline: pipeline) }
@@ -119,10 +122,13 @@ RSpec.describe ::MergeRequests::AddTodoWhenBuildFailsService, feature_category:
context 'when build belongs to a merge request pipeline' do
let(:pipeline) do
- create(:ci_pipeline, source: :merge_request_event,
- ref: merge_request.merge_ref_path,
- merge_request: merge_request,
- merge_requests_as_head_pipeline: [merge_request])
+ create(
+ :ci_pipeline,
+ source: :merge_request_event,
+ ref: merge_request.merge_ref_path,
+ merge_request: merge_request,
+ merge_requests_as_head_pipeline: [merge_request]
+ )
end
let(:commit_status) { create(:ci_build, ref: merge_request.merge_ref_path, pipeline: pipeline) }
diff --git a/spec/services/merge_requests/assign_issues_service_spec.rb b/spec/services/merge_requests/assign_issues_service_spec.rb
index f5fb88b6161..9f82207086b 100644
--- a/spec/services/merge_requests/assign_issues_service_spec.rb
+++ b/spec/services/merge_requests/assign_issues_service_spec.rb
@@ -37,12 +37,14 @@ RSpec.describe MergeRequests::AssignIssuesService, feature_category: :code_revie
it 'accepts precomputed data for closes_issues' do
issue2 = create(:issue, project: project)
- service2 = described_class.new(project: project,
- current_user: user,
- params: {
- 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
diff --git a/spec/services/merge_requests/conflicts/resolve_service_spec.rb b/spec/services/merge_requests/conflicts/resolve_service_spec.rb
index e11cccaa54a..002a07ff14e 100644
--- a/spec/services/merge_requests/conflicts/resolve_service_spec.rb
+++ b/spec/services/merge_requests/conflicts/resolve_service_spec.rb
@@ -12,15 +12,22 @@ RSpec.describe MergeRequests::Conflicts::ResolveService, feature_category: :code
end
let(:merge_request) do
- create(:merge_request,
- source_branch: 'conflict-resolvable', source_project: project,
- target_branch: 'conflict-start')
+ create(
+ :merge_request,
+ source_branch: 'conflict-resolvable',
+ source_project: project,
+ target_branch: 'conflict-start'
+ )
end
let(:merge_request_from_fork) do
- create(:merge_request,
- source_branch: 'conflict-resolvable-fork', source_project: forked_project,
- target_branch: 'conflict-start', target_project: project)
+ create(
+ :merge_request,
+ source_branch: 'conflict-resolvable-fork',
+ source_project: forked_project,
+ target_branch: 'conflict-start',
+ target_project: project
+ )
end
describe '#execute' do
diff --git a/spec/services/merge_requests/create_service_spec.rb b/spec/services/merge_requests/create_service_spec.rb
index efbd693fc82..c4de56f39dd 100644
--- a/spec/services/merge_requests/create_service_spec.rb
+++ b/spec/services/merge_requests/create_service_spec.rb
@@ -249,10 +249,13 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state, f
context "when branch pipeline was created before a merge request pipline has been created" do
before do
- create(:ci_pipeline, project: merge_request.source_project,
- sha: merge_request.diff_head_sha,
- ref: merge_request.source_branch,
- tag: false)
+ create(
+ :ci_pipeline,
+ project: merge_request.source_project,
+ sha: merge_request.diff_head_sha,
+ ref: merge_request.source_branch,
+ tag: false
+ )
merge_request
end
@@ -464,8 +467,10 @@ RSpec.describe MergeRequests::CreateService, :clean_gitlab_redis_shared_state, f
context "when issuable feature is private" do
before do
- project.project_feature.update!(issues_access_level: ProjectFeature::PRIVATE,
- merge_requests_access_level: ProjectFeature::PRIVATE)
+ project.project_feature.update!(
+ issues_access_level: ProjectFeature::PRIVATE,
+ merge_requests_access_level: ProjectFeature::PRIVATE
+ )
end
levels = [Gitlab::VisibilityLevel::INTERNAL, Gitlab::VisibilityLevel::PUBLIC]
diff --git a/spec/services/merge_requests/ff_merge_service_spec.rb b/spec/services/merge_requests/ff_merge_service_spec.rb
index 993b7cfa85b..f2dbc02f12c 100644
--- a/spec/services/merge_requests/ff_merge_service_spec.rb
+++ b/spec/services/merge_requests/ff_merge_service_spec.rb
@@ -6,11 +6,13 @@ RSpec.describe MergeRequests::FfMergeService, feature_category: :code_review_wor
let(:user) { create(:user) }
let(:user2) { create(:user) }
let(:merge_request) do
- create(:merge_request,
- source_branch: 'flatten-dir',
- target_branch: 'improve/awesome',
- assignees: [user2],
- author: create(:user))
+ create(
+ :merge_request,
+ source_branch: 'flatten-dir',
+ target_branch: 'improve/awesome',
+ assignees: [user2],
+ author: create(:user)
+ )
end
let(:project) { merge_request.project }
diff --git a/spec/services/merge_requests/merge_orchestration_service_spec.rb b/spec/services/merge_requests/merge_orchestration_service_spec.rb
index 41da7abfeab..389956bf258 100644
--- a/spec/services/merge_requests/merge_orchestration_service_spec.rb
+++ b/spec/services/merge_requests/merge_orchestration_service_spec.rb
@@ -10,8 +10,11 @@ RSpec.describe MergeRequests::MergeOrchestrationService, feature_category: :code
let(:service) { described_class.new(project, user, merge_params) }
let!(:merge_request) do
- create(:merge_request, source_project: project, source_branch: 'feature',
- target_project: project, target_branch: 'master')
+ create(
+ :merge_request,
+ source_project: project, source_branch: 'feature',
+ target_project: project, target_branch: 'master'
+ )
end
shared_context 'fresh repository' do
diff --git a/spec/services/merge_requests/merge_service_spec.rb b/spec/services/merge_requests/merge_service_spec.rb
index f380357a659..c77cf288f56 100644
--- a/spec/services/merge_requests/merge_service_spec.rb
+++ b/spec/services/merge_requests/merge_service_spec.rb
@@ -69,12 +69,15 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
let(:merge_request) do
# A merge request with 5 commits
- create(:merge_request, :simple,
- author: user2,
- assignees: [user2],
- squash: true,
- source_branch: 'improve/awesome',
- target_branch: 'fix')
+ create(
+ :merge_request,
+ :simple,
+ author: user2,
+ assignees: [user2],
+ squash: true,
+ source_branch: 'improve/awesome',
+ target_branch: 'fix'
+ )
end
it 'merges the merge request with squashed commits' do
@@ -147,12 +150,15 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
context 'when an invalid sha is passed' do
let(:merge_request) do
- create(:merge_request, :simple,
- author: user2,
- assignees: [user2],
- squash: true,
- source_branch: 'improve/awesome',
- target_branch: 'fix')
+ create(
+ :merge_request,
+ :simple,
+ author: user2,
+ assignees: [user2],
+ squash: true,
+ source_branch: 'improve/awesome',
+ target_branch: 'fix'
+ )
end
let(:merge_params) do
@@ -351,9 +357,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
service.execute(merge_request)
expect(merge_request.merge_error).to eq(error_message)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
end
@@ -366,9 +375,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
service.execute(merge_request)
expect(merge_request.merge_error).to eq(described_class::GENERIC_ERROR_MESSAGE)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
it 'logs and saves error if user is not authorized' do
@@ -394,9 +406,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
service.execute(merge_request)
expect(merge_request.merge_error).to include('Something went wrong during merge pre-receive hook')
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
it 'logs and saves error if commit is not created' do
@@ -408,9 +423,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
expect(merge_request).to be_open
expect(merge_request.merge_commit_sha).to be_nil
expect(merge_request.merge_error).to include(described_class::GENERIC_ERROR_MESSAGE)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(described_class::GENERIC_ERROR_MESSAGE)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(described_class::GENERIC_ERROR_MESSAGE)
+ )
+ )
end
context 'when squashing is required' do
@@ -429,9 +447,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
expect(merge_request.merge_commit_sha).to be_nil
expect(merge_request.squash_commit_sha).to be_nil
expect(merge_request.merge_error).to include(error_message)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
end
@@ -452,9 +473,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
expect(merge_request.merge_commit_sha).to be_nil
expect(merge_request.squash_commit_sha).to be_nil
expect(merge_request.merge_error).to include(error_message)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
it 'logs and saves error if there is an PreReceiveError exception' do
@@ -470,9 +494,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
expect(merge_request.merge_commit_sha).to be_nil
expect(merge_request.squash_commit_sha).to be_nil
expect(merge_request.merge_error).to include('Something went wrong during merge pre-receive hook')
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
context 'when fast-forward merge is not allowed' do
@@ -494,9 +521,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
expect(merge_request.merge_commit_sha).to be_nil
expect(merge_request.squash_commit_sha).to be_nil
expect(merge_request.merge_error).to include(error_message)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
end
end
@@ -513,9 +543,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
it 'logs and saves error' do
service.execute(merge_request)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
end
@@ -527,9 +560,12 @@ RSpec.describe MergeRequests::MergeService, feature_category: :code_review_workf
it 'logs and saves error' do
service.execute(merge_request)
- expect(Gitlab::AppLogger).to have_received(:error)
- .with(hash_including(merge_request_info: merge_request.to_reference(full: true),
- message: a_string_matching(error_message)))
+ expect(Gitlab::AppLogger).to have_received(:error).with(
+ hash_including(
+ merge_request_info: merge_request.to_reference(full: true),
+ message: a_string_matching(error_message)
+ )
+ )
end
context 'when passing `skip_discussions_check: true` as `options` parameter' do
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 8428848c3c8..8200f60b072 100644
--- a/spec/services/merge_requests/merge_to_ref_service_spec.rb
+++ b/spec/services/merge_requests/merge_to_ref_service_spec.rb
@@ -210,11 +210,14 @@ RSpec.describe MergeRequests::MergeToRefService, feature_category: :code_review_
let(:merge_request) { create(:merge_request, assignees: [user], author: user) }
let(:project) { merge_request.project }
let!(:todo) do
- create(:todo, :assigned,
- project: project,
- author: user,
- user: user,
- target: merge_request)
+ create(
+ :todo,
+ :assigned,
+ project: project,
+ author: user,
+ user: user,
+ target: merge_request
+ )
end
before do
@@ -258,8 +261,10 @@ RSpec.describe MergeRequests::MergeToRefService, feature_category: :code_review_
context 'when first merge happens' do
let(:merge_request) do
- create(:merge_request, source_project: project, source_branch: 'feature',
- target_project: project, target_branch: 'master')
+ create(
+ :merge_request, source_project: project, source_branch: 'feature',
+ target_project: project, target_branch: 'master'
+ )
end
it_behaves_like 'successfully merges to ref with merge method' do
@@ -269,8 +274,11 @@ RSpec.describe MergeRequests::MergeToRefService, feature_category: :code_review_
context 'when second merge happens' do
let(:merge_request) do
- create(:merge_request, source_project: project, source_branch: 'improve/awesome',
- target_project: project, target_branch: 'master')
+ create(
+ :merge_request,
+ source_project: project, source_branch: 'improve/awesome',
+ target_project: project, target_branch: 'master'
+ )
end
it_behaves_like 'successfully merges to ref with merge method' do
diff --git a/spec/services/merge_requests/mergeability/detailed_merge_status_service_spec.rb b/spec/services/merge_requests/mergeability/detailed_merge_status_service_spec.rb
index 876b1e7f23a..a037d21bd94 100644
--- a/spec/services/merge_requests/mergeability/detailed_merge_status_service_spec.rb
+++ b/spec/services/merge_requests/mergeability/detailed_merge_status_service_spec.rb
@@ -72,9 +72,14 @@ RSpec.describe ::MergeRequests::Mergeability::DetailedMergeStatusService, featur
context 'when pipeline exists' do
before do
- create(:ci_pipeline, ci_status, merge_request: merge_request,
- project: merge_request.project, sha: merge_request.source_branch_sha,
- head_pipeline_of: merge_request)
+ create(
+ :ci_pipeline,
+ ci_status,
+ merge_request: merge_request,
+ project: merge_request.project,
+ sha: merge_request.source_branch_sha,
+ head_pipeline_of: merge_request
+ )
end
context 'when the pipeline is running' do
diff --git a/spec/services/merge_requests/mergeability_check_service_spec.rb b/spec/services/merge_requests/mergeability_check_service_spec.rb
index 881157e7f11..82ef8440380 100644
--- a/spec/services/merge_requests/mergeability_check_service_spec.rb
+++ b/spec/services/merge_requests/mergeability_check_service_spec.rb
@@ -158,9 +158,11 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
threads = execute_within_threads(amount: 3, retry_lease: false)
results = threads.map { |t| [t.value.status, t.value.message] }
- expect(results).to contain_exactly([:error, 'Failed to obtain a lock'],
- [:error, 'Failed to obtain a lock'],
- [:success, nil])
+ expect(results).to contain_exactly(
+ [:error, 'Failed to obtain a lock'],
+ [:error, 'Failed to obtain a lock'],
+ [:success, nil]
+ )
end
end
end
@@ -183,11 +185,13 @@ RSpec.describe MergeRequests::MergeabilityCheckService, :clean_gitlab_redis_shar
context 'when it cannot be merged on git' do
let(:merge_request) do
- create(:merge_request,
- merge_status: :unchecked,
- source_branch: 'conflict-resolvable',
- source_project: project,
- target_branch: 'conflict-start')
+ create(
+ :merge_request,
+ merge_status: :unchecked,
+ source_branch: 'conflict-resolvable',
+ source_project: project,
+ target_branch: 'conflict-start'
+ )
end
it 'returns ServiceResponse.error and keeps merge status as cannot_be_merged' do
diff --git a/spec/services/merge_requests/rebase_service_spec.rb b/spec/services/merge_requests/rebase_service_spec.rb
index 704dc1f9000..c8b9ab5a34e 100644
--- a/spec/services/merge_requests/rebase_service_spec.rb
+++ b/spec/services/merge_requests/rebase_service_spec.rb
@@ -8,10 +8,12 @@ RSpec.describe MergeRequests::RebaseService, feature_category: :source_code_mana
let(:user) { create(:user) }
let(:rebase_jid) { 'fake-rebase-jid' }
let(:merge_request) do
- create :merge_request,
- source_branch: 'feature_conflict',
- target_branch: 'master',
- rebase_jid: rebase_jid
+ create(
+ :merge_request,
+ source_branch: 'feature_conflict',
+ target_branch: 'master',
+ rebase_jid: rebase_jid
+ )
end
let(:project) { merge_request.project }
@@ -102,8 +104,9 @@ RSpec.describe MergeRequests::RebaseService, feature_category: :source_code_mana
end
it 'returns an error' do
- expect(service.execute(merge_request)).to match(status: :error,
- message: described_class::REBASE_ERROR)
+ expect(service.execute(merge_request)).to match(
+ status: :error, message: described_class::REBASE_ERROR
+ )
end
it 'logs the error' do
@@ -154,8 +157,9 @@ RSpec.describe MergeRequests::RebaseService, feature_category: :source_code_mana
end
it 'returns an error' do
- expect(service.execute(merge_request)).to match(status: :error,
- message: described_class::REBASE_ERROR)
+ expect(service.execute(merge_request)).to match(
+ status: :error, message: described_class::REBASE_ERROR
+ )
end
end
@@ -215,9 +219,11 @@ RSpec.describe MergeRequests::RebaseService, feature_category: :source_code_mana
message: 'Add new file to target',
branch_name: 'master')
- create(:merge_request,
- source_branch: 'master', source_project: forked_project,
- target_branch: 'master', target_project: project)
+ create(
+ :merge_request,
+ source_branch: 'master', source_project: forked_project,
+ target_branch: 'master', target_project: project
+ )
end
it 'rebases source branch', :sidekiq_might_not_need_inline do
diff --git a/spec/services/merge_requests/refresh_service_spec.rb b/spec/services/merge_requests/refresh_service_spec.rb
index d8e5eb3bcde..4d533b67690 100644
--- a/spec/services/merge_requests/refresh_service_spec.rb
+++ b/spec/services/merge_requests/refresh_service_spec.rb
@@ -19,43 +19,53 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
@project = create(:project, :repository, namespace: group)
@fork_project = fork_project(@project, @user, repository: true)
- @merge_request = create(:merge_request,
- source_project: @project,
- source_branch: 'master',
- target_branch: 'feature',
- target_project: @project,
- auto_merge_enabled: true,
- auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
- merge_user: @user)
-
- @another_merge_request = create(:merge_request,
- source_project: @project,
- source_branch: 'master',
- target_branch: 'test',
- target_project: @project,
- auto_merge_enabled: true,
- auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
- merge_user: @user)
-
- @fork_merge_request = create(:merge_request,
- source_project: @fork_project,
- source_branch: 'master',
- target_branch: 'feature',
- target_project: @project)
-
- @build_failed_todo = create(:todo,
- :build_failed,
- user: @user,
- project: @project,
- target: @merge_request,
- author: @user)
-
- @fork_build_failed_todo = create(:todo,
- :build_failed,
- user: @user,
- project: @project,
- target: @merge_request,
- author: @user)
+ @merge_request = create(
+ :merge_request,
+ source_project: @project,
+ source_branch: 'master',
+ target_branch: 'feature',
+ target_project: @project,
+ auto_merge_enabled: true,
+ auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
+ merge_user: @user
+ )
+
+ @another_merge_request = create(
+ :merge_request,
+ source_project: @project,
+ source_branch: 'master',
+ target_branch: 'test',
+ target_project: @project,
+ auto_merge_enabled: true,
+ auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
+ merge_user: @user
+ )
+
+ @fork_merge_request = create(
+ :merge_request,
+ source_project: @fork_project,
+ source_branch: 'master',
+ target_branch: 'feature',
+ target_project: @project
+ )
+
+ @build_failed_todo = create(
+ :todo,
+ :build_failed,
+ user: @user,
+ project: @project,
+ target: @merge_request,
+ author: @user
+ )
+
+ @fork_build_failed_todo = create(
+ :todo,
+ :build_failed,
+ user: @user,
+ project: @project,
+ target: @merge_request,
+ author: @user
+ )
@commits = @merge_request.commits
@@ -306,10 +316,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
context "when branch pipeline was created before a detaced merge request pipeline has been created" do
before do
- create(:ci_pipeline, project: @merge_request.source_project,
- sha: @merge_request.diff_head_sha,
- ref: @merge_request.source_branch,
- tag: false)
+ create(
+ :ci_pipeline,
+ project: @merge_request.source_project,
+ sha: @merge_request.diff_head_sha,
+ ref: @merge_request.source_branch,
+ tag: false
+ )
subject
end
@@ -340,9 +353,11 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
context 'when the pipeline should be skipped' do
it 'saves a skipped detached merge request pipeline' do
- project.repository.create_file(@user, 'new-file.txt', 'A new file',
- message: '[skip ci] This is a test',
- branch_name: 'master')
+ project.repository.create_file(
+ @user, 'new-file.txt', 'A new file',
+ message: '[skip ci] This is a test',
+ branch_name: 'master'
+ )
expect { subject }
.to change { @merge_request.pipelines_for_merge_request.count }.by(1)
@@ -452,11 +467,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
context 'when an MR to be closed was empty already' do
let!(:empty_fork_merge_request) do
- create(:merge_request,
- source_project: @fork_project,
- source_branch: 'master',
- target_branch: 'master',
- target_project: @project)
+ create(
+ :merge_request,
+ source_project: @fork_project,
+ source_branch: 'master',
+ target_branch: 'master',
+ target_project: @project
+ )
end
before do
@@ -597,23 +614,33 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
context 'forked projects with the same source branch name as target branch' do
let!(:first_commit) do
- @fork_project.repository.create_file(@user, 'test1.txt', 'Test data',
- message: 'Test commit',
- branch_name: 'master')
+ @fork_project.repository.create_file(
+ @user,
+ 'test1.txt',
+ 'Test data',
+ message: 'Test commit',
+ branch_name: 'master'
+ )
end
let!(:second_commit) do
- @fork_project.repository.create_file(@user, 'test2.txt', 'More test data',
- message: 'Second test commit',
- branch_name: 'master')
+ @fork_project.repository.create_file(
+ @user,
+ 'test2.txt',
+ 'More test data',
+ message: 'Second test commit',
+ branch_name: 'master'
+ )
end
let!(:forked_master_mr) do
- create(:merge_request,
- source_project: @fork_project,
- source_branch: 'master',
- target_branch: 'master',
- target_project: @project)
+ create(
+ :merge_request,
+ source_project: @fork_project,
+ source_branch: 'master',
+ target_branch: 'master',
+ target_project: @project
+ )
end
let(:force_push_commit) { @project.commit('feature').id }
@@ -647,9 +674,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
end
it 'does not increase the diff count for a new push to target branch' do
- new_commit = @project.repository.create_file(@user, 'new-file.txt', 'A new file',
- message: 'This is a test',
- branch_name: 'master')
+ new_commit = @project.repository.create_file(
+ @user,
+ 'new-file.txt',
+ 'A new file',
+ message: 'This is a test',
+ branch_name: 'master'
+ )
expect do
service.new(project: @project, current_user: @user).execute(@newrev, new_commit, 'refs/heads/master')
@@ -721,10 +752,12 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
CommitCollection.new(project, [commit], 'close-by-commit')
)
- merge_request = create(:merge_request,
- target_branch: 'master',
- source_branch: 'close-by-commit',
- source_project: project)
+ merge_request = create(
+ :merge_request,
+ target_branch: 'master',
+ source_branch: 'close-by-commit',
+ source_project: project
+ )
refresh_service = service.new(project: project, current_user: user)
allow(refresh_service).to receive(:execute_hooks)
@@ -743,11 +776,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
CommitCollection.new(forked_project, [commit], 'close-by-commit')
)
- merge_request = create(:merge_request,
- target_branch: 'master',
- target_project: project,
- source_branch: 'close-by-commit',
- source_project: forked_project)
+ merge_request = create(
+ :merge_request,
+ target_branch: 'master',
+ target_project: project,
+ source_branch: 'close-by-commit',
+ source_project: forked_project
+ )
refresh_service = service.new(project: forked_project, current_user: user)
allow(refresh_service).to receive(:execute_hooks)
@@ -767,11 +802,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
end
it 'marks the merge request as draft from fixup commits' do
- fixup_merge_request = create(:merge_request,
- source_project: @project,
- source_branch: 'wip',
- target_branch: 'master',
- target_project: @project)
+ fixup_merge_request = create(
+ :merge_request,
+ source_project: @project,
+ source_branch: 'wip',
+ target_branch: 'master',
+ target_project: @project
+ )
commits = fixup_merge_request.commits
oldrev = commits.last.id
newrev = commits.first.id
@@ -786,11 +823,13 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
end
it 'references the commit that caused the draft status' do
- draft_merge_request = create(:merge_request,
- source_project: @project,
- source_branch: 'wip',
- target_branch: 'master',
- target_project: @project)
+ draft_merge_request = create(
+ :merge_request,
+ source_project: @project,
+ source_branch: 'wip',
+ target_branch: 'master',
+ target_project: @project
+ )
commits = draft_merge_request.commits
oldrev = commits.last.id
@@ -904,22 +943,23 @@ RSpec.describe MergeRequests::RefreshService, feature_category: :code_review_wor
end
let_it_be(:merge_request, refind: true) do
- create(:merge_request,
- author: author,
- source_project: source_project,
- source_branch: 'feature',
- target_branch: 'master',
- target_project: target_project,
- auto_merge_enabled: true,
- auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
- merge_user: user)
+ create(
+ :merge_request,
+ author: author,
+ source_project: source_project,
+ source_branch: 'feature',
+ target_branch: 'master',
+ target_project: target_project,
+ auto_merge_enabled: true,
+ auto_merge_strategy: AutoMergeService::STRATEGY_MERGE_WHEN_PIPELINE_SUCCEEDS,
+ merge_user: user
+ )
end
let_it_be(:newrev) do
- target_project
- .repository
- .create_file(user, 'test1.txt', 'Test data',
- message: 'Test commit', branch_name: 'master')
+ target_project.repository.create_file(
+ user, 'test1.txt', 'Test data', message: 'Test commit', branch_name: 'master'
+ )
end
let_it_be(:oldrev) do
diff --git a/spec/services/merge_requests/reload_diffs_service_spec.rb b/spec/services/merge_requests/reload_diffs_service_spec.rb
index 4dd05f75a3e..675b458c435 100644
--- a/spec/services/merge_requests/reload_diffs_service_spec.rb
+++ b/spec/services/merge_requests/reload_diffs_service_spec.rb
@@ -3,7 +3,7 @@
require 'spec_helper'
RSpec.describe MergeRequests::ReloadDiffsService, :use_clean_rails_memory_store_caching,
-feature_category: :code_review_workflow do
+ feature_category: :code_review_workflow do
let(:current_user) { create(:user) }
let(:merge_request) { create(:merge_request) }
let(:subject) { described_class.new(merge_request, current_user) }
@@ -19,10 +19,9 @@ feature_category: :code_review_workflow do
new_diff_refs = merge_request.diff_refs
expect(merge_request).to receive(:create_merge_request_diff).and_return(new_diff)
- expect(merge_request).to receive(:update_diff_discussion_positions)
- .with(old_diff_refs: old_diff_refs,
- new_diff_refs: new_diff_refs,
- current_user: current_user)
+ expect(merge_request).to receive(:update_diff_discussion_positions).with(
+ old_diff_refs: old_diff_refs, new_diff_refs: new_diff_refs, current_user: current_user
+ )
subject.execute
end
diff --git a/spec/services/merge_requests/squash_service_spec.rb b/spec/services/merge_requests/squash_service_spec.rb
index 26e225db9fc..1afca466fb5 100644
--- a/spec/services/merge_requests/squash_service_spec.rb
+++ b/spec/services/merge_requests/squash_service_spec.rb
@@ -13,21 +13,27 @@ RSpec.describe MergeRequests::SquashService, feature_category: :source_code_mana
end
let(:merge_request_with_one_commit) do
- create(:merge_request,
- source_branch: 'feature', source_project: project,
- target_branch: 'master', target_project: project)
+ create(
+ :merge_request,
+ source_branch: 'feature', source_project: project,
+ target_branch: 'master', target_project: project
+ )
end
let(:merge_request_with_only_new_files) do
- create(:merge_request,
- source_branch: 'video', source_project: project,
- target_branch: 'master', target_project: project)
+ create(
+ :merge_request,
+ source_branch: 'video', source_project: project,
+ target_branch: 'master', target_project: project
+ )
end
let(:merge_request_with_large_files) do
- create(:merge_request,
- source_branch: 'squash-large-files', source_project: project,
- target_branch: 'master', target_project: project)
+ create(
+ :merge_request,
+ source_branch: 'squash-large-files', source_project: project,
+ target_branch: 'master', target_project: project
+ )
end
shared_examples 'the squash succeeds' do
diff --git a/spec/services/merge_requests/update_assignees_service_spec.rb b/spec/services/merge_requests/update_assignees_service_spec.rb
index 7d08eb86441..85d749de83c 100644
--- a/spec/services/merge_requests/update_assignees_service_spec.rb
+++ b/spec/services/merge_requests/update_assignees_service_spec.rb
@@ -12,13 +12,17 @@ RSpec.describe MergeRequests::UpdateAssigneesService, feature_category: :code_re
let_it_be(:user3) { create(:user) }
let_it_be_with_reload(:merge_request) do
- create(:merge_request, :simple, :unique_branches,
- title: 'Old title',
- description: "FYI #{user2.to_reference}",
- assignee_ids: [user3.id],
- source_project: project,
- target_project: project,
- author: create(:user))
+ create(
+ :merge_request,
+ :simple,
+ :unique_branches,
+ title: 'Old title',
+ description: "FYI #{user2.to_reference}",
+ assignee_ids: [user3.id],
+ source_project: project,
+ target_project: project,
+ author: create(:user)
+ )
end
before do
@@ -107,12 +111,16 @@ RSpec.describe MergeRequests::UpdateAssigneesService, feature_category: :code_re
.with(merge_request, [user3], execute_hooks: true)
end
- other_mr = create(:merge_request, :simple, :unique_branches,
- title: merge_request.title,
- description: merge_request.description,
- assignee_ids: merge_request.assignee_ids,
- source_project: merge_request.project,
- author: merge_request.author)
+ other_mr = create(
+ :merge_request,
+ :simple,
+ :unique_branches,
+ title: merge_request.title,
+ description: merge_request.description,
+ assignee_ids: merge_request.assignee_ids,
+ source_project: merge_request.project,
+ author: merge_request.author
+ )
update_service = ::MergeRequests::UpdateService.new(project: project, current_user: user, params: opts)
diff --git a/spec/services/merge_requests/update_reviewers_service_spec.rb b/spec/services/merge_requests/update_reviewers_service_spec.rb
index ed2d448b523..1ae20e8c29c 100644
--- a/spec/services/merge_requests/update_reviewers_service_spec.rb
+++ b/spec/services/merge_requests/update_reviewers_service_spec.rb
@@ -12,13 +12,17 @@ RSpec.describe MergeRequests::UpdateReviewersService, feature_category: :code_re
let_it_be(:user3) { create(:user) }
let_it_be_with_reload(:merge_request) do
- create(:merge_request, :simple, :unique_branches,
- title: 'Old title',
- description: "FYI #{user2.to_reference}",
- reviewer_ids: [user3.id],
- source_project: project,
- target_project: project,
- author: create(:user))
+ create(
+ :merge_request,
+ :simple,
+ :unique_branches,
+ title: 'Old title',
+ description: "FYI #{user2.to_reference}",
+ reviewer_ids: [user3.id],
+ source_project: project,
+ target_project: project,
+ author: create(:user)
+ )
end
before do
diff --git a/spec/services/merge_requests/update_service_spec.rb b/spec/services/merge_requests/update_service_spec.rb
index 000c85fd1f8..012eb5f6fca 100644
--- a/spec/services/merge_requests/update_service_spec.rb
+++ b/spec/services/merge_requests/update_service_spec.rb
@@ -15,11 +15,15 @@ RSpec.describe MergeRequests::UpdateService, :mailer, feature_category: :code_re
let(:milestone) { create(:milestone, project: project) }
let(:merge_request) do
- create(:merge_request, :simple, title: 'Old title',
- description: "FYI #{user2.to_reference}",
- assignee_ids: [user3.id],
- source_project: project,
- author: create(:user))
+ create(
+ :merge_request,
+ :simple,
+ title: 'Old title',
+ description: "FYI #{user2.to_reference}",
+ assignee_ids: [user3.id],
+ source_project: project,
+ author: create(:user)
+ )
end
before do
@@ -1187,10 +1191,12 @@ RSpec.describe MergeRequests::UpdateService, :mailer, feature_category: :code_re
let(:source_project) { fork_project(target_project, nil, repository: true) }
let(:user) { create(:user) }
let(:merge_request) do
- create(:merge_request,
- source_project: source_project,
- source_branch: 'fixes',
- target_project: target_project)
+ create(
+ :merge_request,
+ source_project: source_project,
+ source_branch: 'fixes',
+ target_project: target_project
+ )
end
before do
@@ -1222,10 +1228,12 @@ RSpec.describe MergeRequests::UpdateService, :mailer, feature_category: :code_re
let(:source_project) { fork_project(target_project, nil, repository: true) }
let(:user) { target_project.first_owner }
let(:merge_request) do
- create(:merge_request,
- source_project: source_project,
- source_branch: 'fixes',
- target_project: target_project)
+ create(
+ :merge_request,
+ source_project: source_project,
+ source_branch: 'fixes',
+ target_project: target_project
+ )
end
it "cannot be done by members of the target project when they don't have access" do
@@ -1243,10 +1251,12 @@ RSpec.describe MergeRequests::UpdateService, :mailer, feature_category: :code_re
context 'updating `target_branch`' do
let(:merge_request) do
- create(:merge_request,
- source_project: project,
- source_branch: 'mr-b',
- target_branch: 'mr-a')
+ create(
+ :merge_request,
+ source_project: project,
+ source_branch: 'mr-b',
+ target_branch: 'mr-a'
+ )
end
it 'updates to master' do
diff --git a/spec/services/projects/git_deduplication_service_spec.rb b/spec/services/projects/git_deduplication_service_spec.rb
index 314c9d160dd..2b9f0974ae2 100644
--- a/spec/services/projects/git_deduplication_service_spec.rb
+++ b/spec/services/projects/git_deduplication_service_spec.rb
@@ -139,7 +139,7 @@ RSpec.describe Projects::GitDeduplicationService, feature_category: :source_code
end
it 'fails when a lease is already out' do
- expect(service).to receive(:log_error).with("Cannot obtain an exclusive lease for #{lease_key}. There must be another instance already in execution.")
+ expect(Gitlab::AppJsonLogger).to receive(:error).with({ message: "Cannot obtain an exclusive lease. There must be another instance already in execution.", lease_key: lease_key, class_name: described_class.name, lease_timeout: lease_timeout })
service.execute
end