Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/merge_requests/retarget_chain_service_spec.rb')
-rw-r--r--spec/services/merge_requests/retarget_chain_service_spec.rb14
1 files changed, 13 insertions, 1 deletions
diff --git a/spec/services/merge_requests/retarget_chain_service_spec.rb b/spec/services/merge_requests/retarget_chain_service_spec.rb
index ef8cd0a861e..a048c21d39a 100644
--- a/spec/services/merge_requests/retarget_chain_service_spec.rb
+++ b/spec/services/merge_requests/retarget_chain_service_spec.rb
@@ -41,9 +41,13 @@ RSpec.describe MergeRequests::RetargetChainService, feature_category: :code_revi
'target', 'delete',
merge_request.source_branch, merge_request.target_branch)
+ expect(another_merge_request.rebase_jid).to be_blank
+
expect { subject }.to change { another_merge_request.reload.target_branch }
.from(merge_request.source_branch)
.to(merge_request.target_branch)
+
+ expect(another_merge_request.rebase_jid).to be_present
end
end
@@ -132,9 +136,17 @@ RSpec.describe MergeRequests::RetargetChainService, feature_category: :code_revi
merge_request.mark_as_merged
end
- it 'retargets only 4 of them' do
+ it 'retargets and rebases only 4 of them' do
+ expect(many_merge_requests.any? { |mr| mr.reload.rebase_jid.present? }).to be_falsey
+
subject
+ first_four = many_merge_requests.first(4)
+ others = many_merge_requests - first_four
+
+ expect(others.any? { |mr| mr.reload.rebase_jid.present? }).to be_falsey
+ expect(first_four.all? { |mr| mr.reload.rebase_jid.present? }).to be_truthy
+
expect(many_merge_requests.each(&:reload).pluck(:target_branch).tally)
.to eq(
merge_request.source_branch => 6,