Не отрабатывает seeEmailIsSent() и grabLastSentEmail()

Всё про тестирование в Yii 2.0
Ответить
vanookay
Сообщения: 15
Зарегистрирован: 2020.02.26, 21:27

Не отрабатывает seeEmailIsSent() и grabLastSentEmail()

Сообщение vanookay »

При использовании $this->tester->seeEmailIsSent() в консоли Failure, также и в других тестах, где присутствует seeEmailIsSent()

Код: Выделить всё

1) ContactFormTest: Send email
 Test  tests\unit\models\ContactFormTest.php:testSendEmail
emails were sent
Failed asserting that an array is not empty.
#1  Codeception\Module\Yii2->seeEmailIsSent
#2  C:\OSPanel\domains\sphere\sphere\frontend\tests\_support\_generated\UnitTesterActions.php:240
#3  C:\OSPanel\domains\sphere\sphere\frontend\tests\unit\models\ContactFormTest.php:28

FAILURES!
Tests: 1, Assertions: 2, Failures: 1.

Код: Выделить всё

class ContactFormTest extends \Codeception\Test\Unit
{
    /** @var UnitTester $tester */
    protected $tester;

    public function testSendEmail()
    {
        $model = new ContactForm();

        $model->attributes = [
            'name' => 'Tester',
            'email' => 'realmail@mail.ru',
            'subject' => 'very important letter subject',
            'body' => 'body of current message',
            'verifyCode' => 'testme',
        ];

        expect_that($model->sendEmail('realmail@mail.ru'));

        // using Yii2 module actions to check email was sent
       $this->tester->seeEmailIsSent();
   }
} 
Сообщение локально сохраняется (соответственно отправляется), метод $model->sendEmail отрабатывает
Куда копать?

Ответить