<br><br><div><span class="gmail_quote">On 7/16/07, <b class="gmail_sendername">Daniel N</b> &lt;<a href="mailto:has.sox@gmail.com">has.sox@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br><div><div><span class="e" id="q_113ca3508c3ccbd6_1"><span class="gmail_quote">On 7/15/07, <b class="gmail_sendername">David Chelimsky</b> &lt;<a href="mailto:dchelimsky@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
dchelimsky@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 7/14/07, Daniel N &lt;<a href="mailto:has.sox@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">has.sox@gmail.com</a>&gt; wrote:<br>&gt;<br>&gt;<br>&gt; On 7/15/07, David Chelimsky &lt;
<a href="mailto:dchelimsky@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">dchelimsky@gmail.com</a>&gt; wrote:
<br>&gt; &gt; On 7/14/07, Daniel N &lt;<a href="mailto:has.sox@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">has.sox@gmail.com</a>&gt; wrote:<br>&gt; &gt; &gt; Hi,<br>&gt; &gt; &gt;<br>
&gt; &gt; &gt; I&#39;ve just started to try and spec my application.html.erb
 layout as one<br>&gt; of<br>&gt; &gt; &gt; the view specs but it totally barfs.<br>&gt; &gt; &gt;<br>&gt; &gt; &gt; I&#39;m guessing that it&#39;s due to the yield statements in the layout.<br>&gt; &gt; &gt;<br>&gt; &gt; &gt; Any clues as to how to proceed?
<br>&gt; &gt;<br>&gt; &gt; Backtrace please? Could be any number of things.<br>&gt; &gt;<br>&gt; &gt; &gt;<br>&gt;<br>&gt; Sorry,&nbsp;&nbsp;here it is<br>&gt;<br>&gt; ......rake aborted!<br>&gt; Command ruby<br>&gt; -I&quot;/Users/dneighman/Documents/Projects/rails_projects/update_to_clippings/vendor/plugins/rspec/lib&quot;
<br>&gt; &quot;/Users/dneighman/Documents/Projects/rails_projects/update_to_clippings/vendor/plugins/rspec/bin/spec&quot;<br>&gt; &quot;spec/controllers/books_controller_spec.rb&quot;<br>&gt; &quot;spec/controllers/sessions_controller_spec.rb&quot;
<br>&gt; &quot;spec/controllers/users_controller_spec.rb&quot;<br>&gt; &quot;spec/helpers/books_helper_spec.rb&quot;<br>&gt; &quot;spec/helpers/sessions_helper_spec.rb&quot;<br>&gt; &quot;spec/helpers/users_helper_spec.rb&quot;
<br>&gt; &quot;spec/models/book_spec.rb&quot;<br>&gt; &quot;spec/models/user_notifier_spec.rb&quot;<br>&gt; &quot;spec/models/user_spec.rb&quot;<br>&gt; &quot;spec/views/books/_detail.html.erb_spec.rb&quot;<br>&gt; &quot;spec/views/books/edit.html.erb_spec.rb&quot;
<br>&gt; &quot;spec/views/books/index.html.erb_spec.rb&quot;<br>&gt; &quot;spec/views/books/new.html.erb_spec.rb&quot;<br>&gt; &quot;spec/views/books/new_rjs.html.erb_spec.rb&quot;<br>&gt; &quot;spec/views/books/rjs_index.html.erb_spec.rb&quot;
<br>&gt; &quot;spec/views/books/show.html.erb_spec.rb&quot;<br>&gt; &quot;spec/views/layouts/application.html.erb_spec.rb&quot; --options<br>&gt; &quot;/Users/dneighman/Documents/Projects/rails_projects/update_to_clippings/spec/spec.opts&quot;
<br>&gt; failed<br>&gt; /Users/dneighman/Documents/Projects/rails_projects/update_to_clippings/vendor/plugins/rspec/lib/spec/rake/spectask.rb:166:in<br>&gt; `define&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3

/lib/rake.rb:823:in<br>&gt; `verbose&#39;<br>&gt; /Users/dneighman/Documents/Projects/rails_projects/update_to_clippings/vendor/plugins/rspec/lib/spec/rake/spectask.rb:138:in<br>&gt; `define&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-
0.7.3/lib/rake.rb:392:in<br>&gt; `call&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in<br>&gt; `execute&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in<br>&gt; `each&#39;
<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in<br>&gt; `execute&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:362:in<br>&gt; `invoke&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-
0.7.3/lib/rake.rb:355:in<br>&gt; `synchronize&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in<br>&gt; `invoke&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in<br>
&gt; `top_level&#39;
<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in<br>&gt; `each&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in<br>&gt; `top_level&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-
0.7.3/lib/rake.rb:1761:in<br>&gt; `standard_exception_handling&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1733:in<br>&gt; `top_level&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-<br>&gt; 
0.7.3/lib/rake.rb:1711:in `run&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1761:in<br>&gt; `standard_exception_handling&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1708:in
<br>&gt; `run&#39;<br>&gt; /usr/local/lib/ruby/gems/1.8/gems/rake- 0.7.3/bin/rake:7<br>&gt; /usr/local/bin/rake:16:in `load&#39;<br>&gt; /usr/local/bin/rake:16<br>&gt;<br>&gt; And the test is<br>&gt;<br>&gt; require File.dirname

