From 2c558846ec6aeb784f2774d675b876c198ee150a Mon Sep 17 00:00:00 2001 From: Stormwind Date: Sun, 6 Jan 2013 17:39:57 +0100 Subject: Kill all mutants in Zero::Renderer --- spec/unit/renderer/read_template_path_spec.rb | 15 ++++++++++++++- spec/unit/renderer/render_spec.rb | 6 +++++- spec/unit/renderer/type_map_spec.rb | 4 ++++ 3 files changed, 23 insertions(+), 2 deletions(-) (limited to 'spec/unit/renderer') diff --git a/spec/unit/renderer/read_template_path_spec.rb b/spec/unit/renderer/read_template_path_spec.rb index e025bb1..8655777 100644 --- a/spec/unit/renderer/read_template_path_spec.rb +++ b/spec/unit/renderer/read_template_path_spec.rb @@ -6,7 +6,13 @@ describe Zero::Renderer, 'read_template_path!' do let(:file_list) { ['foo/welcome/index.html.erb'] } before :each do - subject.stub(:search_files).and_return(file_list) + Dir.stub(:[]) do |arg| + if arg == 'foo/**/*.*' + file_list + else + [] + end + end end shared_examples_for 'a template loader' do @@ -50,4 +56,11 @@ describe Zero::Renderer, 'read_template_path!' do it_behaves_like 'a template loader' end + + it 'creates an empty templates list without templates in path' do + subject = Zero::Renderer.new("bar", {}) + subject.read_template_path! + + subject.templates.should eq({}) + end end diff --git a/spec/unit/renderer/render_spec.rb b/spec/unit/renderer/render_spec.rb index da5c333..30d2225 100644 --- a/spec/unit/renderer/render_spec.rb +++ b/spec/unit/renderer/render_spec.rb @@ -3,7 +3,6 @@ require 'spec_helper' describe Zero::Renderer, '#render' do subject { Zero::Renderer.new(template_path, type_map) } let(:template_path) { 'spec/fixtures/templates' } - let(:file_list) { ['./foo/welcome/index.html.erb'] } let(:type_map) {{ 'html' => ['text/html', 'text/xml', '*/*'], 'json' => ['application/json', 'plain/text'] @@ -47,4 +46,9 @@ describe Zero::Renderer, '#render' do "No template found for any of this types #{foo_types.join ', '}!" ) end + + it 'uses the context' do + subject.render('context', html_types, binding).should match('foo') + + end end diff --git a/spec/unit/renderer/type_map_spec.rb b/spec/unit/renderer/type_map_spec.rb index f0b86ad..290e579 100644 --- a/spec/unit/renderer/type_map_spec.rb +++ b/spec/unit/renderer/type_map_spec.rb @@ -6,4 +6,8 @@ describe Zero::Renderer, '#type_map' do let(:type_map) { {'html' => ['text/html']} } its(:type_map) { should be(type_map) } + + it 'returns an empty Hash, if type_map is not set while initialization' do + Zero::Renderer.new(template_path).type_map.should eq({}) + end end -- cgit v1.2.3-70-g09d2