Forum: Ruby on Rails functional test problem

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Scott N. (Guest)
on 2006-02-09 01:00
I am trying to write a test for my delete method.

I find a User in the db by its id, do the delete action, then I want to
see if it is still in the db.

How do I check that the User IS Deleted without causing errors?

** My Test ********************************
  def test_delete_user
    login
    user = User.find(2)
    post :delete_user, {:id => user.id}
    assert_equal "User deleted", flash[:notice]
    assert_nil    User.find(2)
    assert_redirected_to :action => 'manage_users'
  end
** The Error *******************************
  1) Error:
test_delete_user(AdminControllerTest):
ActiveRecord::RecordNotFound: Couldn't find User with ID=2
    c:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.13.2/lib/active_record/base.rb:412:in
`find'
    test/functional/admin_controller_test.rb:140:in `test_delete_user'

14 tests, 109 assertions, 0 failures, 1 errors
Bob S. (Guest)
on 2006-02-09 01:40
(Received via mailing list)
assert_raise(ActiveRecord::RecordNotFound) { User.find(user.id) }

Right from the AWDR book


Bob S.
http://www.railtie.net/
This topic is locked and can not be replied to.