sleepwalker
2010-Aug-30 14:36 UTC
[rspec-users] undefined method `route_for'' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:
Hello, all, I have this error with my rspec - controller - test, and
yes, I do found the thread with the same error here, but it isn''t
helped me, think it''s not my case.
i have rails -v = Rails 3.0.0.rc, rspec -v = 2.0.0.beta.18 (hope they
should match each other).
my test is here: spec/controllers/posts_controller_spec.rb and i ran
it with command: rspec spec/controllers/posts_controller_spec.rb.
after all, test is:
require ''spec_helper''
describe PostsController do
render_views
describe "route generation" do
it "should be successful" do
@post = Post.new(:title => ''blalbla'', :name =>
''adfsdfsdf'')
@post.save
route_for(:controller => "posts", :action =>
"show", :id =>
@post.id, :method => ''GET'').should ==
"/posts/show" + @post.id.to_s
end
end
end
I have Post model and it works just fine (rspec tested fine as well).
And the route is (from rake routes):
GET /posts/:id(.:format)
{:controller=>"posts", :action=>"show"}
Can anybody tell me, where the things going wrong for a such answer
(undefined method...) Thanks!
David Chelimsky
2010-Aug-30 23:49 UTC
[rspec-users] undefined method `route_for'' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:
On Aug 30, 2010, at 9:36 AM, sleepwalker wrote:> Hello, all, I have this error with my rspec - controller - test, and > yes, I do found the thread with the same error here, but it isn''t > helped me, think it''s not my case. > > i have rails -v = Rails 3.0.0.rc, rspec -v = 2.0.0.beta.18 (hope they > should match each other). > > my test is here: spec/controllers/posts_controller_spec.rb and i ran > it with command: rspec spec/controllers/posts_controller_spec.rb. > > after all, test is: > > require ''spec_helper'' > > describe PostsController do > render_views > describe "route generation" do > > it "should be successful" do > @post = Post.new(:title => ''blalbla'', :name => ''adfsdfsdf'') > @post.save > route_for(:controller => "posts", :action => "show", :id => > @post.id, :method => ''GET'').should == "/posts/show" + @post.id.to_s > end > end > end > > I have Post model and it works just fine (rspec tested fine as well). > And the route is (from rake routes): > GET /posts/:id(.:format) > {:controller=>"posts", :action=>"show"} > > Can anybody tell me, where the things going wrong for a such answer > (undefined method...) Thanks!route_for is gone See the section on Routing specs on http://github.com/rspec/rspec-rails for how to do routing specs. I''ll add a note that route_for is gone. Cheers, David