public function testSuccess() { $user = $this->tester->grabFixture('user', 'user-1'); $form = new ResetPasswordForm(); $form->password = '******'; expect_that($form->validateToken($user->password_reset_token)); expect_that($form->resetPassword()); $user = User::findByEmail($user->email); expect($user->password_reset_token)->isEmpty(); expect_that($user->validatePassword('password-new')); }
public function actionResetPassword($token) { $model = new ResetPasswordForm(); if (!$model->validateToken($token)) { Yii::$app->session->setFlash('error', Yii::t('app.messages', 'Invalid link for reset password')); return $this->goHome(); } if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) { Yii::$app->session->setFlash('success', Yii::t('app', 'New password was saved')); return $this->goHome(); } return $this->render('resetPassword', ['model' => $model]); }