Guest User

Untitled

a guest
Mar 6th, 2018
287
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.11 KB | None | 0 0
  1. require File.dirname(__FILE__) + '/../test_helper'
  2.  
  3. class UserTest < Test::Unit::TestCase
  4.  
  5. fixtures :users
  6.  
  7. def test_should_create_user
  8. assert_difference User, :count do
  9. user = create_user
  10. assert !user.new_record?, "#{user.errors.full_messages.to_sentence}"
  11. end
  12. end
  13.  
  14. def test_should_require_login
  15. assert_no_difference User, :count do
  16. u = create_user(:login => nil)
  17. assert u.errors.on(:login)
  18. end
  19. end
  20.  
  21. def test_should_require_password
  22. assert_no_difference User, :count do
  23. u = create_user(:password => nil)
  24. assert u.errors.on(:password)
  25. end
  26. end
  27.  
  28. def test_should_require_password_confirmation
  29. assert_no_difference User, :count do
  30. u = create_user(:password_confirmation => nil)
  31. assert u.errors.on(:password_confirmation)
  32. end
  33. end
  34.  
  35. def test_should_require_email
  36. assert_no_difference User, :count do
  37. u = create_user(:email => nil)
  38. assert u.errors.on(:email)
  39. end
  40. end
  41.  
  42. def test_should_reset_password
  43. users(:quentin).update_attributes(:password => 'new password', :password_confirmation => 'new password')
  44. assert_equal users(:quentin), User.authenticate('quentin', 'new password')
  45. end
  46.  
  47. def test_should_not_rehash_password
  48. users(:quentin).update_attributes(:login => 'quentin2')
  49. assert_equal users(:quentin), User.authenticate('quentin2', 'test')
  50. end
  51.  
  52. def test_should_authenticate_user
  53. assert_equal users(:quentin), User.authenticate('quentin', 'test')
  54. end
  55.  
  56. def test_should_set_remember_token
  57. users(:quentin).remember_me
  58. assert_not_nil users(:quentin).remember_token
  59. assert_not_nil users(:quentin).remember_token_expires_at
  60. end
  61.  
  62. def test_should_unset_remember_token
  63. users(:quentin).remember_me
  64. assert_not_nil users(:quentin).remember_token
  65. users(:quentin).forget_me
  66. assert_nil users(:quentin).remember_token
  67. end
  68.  
  69. protected
  70. def create_user(options = {})
  71. User.create({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options))
  72. end
  73. end
Add Comment
Please, Sign In to add comment