protected function processAutoresponderItemInQueue(AutoresponderItem $autoresponderItem) { AutoresponderItemsUtil::processDueAutoresponderItem($autoresponderItem); }
/** * @depends testProcessDueAutoresponderItemWithCustomFromAddressAndFromName */ public function testProcessDueAutoresponderItemWithValidMergeTags() { $email = new Email(); $email->emailAddress = '*****@*****.**'; $contact = ContactTestHelper::createContactByNameForOwner('contact 05', $this->user); $contact->primaryEmail = $email; $this->assertTrue($contact->save()); $marketingList = MarketingListTestHelper::createMarketingListByName('marketingList 05', 'description', 'CustomFromName', '*****@*****.**'); $autoresponder = AutoresponderTestHelper::createAutoresponder('autoresponder 05', 'subject 05', 'Dr. [[FIRST^NAME]] [[LAST^NAME]]', '<b>[[LAST^NAME]]</b>, [[FIRST^NAME]]', 1, Autoresponder::OPERATION_SUBSCRIBE, $marketingList); $processed = AutoresponderItem::NOT_PROCESSED; $processDateTime = DateTimeUtil::convertTimestampToDbFormatDateTime(time()); $autoresponderItem = AutoresponderItemTestHelper::createAutoresponderItem($processed, $processDateTime, $autoresponder, $contact); AutoresponderItemsUtil::processDueAutoresponderItem($autoresponderItem); $this->assertEquals(AutoresponderItem::PROCESSED, $autoresponderItem->processed); $emailMessage = $autoresponderItem->emailMessage; $this->assertEquals($marketingList->owner, $emailMessage->owner); $this->assertEquals($autoresponder->subject, $emailMessage->subject); $this->assertNotEquals($autoresponder->textContent, $emailMessage->content->textContent); $this->assertNotEquals($autoresponder->htmlContent, $emailMessage->content->htmlContent); $this->assertEquals('Dr. contact 05 contact 05son', $emailMessage->content->textContent); $this->assertEquals('<b>contact 05son</b>, contact 05', $emailMessage->content->htmlContent); $this->assertEquals($marketingList->fromAddress, $emailMessage->sender->fromAddress); $this->assertEquals($marketingList->fromName, $emailMessage->sender->fromName); $this->assertEquals(1, $emailMessage->recipients->count()); $recipients = $emailMessage->recipients; $this->assertEquals(strval($contact), $recipients[0]->toName); $this->assertEquals($email->emailAddress, $recipients[0]->toAddress); $this->assertEquals(EmailMessageRecipient::TYPE_TO, $recipients[0]->type); $this->assertEquals($contact, $recipients[0]->personOrAccount); }