diff options
author | Thibaut Girka <thib@sitedethib.com> | 2018-06-21 20:49:57 +0200 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2018-06-21 20:49:57 +0200 |
commit | ab5f450700085ce73621b28b813f2edc5f199785 (patch) | |
tree | 766214b52ed217903ae821285391f8e2d4b5f545 /spec/controllers/auth | |
parent | 26c20a4ec7868753b284670575f28f201a5cef9f (diff) | |
parent | 7f59206944193591d7aef5cbd73edc7f5303add7 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: app/models/user.rb Resolved by adding :default_language to user settings fields
Diffstat (limited to 'spec/controllers/auth')
-rw-r--r-- | spec/controllers/auth/confirmations_controller_spec.rb | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/spec/controllers/auth/confirmations_controller_spec.rb b/spec/controllers/auth/confirmations_controller_spec.rb index b3af5e0ec..35eed4f51 100644 --- a/spec/controllers/auth/confirmations_controller_spec.rb +++ b/spec/controllers/auth/confirmations_controller_spec.rb @@ -3,6 +3,8 @@ require 'rails_helper' describe Auth::ConfirmationsController, type: :controller do + render_views + describe 'GET #new' do it 'returns http success' do @request.env['devise.mapping'] = Devise.mappings[:user] @@ -48,4 +50,45 @@ describe Auth::ConfirmationsController, type: :controller do end end end + + describe 'GET #finish_signup' do + subject { get :finish_signup } + + let(:user) { Fabricate(:user) } + before do + sign_in user, scope: :user + @request.env['devise.mapping'] = Devise.mappings[:user] + end + + it 'renders finish_signup' do + is_expected.to render_template :finish_signup + expect(assigns(:user)).to have_attributes id: user.id + end + end + + describe 'PATCH #finish_signup' do + subject { patch :finish_signup, params: { user: { email: email }} } + + let(:user) { Fabricate(:user) } + before do + sign_in user, scope: :user + @request.env['devise.mapping'] = Devise.mappings[:user] + end + + context 'when email is valid' do + let(:email) { 'new_' + user.email } + + it 'redirects to root_path' do + is_expected.to redirect_to root_path + end + end + + context 'when email is invalid' do + let(:email) { '' } + + it 'renders finish_signup' do + is_expected.to render_template :finish_signup + end + end + end end |