1234567891011121314151617181920212223242526272829303132333435363738394041 |
- <?php
- namespace tests\unit\models;
- use app\models\ContactForm;
- use yii\mail\MessageInterface;
- class ContactFormTest extends \Codeception\Test\Unit
- {
- /**
- * @var \UnitTester
- */
- public $tester;
- public function testEmailIsSentOnContact()
- {
- $model = new ContactForm();
- $model->attributes = [
- 'name' => 'Tester',
- 'email' => 'tester@example.com',
- 'subject' => 'very important letter subject',
- 'body' => 'body of current message',
- 'verifyCode' => 'testme',
- ];
- expect_that($model->contact('admin@example.com'));
- // using Yii2 module actions to check email was sent
- $this->tester->seeEmailIsSent();
- /** @var MessageInterface $emailMessage */
- $emailMessage = $this->tester->grabLastSentEmail();
- expect('valid email is sent', $emailMessage)->isInstanceOf('yii\mail\MessageInterface');
- expect($emailMessage->getTo())->hasKey('admin@example.com');
- expect($emailMessage->getFrom())->hasKey('noreply@example.com');
- expect($emailMessage->getReplyTo())->hasKey('tester@example.com');
- expect($emailMessage->getSubject())->equals('very important letter subject');
- expect($emailMessage->toString())->stringContainsString('body of current message');
- }
- }
|