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/lib/gitlab/git/remote_mirror_spec.rb')
-rw-r--r--spec/lib/gitlab/git/remote_mirror_spec.rb25
1 files changed, 19 insertions, 6 deletions
diff --git a/spec/lib/gitlab/git/remote_mirror_spec.rb b/spec/lib/gitlab/git/remote_mirror_spec.rb
index 92504b7aafe..0954879f6bd 100644
--- a/spec/lib/gitlab/git/remote_mirror_spec.rb
+++ b/spec/lib/gitlab/git/remote_mirror_spec.rb
@@ -7,16 +7,29 @@ RSpec.describe Gitlab::Git::RemoteMirror do
let(:project) { create(:project, :repository) }
let(:repository) { project.repository }
let(:ref_name) { 'foo' }
+ let(:url) { 'https://example.com' }
let(:options) { { only_branches_matching: ['master'], ssh_key: 'KEY', known_hosts: 'KNOWN HOSTS', keep_divergent_refs: true } }
- subject(:remote_mirror) { described_class.new(repository, ref_name, **options) }
+ subject(:remote_mirror) { described_class.new(repository, ref_name, url, **options) }
- it 'delegates to the Gitaly client' do
- expect(repository.gitaly_remote_client)
- .to receive(:update_remote_mirror)
- .with(ref_name, ['master'], ssh_key: 'KEY', known_hosts: 'KNOWN HOSTS', keep_divergent_refs: true)
+ shared_examples 'an update' do
+ it 'delegates to the Gitaly client' do
+ expect(repository.gitaly_remote_client)
+ .to receive(:update_remote_mirror)
+ .with(ref_name, url, ['master'], ssh_key: 'KEY', known_hosts: 'KNOWN HOSTS', keep_divergent_refs: true)
+
+ remote_mirror.update # rubocop:disable Rails/SaveBang
+ end
+ end
+
+ context 'with url' do
+ it_behaves_like 'an update'
+ end
+
+ context 'without url' do
+ let(:url) { nil }
- remote_mirror.update # rubocop:disable Rails/SaveBang
+ it_behaves_like 'an update'
end
it 'wraps gitaly errors' do