2019-05-18 00:54:41 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2017-09-10 17:25:29 +05:30
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe BlobViewer::Readme do
|
|
|
|
include FakeBlobHelpers
|
|
|
|
|
2018-10-15 14:42:47 +05:30
|
|
|
let(:project) { create(:project, :repository, :wiki_repo) }
|
2017-09-10 17:25:29 +05:30
|
|
|
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
|
2018-03-17 18:26:18 +05:30
|
|
|
create(:wiki_page, wiki: project.wiki, attrs: { title: 'home', content: 'Home page' })
|
2017-09-10 17:25:29 +05:30
|
|
|
end
|
|
|
|
|
|
|
|
it 'returns nil' do
|
|
|
|
expect(subject.render_error).to be_nil
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|