From 2a1499479a4317b8cccf7f8c12804165f39675b5 Mon Sep 17 00:00:00 2001 From: Gibheer Date: Mon, 26 Nov 2012 20:07:37 +0100 Subject: specs for rendering --- spec/unit/renderer/render_spec.rb | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 spec/unit/renderer/render_spec.rb (limited to 'spec/unit/renderer') diff --git a/spec/unit/renderer/render_spec.rb b/spec/unit/renderer/render_spec.rb new file mode 100644 index 0000000..6bb7801 --- /dev/null +++ b/spec/unit/renderer/render_spec.rb @@ -0,0 +1,34 @@ +require 'spec_helper' + +describe Zero::Renderer, '#render' do + subject { Zero::Renderer.new(template_path) } + let(:template_path) { 'foo' } + let(:file_list) { ['./foo/welcome/index.html.erb'] } + + shared_examples_for 'the rendering' do + before :each do + subject.stub(:search_files).and_return(file_list) + subject.stub(:template).and_return(Tilt[:erb].new {template} ) + end + + it "renders the template" do + subject.render('welcome/index', 'text/html', binding).should eq(result) + end + end + + context 'a simple template' do + let(:template) { 'success' } + let(:binding) { Object.new } + let(:result) { template } + + it_behaves_like 'the rendering' + end + + context 'a complex template' do + let(:template) { 'success <%= name %>' } + let(:binding) { SpecTemplateContext.new('bar') } + let(:result) { 'success bar' } + + it_behaves_like 'the rendering' + end +end -- cgit v1.2.3-70-g09d2