On 1 May 2011, at 18:29, Pablo L. de Miranda wrote: > I'm building a application using subdomains feature like basecamp. To > create the correct link reference I use a with_subdomain function whch > take the subdmain name and create a subdomain name like > subdomain.mydomain.com. > So to teste that a account information view have the link to right > domain I wrote the test above: > describe SubdomainController do > render_views > it "should have a link to subdomain" do > post :create, :subdomain => @attr > response.should have_selector('a', :href => > with_subdomain('test'), :content => with_subdomain('test')) > end > end > > But I get the error message below: > > NoMethodError: > undefined method `with_subdomain' for > #<RSpec::Core::ExampleGroup::Nested_5::Nested_2::Nested_2:0x8ebf124> > > And I included the url_helper that has the function on my > ApplicationController like this: > > class ApplicationController < ActionController::Base > include UrlHelper > > end > > So, if you have any idea what is wrong, where I miss, please help me.
You're calling the 'with_subdomain' method from within your spec file, but you haven't included the module it's defined in (UrlHelper) in your spec file. So, in the context of that spec, 'with_subdomain' is not defined -- the fact that you've included it in your ApplicationController class doesn't affect the code in the spec. As an aside, is this example intended to test that the 'with_subdomain' method is working correctly? Because it looks like you're specifying that "the output of with_subdomain should equal the output of with_subdomain", which will always pass, even if with_subdomain is actually outputting the wrong thing. That's fine if you're speccing with_subdomain elsewhere (i.e. in a helper spec), but I thought it was worth pointing out. Chris _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users