diff options
author | Nick Thomas <nick@gitlab.com> | 2018-04-03 20:57:55 +0300 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2018-04-19 19:25:01 +0300 |
commit | 672733aa66e371edc50f6d1c2467896c40ed9ac8 (patch) | |
tree | f7d5313ab03c496c74ca63a29f786d9db19f79b1 /spec/lib/gitlab/workhorse_spec.rb | |
parent | fb46dfb235f452333984891af5bb677f90faf174 (diff) |
Add an API endpoint to download git repository snapshots
Diffstat (limited to 'spec/lib/gitlab/workhorse_spec.rb')
-rw-r--r-- | spec/lib/gitlab/workhorse_spec.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/spec/lib/gitlab/workhorse_spec.rb b/spec/lib/gitlab/workhorse_spec.rb index d64ea72e346..e732b089d44 100644 --- a/spec/lib/gitlab/workhorse_spec.rb +++ b/spec/lib/gitlab/workhorse_spec.rb @@ -482,4 +482,26 @@ describe Gitlab::Workhorse do }.deep_stringify_keys) end end + + describe '.send_git_snapshot' do + let(:url) { 'http://example.com' } + + subject(:request) { described_class.send_git_snapshot(repository) } + + it 'sets the header correctly' do + key, command, params = decode_workhorse_header(request) + + expect(key).to eq("Gitlab-Workhorse-Send-Data") + expect(command).to eq('git-snapshot') + expect(params).to eq( + 'GitalyServer' => { + 'address' => Gitlab::GitalyClient.address(project.repository_storage), + 'token' => Gitlab::GitalyClient.token(project.repository_storage) + }, + 'GetSnapshotRequest' => Gitaly::GetSnapshotRequest.new( + repository: repository.gitaly_repository + ).to_json + ) + end + end end |