Hello, I am trying to get going with development of view components with Rspec2 and Rails3. However, I make the following observation, and I don't understand what is going on, and how to fix this.
In my spec I define: describe "main/index.html.erb" do it "displays a photo url in products partial" do assign(:designs, [stub_model(Design, :name => "test", :photo => "photo_url")]) render rendered.should contain("photo_url") end end When I run: rspec spec/view/main_spec.rb I get this error: 1) main/index.html.erb displays a photo url in products partial Failure/Error: render ActionView::Template::Error: undefined method `photo' for nil:NilClass # ./app/views/main/_design.html.erb:3:in `_app_views_main__design_html_erb__2937334847274155273_2170841960__1566661024965846011' # ./app/views/main/index.html.erb:25:in `_app_views_main_index_html_erb__837234277009287876_2170861440__898201527838028543' # ./spec/views/main_spec.rb:7:in `block (2 levels) in <top (required)>' However, if I only 'access' a local photo object in my partial everything passes. This is: in _design.html.erb: <%= design %> ---> PASS <%= design.photo %> ---> FAIL In my view I call my partial as follows: main.html.erb <%= render "design", :locals => { :designs => @designs } %> What am I missing. Thank you for your help! _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users