Guest User

Untitled

a guest
Apr 15th, 2018
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.55 KB | None | 0 0
  1. require File.dirname(__FILE__) + '/../test_helper'
  2. require 'users_controller'
  3.  
  4. # Re-raise errors caught by the controller.
  5. class UsersController; def rescue_action(e) raise e end; end
  6.  
  7. class UsersControllerTest < Test::Unit::TestCase
  8. # Be sure to include AuthenticatedTestHelper in test/test_helper.rb instead
  9. # Then, you can remove it from this and the units test.
  10. include AuthenticatedTestHelper
  11.  
  12. fixtures :users
  13.  
  14. def setup
  15. @controller = UsersController.new
  16. @request = ActionController::TestRequest.new
  17. @response = ActionController::TestResponse.new
  18. end
  19.  
  20. def test_should_allow_signup
  21. assert_difference 'User.count' do
  22. create_user
  23. assert_response :redirect
  24. end
  25. end
  26.  
  27. def test_should_require_login_on_signup
  28. assert_no_difference 'User.count' do
  29. create_user(:login => nil)
  30. assert assigns(:user).errors.on(:login)
  31. assert_response :success
  32. end
  33. end
  34.  
  35. def test_should_require_password_on_signup
  36. assert_no_difference 'User.count' do
  37. create_user(:password => nil)
  38. assert assigns(:user).errors.on(:password)
  39. assert_response :success
  40. end
  41. end
  42.  
  43. def test_should_require_password_confirmation_on_signup
  44. assert_no_difference 'User.count' do
  45. create_user(:password_confirmation => nil)
  46. assert assigns(:user).errors.on(:password_confirmation)
  47. assert_response :success
  48. end
  49. end
  50.  
  51. def test_should_require_email_on_signup
  52. assert_no_difference 'User.count' do
  53. create_user(:email => nil)
  54. assert assigns(:user).errors.on(:email)
  55. assert_response :success
  56. end
  57. end
  58.  
  59. def test_should_activate_user
  60. assert_nil User.authenticate('aaron', 'test')
  61. get :activate, :activation_code => users(:aaron).activation_code
  62. assert_redirected_to '/'
  63. assert_not_nil flash[:notice]
  64. assert_equal users(:aaron), User.authenticate('aaron', 'test')
  65. end
  66.  
  67. def test_should_not_activate_user_without_key
  68. get :activate
  69. assert_nil flash[:notice]
  70. rescue ActionController::RoutingError
  71. # in the event your routes deny this, we'll just bow out gracefully.
  72. end
  73.  
  74. def test_should_not_activate_user_with_blank_key
  75. get :activate, :activation_code => ''
  76. assert_nil flash[:notice]
  77. rescue ActionController::RoutingError
  78. # well played, sir
  79. end
  80.  
  81. protected
  82. def create_user(options = {})
  83. post :create, :user => { :login => 'quire', :email => 'quire@example.com',
  84. :password => 'quire', :password_confirmation => 'quire' }.merge(options)
  85. end
  86. end
Add Comment
Please, Sign In to add comment