diff options
author | Douwe Maan <douwe@gitlab.com> | 2016-05-20 20:46:06 +0000 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2016-05-20 20:46:06 +0000 |
commit | 56eb42007ae8c3c390b35bf336884b3bad3591c5 (patch) | |
tree | 4ba6515145a3642112d5b349f51bb23d2fcb961c /spec | |
parent | f9cf65a6c4c8dfb94636f95fffa3ffa7176a31ef (diff) | |
parent | dec6b31c2772f7af792f7739b8b3b86a4dbd75db (diff) | |
download | gitlab-ce-56eb42007ae8c3c390b35bf336884b3bad3591c5.tar.gz |
Merge branch 'issue-17537-fix' into 'master'
Fix Error 500 when attempting to retrieve project license when HEAD points to non-existent ref
Closes #17537
See merge request !4151
Diffstat (limited to 'spec')
-rw-r--r-- | spec/models/repository_spec.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/spec/models/repository_spec.rb b/spec/models/repository_spec.rb index 7c94f3639d4..583151023b6 100644 --- a/spec/models/repository_spec.rb +++ b/spec/models/repository_spec.rb @@ -182,6 +182,15 @@ describe Repository, models: true do repository.remove_file(user, 'LICENSE', 'Remove LICENSE', 'master') end + it 'handles when HEAD points to non-existent ref' do + repository.commit_file(user, 'LICENSE', 'Copyright!', 'Add LICENSE', 'master', false) + rugged = double('rugged') + expect(rugged).to receive(:head_unborn?).and_return(true) + expect(repository).to receive(:rugged).and_return(rugged) + + expect(repository.license_blob).to be_nil + end + it 'looks in the root_ref only' do repository.remove_file(user, 'LICENSE', 'Remove LICENSE', 'markdown') repository.commit_file(user, 'LICENSE', Licensee::License.new('mit').content, 'Add LICENSE', 'markdown', false) @@ -210,6 +219,15 @@ describe Repository, models: true do repository.remove_file(user, 'LICENSE', 'Remove LICENSE', 'master') end + it 'handles when HEAD points to non-existent ref' do + repository.commit_file(user, 'LICENSE', 'Copyright!', 'Add LICENSE', 'master', false) + rugged = double('rugged') + expect(rugged).to receive(:head_unborn?).and_return(true) + expect(repository).to receive(:rugged).and_return(rugged) + + expect(repository.license_key).to be_nil + end + it 'returns nil when no license is detected' do expect(repository.license_key).to be_nil end |