0
0
zero/spec/unit/renderer/read_template_path_spec.rb
Gibheer 43a6ada2ed now the renderer correctly saves all templates
Before this fix the renderer was not able to save the templates and
types in the correct way. It still needs some cleanup, but it works now.
2012-11-26 21:41:09 +01:00

43 lines
1.1 KiB
Ruby

require 'spec_helper'
describe Zero::Renderer, 'read_template_path!' do
subject { Zero::Renderer.new(template_path, type_map) }
let(:template_path) { 'foo' }
let(:file_list) { ['foo/welcome/index.html.erb'] }
before :each do
subject.stub(:search_files).and_return(file_list)
end
shared_examples_for 'a template loader' do
it 'creates a template tree' do
subject.read_template_path!
subject.templates['welcome/index'].should eq(result)
end
end
context 'without mapping' do
let(:type_map) { {} }
let(:result) { { 'html' => 'foo/welcome/index.html.erb' } }
it_behaves_like 'a template loader'
end
context 'with a single mapping' do
let(:type_map) { {'html' => 'text/html' } }
let(:result) { { 'text/html' => 'foo/welcome/index.html.erb' } }
it_behaves_like 'a template loader'
end
context 'with multiple mappings' do
let(:type_map) { {'html' => ['text/html', 'text/xml'] } }
let(:result) { {
'text/html' => 'foo/welcome/index.html.erb',
'text/xml' => 'foo/welcome/index.html.erb'
} }
it_behaves_like 'a template loader'
end
end