diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2017-07-07 09:01:10 +0000 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2017-07-07 09:01:10 +0000 |
commit | bdc56348a585bab629c94b13ba990c03d0106a30 (patch) | |
tree | 6074a755732dd8e905e975d394069df7d3e429d6 /spec/models | |
parent | d206bb3e608885a91f97a7c35a8cd00c69aa6e54 (diff) | |
parent | d195db17e9ff62c3dbfb8ba03dacadf965b1fb8b (diff) | |
download | gitlab-ce-bdc56348a585bab629c94b13ba990c03d0106a30.tar.gz |
Merge branch 'dm-readme-auxiliary-blob-viewer-without-wiki' into 'master'
Don't show auxiliary blob viewer for README when there is no wiki
Closes #34732
See merge request !12689
Diffstat (limited to 'spec/models')
-rw-r--r-- | spec/models/blob_viewer/readme_spec.rb | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/spec/models/blob_viewer/readme_spec.rb b/spec/models/blob_viewer/readme_spec.rb new file mode 100644 index 00000000000..02679dbb544 --- /dev/null +++ b/spec/models/blob_viewer/readme_spec.rb @@ -0,0 +1,49 @@ +require 'spec_helper' + +describe BlobViewer::Readme, model: true do + include FakeBlobHelpers + + let(:project) { create(:project, :repository) } + let(:blob) { fake_blob(path: 'README.md') } + subject { described_class.new(blob) } + + describe '#render_error' do + context 'when there is no wiki' do + it 'returns :no_wiki' do + expect(subject.render_error).to eq(:no_wiki) + end + end + + context 'when there is an external wiki' do + before do + project.has_external_wiki = true + end + + it 'returns nil' do + expect(subject.render_error).to be_nil + end + end + + context 'when there is a local wiki' do + before do + project.wiki_enabled = true + end + + context 'when the wiki is empty' do + it 'returns :no_wiki' do + expect(subject.render_error).to eq(:no_wiki) + end + end + + context 'when the wiki is not empty' do + before do + WikiPages::CreateService.new(project, project.owner, title: 'home', content: 'Home page').execute + end + + it 'returns nil' do + expect(subject.render_error).to be_nil + end + end + end + end +end |