(__FILE__) + &#39;/../../spec_helper&#39;<br>&gt;<br>&gt; describe &quot;/layouts/application.html.erb&quot; do<br>&gt;<br>&gt;&nbsp;&nbsp; it &quot;should render&quot; do<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; render &quot;/layouts/application.html.erb&quot;
<br>&gt;&nbsp;&nbsp; end<br>&gt;<br>&gt;<br>&gt; end<br><br>Thanks. Unfortunately there&#39;s nothing in that backtrace that talks<br>about application.html.erb. Would you please run this command and post<br>the result?<br><br>script/spec spec/views/layouts/application.html.erb -b
<br><br>Thanks,<br>David</blockquote></span></div><div><br>Hi David,<br><br>Very strange indeed.&nbsp; I had to change the command to&nbsp; <br>script/spec spec/views/layouts/application.html.erb_spec.rb -b<br><br>When I run this I get no errors at all.&nbsp; But I also get no output at all.
<br><br>When I run the focused example in Textmate it passes but there is no listing of the example in the output.&nbsp; This is the same as running the&nbsp; Behaviour Description <br><br>It also does not seem to fail anything.&nbsp; I ran the following
<br><br><blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;" class="gmail_quote">&nbsp; def do_render<span class="q"><br>&nbsp;&nbsp;&nbsp; render &quot;/layouts/application.html.erb&quot;
<br>&nbsp; end<br>
&nbsp; <br></span>&nbsp; it &quot;should render the template&quot; do<br>&nbsp;&nbsp;&nbsp; do_render<br>&nbsp;&nbsp;&nbsp; response.should have_tag(&quot;not_there_tag&quot;)<br>&nbsp;&nbsp;&nbsp; flunk<br>&nbsp; end</blockquote></div><br></div>This seems to pass everything.&nbsp; But when I run it with 
<br>rake spec I get the same error as before<br><br>In an attempt to see if it is running the template at all I put a dodgy method call in the template to try to crash it.&nbsp; It crashes.<br><br>Here&#39;s the stack trace<br>

<br>ActionView::TemplateError in &#39;/layouts/application.html.erb should render the template&#39;<br>undefined local variable or method `bad_method&#39; for #&lt;#&lt;Class:0x3344718&gt;:0x33446f0&gt;<br>On line #14 of app/views/layouts/application.html.erb
<br><br>&nbsp;&nbsp;&nbsp; 11:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;%= javascript_include_tag :defaults, &#39;lowpro&#39; -%&gt;<br>&nbsp;&nbsp;&nbsp; 12:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;%= stylesheet_link_tag &#39;common&#39; -%&gt;<br>&nbsp;&nbsp;&nbsp; 13:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;%= resource_on_demand %&gt;<br>&nbsp;&nbsp;&nbsp; 14:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;%= bad_method %&gt;
<br>&nbsp;&nbsp;&nbsp; 15: <br>&nbsp;&nbsp;&nbsp; 16: &lt;/head&gt;<br>&nbsp;&nbsp;&nbsp; 17: <br><br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/app/views//layouts/application.html.erb:14:in `_run_erb_47app47views47layouts47application46html46erb&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-
1.13.3.6752/lib/action_view/base.rb:346:in `send&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3.6752/lib/action_view/base.rb:346:in `compile_and_render_template&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-
1.13.3.6752/lib/action_view/base.rb:322:in `render_template_old&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/stable/lib/haml/template.rb:96:in `render_template&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3.6752

/lib/action_view/base.rb:282:in `render_file&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3.6752/lib/action_controller/base.rb:854:in `render_file&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-
1.13.3.6752/lib/action_controller/base.rb:789:in `render_with_no_layout&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3.6752/lib/action_controller/layout.rb:258:in `render_without_benchmark&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-
1.13.3.6752/lib/action_controller/benchmarking.rb:51:in `render&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3.6752/lib/action_controller/benchmarking.rb:51:in `render&#39;
<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/view.rb:55:in `send&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/view.rb:55:in `render&#39;<br>&nbsp;&nbsp;&nbsp; spec/views/layouts/application.html.erb_spec.rb:6:in `do_render&#39;
<br>&nbsp;&nbsp;&nbsp; spec/views/layouts/application.html.erb_spec.rb:10<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/example.rb:81:in `instance_eval&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/example.rb:81:in `run_example&#39;
<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/example.rb:26:in `run&#39;<br>&nbsp;&nbsp;&nbsp; /usr/local/lib/ruby/1.8/timeout.rb:48:in `timeout&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/example.rb:24:in `run&#39;
<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb:80:in `run&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb:74:in `each&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb:74:in `run&#39;
<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb:58:in `run_behaviours&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb:57:in `each&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb:57:in `run_behaviours&#39;
<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb:21:in `run&#39;<br>&nbsp;&nbsp;&nbsp; #{RAILS_ROOT}/vendor/plugins/rspec/lib/spec/runner/command_line.rb:17:in `run&#39;<br>&nbsp;&nbsp;&nbsp; script/spec:4<br><br>I&#39;ve changed to a haml template, and used the same spec but with a different
file (.haml) to render and it ran fine.&nbsp; Passes everything with complete
listings etc.<br><br>I really don&#39;t know what to make of it.<br><br>Cheers<br><span class="sg">Daniel</span></blockquote><div><br><br>David,<br><br>Thankyou for being so patient.&nbsp; I&#39;ve discovered the issue.&nbsp; I&#39;m basically re-writing my app as I port it over to specs from a nasty mix of units and various plugins.&nbsp; 
<br><br>During the move I&#39;ve started to test the application layout where it tries to render a parital that I haven&#39;t got yet.<br><br>Once I take the render :partial call out for the non existing partial, everything went back to normal.
<br><br>I hope I haven&#39;t wasted too much of your time.&nbsp; I&#39;m really sorry.<br><br>Cheers<br>Daniel<br></div><br></div><br>