Use `response.should render_template("main")` to set assertion on template that should be rendered for an action. If it fails it will print you the list of templates that got actually rendered.
Also I guess you should show us your PagesController#main action, seems like what you get there is an empty response rendered with default views/layout/application.html.erb layout. On Mon, Nov 1, 2010 at 4:14 AM, Curious Yogurt <starempireel...@gmail.com> wrote: > I'm using Rails 3.0.1, RSpec-Rails 2.0.1 and Webrat 0.7.1. I have the > following test: > > describe PagesController do > describe "GET 'main'" do > it "should have the right title" do > get 'main' > response.should have_selector("title", :content => "My title") > end > end > end > > The HTML of pages#main checks out: it contains My Title. When I run > rspec, it gives me a failure on this test, and says it expects to find > the tag in the following line: > > <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http:// > www.w3.org/TR/REC-html40/loose.dtd"> > > Since this is not the file stored at pages#main, I take it that rspec > is, for some reason, loading the wrong page. How do I solve this? Or, > failing a general solution, how can I get rspec to tell me which page > it is trying to load, so that I can try to figure out why it is going > to this other page? Thanks. > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users