Guest User

Untitled

a guest
Mar 2nd, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. describe UsersController do
  2. fixtures :users
  3. include UserSpecHelper
  4.  
  5. it 'allows signup' do
  6. lambda do
  7. create_user
  8. response.should be_redirect
  9. end.should change(User, :count).by(1)
  10. end
  11.  
  12. it 'requires login on signup' do
  13. lambda do
  14. create_user(:login => nil)
  15. assigns[:user].errors.on(:login).should_not be_nil
  16. response.should be_success
  17. end.should_not change(User, :count)
  18. end
  19.  
  20. it 'requires password on signup' do
  21. lambda do
  22. create_user(:password => nil)
  23. assigns[:user].errors.on(:password).should_not be_nil
  24. response.should be_success
  25. end.should_not change(User, :count)
  26. end
  27.  
  28. it 'requires password confirmation on signup' do
  29. lambda do
  30. create_user(:password_confirmation => nil)
  31. assigns[:user].errors.on(:password_confirmation).should_not be_nil
  32. response.should be_success
  33. end.should_not change(User, :count)
  34. end
  35.  
  36. it 'requires email on signup' do
  37. lambda do
  38. create_user(:email => nil)
  39. assigns[:user].errors.on(:email).should_not be_nil
  40. response.should be_success
  41. end.should_not change(User, :count)
  42. end
  43.  
  44. end
  45.  
  46. describe UsersController do
  47.  
  48. describe "Responding to GET New" do
  49.  
  50. it "should create an instance of User" do
  51. User.should_receive(:new).with(no_args()).and_return(mock_model(User))
  52. get :new
  53. response.should be_success
  54. end
  55.  
  56. end
  57.  
  58. describe "Responding to POST create" do
  59. include UserSpecHelper
  60.  
  61. before do
  62. @user = mock_model(User, :save => true, :to_param => "1")
  63. User.stub!(:new).and_return(@user)
  64. @user.errors.stub!(:empty?).with().and_return(true)
  65. @params = {'login' => 'quire', 'email' => 'quire@example.com',
  66. 'password' => 'quire69', 'password_confirmation' => 'quire69'}
  67. end
  68.  
  69. def do_post
  70. post :create, :user => @params
  71. end
  72.  
  73. it "should create a valid user user" do
  74. User.should_receive(:new).with(@params).and_return(@user)
  75. do_post
  76. end
  77.  
  78.  
  79. it "should redirect to the the user's portafolio" do
  80. @user.stub!(:portafolio)
  81. do_post
  82. p = Portafolio.find_by_user_id(@user.id)
  83. response.should redirect_to(portafolio_url(p.id))
  84. end
  85.  
  86. end
Add Comment
Please, Sign In to add comment