Commit db35a3ae authored by Mark Chao's avatar Mark Chao

Fix migration when project repository is missing

The data migration looks for code owner file and errs
if repository is missing.
parent d7a3f875
...@@ -525,6 +525,8 @@ class Repository ...@@ -525,6 +525,8 @@ class Repository
# items is an Array like: [[oid, path], [oid1, path1]] # items is an Array like: [[oid, path], [oid1, path1]]
def blobs_at(items) def blobs_at(items)
return [] unless exists?
raw_repository.batch_blobs(items).map { |blob| Blob.decorate(blob, project) } raw_repository.batch_blobs(items).map { |blob| Blob.decorate(blob, project) }
end end
......
...@@ -1237,6 +1237,27 @@ describe Repository do ...@@ -1237,6 +1237,27 @@ describe Repository do
end end
end end
describe '#blobs_at' do
let(:empty_repository) { create(:project_empty_repo).repository }
it 'returns empty array for an empty repository' do
# rubocop:disable Style/WordArray
expect(empty_repository.blobs_at(['master', 'foobar'])).to eq([])
# rubocop:enable Style/WordArray
end
it 'returns blob array for a non-empty repository' do
repository.create_file(User.last, 'foobar', 'CONTENT', message: 'message', branch_name: 'master')
# rubocop:disable Style/WordArray
blobs = repository.blobs_at([['master', 'foobar']])
# rubocop:enable Style/WordArray
expect(blobs.first.name).to eq('foobar')
expect(blobs.size).to eq(1)
end
end
describe '#root_ref' do describe '#root_ref' do
it 'returns a branch name' do it 'returns a branch name' do
expect(repository.root_ref).to be_an_instance_of(String) expect(repository.root_ref).to be_an_instance_of(String)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment