use that looks incorrect the restful actions are actions like
show
index
create

etc etc

On Feb 7, 6:07 am, edward michaels <micah...@gmail.com> wrote:
> Thanks, you don't declare the restful routes in your controller
> though, right?  The error that I'm getting specifies that there is no
> 'show' action like this:
>
>        ActionController::RoutingError:
>        No route matches {:controller=>"users", :action=>"users/1"}
>
> So it's looking for a 'users/1' action but of course it's not going to
> find it in the controller.
>
> On Feb 6, 5:02 am, Peter Vandenabeele <pe...@vandenabeele.com> wrote:
>
>
>
>
>
>
>
> > On Mon, Feb 6, 2012 at 12:16 AM, edward michaels <micah...@gmail.com> wrote:
> > > Hi all,
>
> > > I'm trying to test that my users show page renders.  The resource has
> > > the route /users/:id
>
> > > How would I code that for an Rspec test?  So far I've tried these four
> > > ways:
>
> > > it "should have a users show path" do
> > >  get user_path(:action => 'show')
> > > end
>
> > > it "should have a users show path" do
> > >  get user_show_path
> > > end
>
> > > it "should have a users show path" do
> > >  get user_path(:id => '1')
> > > end
>
> > This variant worked on my side:
>
> > ../spec/requests$ vim orders_spec.rb
> > describe "Orders" do
> > ...
> >    describe "GET /order/id" do
> >     it "routes to a show order" do
> >       get order_path(:id => "abc123")
> >       response.status.should be(200)
> >     end
> >   end
>
> > Passes when that order is in the test db and fails with
> > ActiveRecord::RecordNotFound when I change
> > the id to a non-present value, so that seems correct.
> > I have the record in the test db at the time of executing
> > this test.
>
> > But I keep getting a RoutingError from Rspec even though it renders ok
>
> > > when I just go to the page.  So how would I spec it?  Thanks
>
> > Maybe just try to log the result of
>
> >  user_path(:id => '1')
> >  user_path(:id => 1)
>
> > in your controller, to see what it gives there?
>
> > In the controller under test I added:
>
> >   Rails.logger.debug order_path(:id => 'adsfadf1')
>
> > and this yields in the log:
>
> >   /orders/adsfadf1
>
> > Do the standard request tests that are built by rspec-rails
> > in the spec/requests/ directory upon `rails g scaffold` function
> > correctly?
>
> > HTH,
>
> > Peter

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to