diff --git a/app/controllers/activation_resends_controller.rb b/app/controllers/activation_resends_controller.rb index 64bb25d79..ac523d8a0 100644 --- a/app/controllers/activation_resends_controller.rb +++ b/app/controllers/activation_resends_controller.rb @@ -17,20 +17,19 @@ def create private def prevent_email_delivery_for_active_account - redirect_to new_session_path, notice: t('.already_active') if @account.access.activated? + redirect_to root_path, notice: t('activation_resends.create.success') if @account.access.activated? end def prevent_email_delivery_for_recently_activated return unless @account.activation_resent_at && Time.current < @account.activation_resent_at.since(2.hours) - redirect_to root_path, flash: { success: t('.recently_activated') } + redirect_to root_path, notice: t('activation_resends.create.success') end def find_account_by_email @account = Account.find_by(email: params[:email]) return unless @account.nil? - @errors = t('.no_account') - render :new + redirect_to root_path, notice: t('.success') end end diff --git a/test/controllers/activation_resends_controller_test.rb b/test/controllers/activation_resends_controller_test.rb index 1fa62297a..8e7de9290 100644 --- a/test/controllers/activation_resends_controller_test.rb +++ b/test/controllers/activation_resends_controller_test.rb @@ -18,8 +18,8 @@ class ActivationResendsControllerTest < ActionController::TestCase post :create, params: { email: account.email } _(ActionMailer::Base.deliveries.count).must_equal before assert_response :redirect - assert_redirected_to new_session_path - _(flash[:notice]).must_equal I18n.t('activation_resends.create.already_active') + assert_redirected_to root_path + _(flash[:notice]).must_equal I18n.t('activation_resends.create.success') end it 'should not send email for recently activated account' do @@ -29,16 +29,16 @@ class ActivationResendsControllerTest < ActionController::TestCase _(ActionMailer::Base.deliveries.count).must_equal before assert_response :redirect assert_redirected_to root_path - _(flash[:success]).must_equal I18n.t('activation_resends.create.recently_activated') + _(flash[:notice]).must_equal I18n.t('activation_resends.create.success') end - it 'Should not allow if email is invalid' do + it 'should not send email if account does not exist' do before = ActionMailer::Base.deliveries.count - post :create, params: { email: 'InvalidEmail' } + post :create, params: { email: 'nonexistent@example.com' } _(ActionMailer::Base.deliveries.count).must_equal before - assert_response :ok - assert_template :new - _(assigns(:errors)).must_equal I18n.t('activation_resends.create.no_account') + assert_response :redirect + assert_redirected_to root_path + _(flash[:notice]).must_equal I18n.t('activation_resends.create.success') end it 'should resend activation mail' do