Process personalization tags in rendered subject
[MAILPOET-6385]
This commit is contained in:
@@ -5,6 +5,8 @@ namespace MailPoet\API\JSON\ResponseBuilders;
|
||||
use Codeception\Util\Stub;
|
||||
use MailPoet\DI\ContainerWrapper;
|
||||
use MailPoet\Entities\NewsletterEntity;
|
||||
use MailPoet\Entities\ScheduledTaskEntity;
|
||||
use MailPoet\Entities\SendingQueueEntity;
|
||||
use MailPoet\Logging\LogRepository;
|
||||
use MailPoet\Newsletter\NewslettersRepository;
|
||||
use MailPoet\Newsletter\Sending\SendingQueuesRepository;
|
||||
@@ -75,4 +77,23 @@ class NewslettersResponseBuilderTest extends \MailPoetTest {
|
||||
$response = $responseBuilder->buildForListing([$newsletter]);
|
||||
verify($response[0]['subject'])->equals('Hello [mailpoet/subscriber-firstname default="subscriber"]!');
|
||||
}
|
||||
|
||||
public function testItReplacesPersonalizationTagsInSentEmail() {
|
||||
$em = $this->diContainer->get(EntityManager::class);
|
||||
$responseBuilder = $this->diContainer->get(NewslettersResponseBuilder::class);
|
||||
$em->persist($newsletter = new NewsletterEntity);
|
||||
$newsletter->setType(NewsletterEntity::TYPE_STANDARD);
|
||||
$newsletter->setStatus(NewsletterEntity::STATUS_SENT);
|
||||
$newsletter->setSubject('Subject');
|
||||
$em->persist($task = new ScheduledTaskEntity());
|
||||
$em->persist($queue = new SendingQueueEntity());
|
||||
$queue->setNewsletter($newsletter);
|
||||
$queue->setTask($task);
|
||||
$queue->setNewsletterRenderedSubject('Hello <!--[mailpoet/subscriber-firstname default="subscriber"]-->!');
|
||||
$em->flush();
|
||||
$response = $responseBuilder->buildForListing([$newsletter]);
|
||||
/** @var string[] $renderedQueue */
|
||||
$renderedQueue = $response[0]['queue'];
|
||||
verify($renderedQueue['newsletter_rendered_subject'])->equals('Hello [mailpoet/subscriber-firstname default="subscriber"]!');
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user