tester->haveFixtures([ 'user' => [ 'class' => UserFixture::class, 'dataFile' => codecept_data_dir() . 'user.php' ] ]); } public function testWrongEmailAddress() { $model = new ResendVerificationEmailForm(); $model->attributes = [ 'email' => 'aaa@bbb.cc' ]; verify($model->validate())->false(); verify($model->hasErrors())->true(); verify($model->getFirstError('email'))->equals('There is no user with this email address.'); } public function testEmptyEmailAddress() { $model = new ResendVerificationEmailForm(); $model->attributes = [ 'email' => '' ]; verify($model->validate())->false(); verify($model->hasErrors())->true(); verify($model->getFirstError('email'))->equals('Email cannot be blank.'); } public function testResendToActiveUser() { $model = new ResendVerificationEmailForm(); $model->attributes = [ 'email' => 'test2@mail.com' ]; verify($model->validate())->false(); verify($model->hasErrors())->true(); verify($model->getFirstError('email'))->equals('There is no user with this email address.'); } public function testSuccessfullyResend() { $model = new ResendVerificationEmailForm(); $model->attributes = [ 'email' => 'test@mail.com' ]; verify($model->validate())->true(); verify($model->hasErrors())->false(); verify($model->sendEmail())->true(); $this->tester->seeEmailIsSent(); $mail = $this->tester->grabLastSentEmail(); verify($mail)->instanceOf('yii\mail\MessageInterface'); verify($mail->getTo())->arrayHasKey('test@mail.com'); verify($mail->getFrom())->arrayHasKey(\Yii::$app->params['supportEmail']); verify($mail->getSubject())->equals('Account registration at ' . \Yii::$app->name); verify($mail->toString())->stringContainsString('4ch0qbfhvWwkcuWqjN8SWRq72SOw1KYT_1548675330'); } }