Skip to content
Snippets Groups Projects
Commit 9ab02540 authored by Oswaldo Ferreir's avatar Oswaldo Ferreir
Browse files

Make "merge ongoing" check more consistent

parent efeaf3bd
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -396,7 +396,7 @@ class MergeRequest < ActiveRecord::Base
end
 
def merge_ongoing?
!!merge_jid && !merged?
!!merge_jid && !merged? && Gitlab::SidekiqStatus.num_running([merge_jid]) > 0
end
 
def closed_without_fork?
Loading
Loading
---
title: Make "merge ongoing" check more consistent
merge_request:
author:
type: fixed
Loading
Loading
@@ -1460,11 +1460,31 @@ describe MergeRequest do
end
 
describe '#merge_ongoing?' do
it 'returns true when merge_id is present and MR is not merged' do
it 'returns true when merge_id, MR is not merged and it has no running job' do
merge_request = build_stubbed(:merge_request, state: :open, merge_jid: 'foo')
allow(Gitlab::SidekiqStatus).to receive(:num_running).with(['foo']) { 1 }
 
expect(merge_request.merge_ongoing?).to be(true)
end
it 'returns false when merge_jid is nil' do
merge_request = build_stubbed(:merge_request, state: :open, merge_jid: nil)
expect(merge_request.merge_ongoing?).to be(false)
end
it 'returns false if MR is merged' do
merge_request = build_stubbed(:merge_request, state: :merged, merge_jid: 'foo')
expect(merge_request.merge_ongoing?).to be(false)
end
it 'returns false if there is no merge job running' do
merge_request = build_stubbed(:merge_request, state: :open, merge_jid: 'foo')
allow(Gitlab::SidekiqStatus).to receive(:num_running).with(['foo']) { 0 }
expect(merge_request.merge_ongoing?).to be(false)
end
end
 
describe "#closed_without_fork?" do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment