Mods-for-HESK-Netsyms/api/Tests/BusinessLogic/Emails/EmailSenderHelperTest.php

65 lines
1.8 KiB
PHP
Raw Normal View History

2017-03-02 22:05:28 -05:00
<?php
namespace BusinessLogic\Emails;
2017-03-03 22:05:41 -05:00
use BusinessLogic\Tickets\Ticket;
2017-03-02 22:05:28 -05:00
use PHPUnit\Framework\TestCase;
class EmailSenderHelperTest extends TestCase {
/**
* @var $emailTemplateParser \PHPUnit_Framework_MockObject_MockObject
*/
private $emailTemplateParser;
/**
* @var $basicEmailSender \PHPUnit_Framework_MockObject_MockObject
*/
private $basicEmailSender;
/**
* @var $mailgunEmailSender \PHPUnit_Framework_MockObject_MockObject
*/
private $mailgunEmailSender;
/**
* @var $emailSenderHelper EmailSenderHelper
*/
private $emailSenderHelper;
2017-03-03 22:05:41 -05:00
/**
* @var $heskSettings array
*/
private $heskSettings;
/**
* @var $modsForHeskSettings array
*/
private $modsForHeskSettings;
2017-03-02 22:05:28 -05:00
protected function setUp() {
$this->emailTemplateParser = $this->createMock(EmailTemplateParser::class);
$this->basicEmailSender = $this->createMock(BasicEmailSender::class);
$this->mailgunEmailSender = $this->createMock(MailgunEmailSender::class);
2017-03-03 22:05:41 -05:00
$this->heskSettings = array();
2017-03-02 22:05:28 -05:00
$this->emailSenderHelper = new EmailSenderHelper($this->emailTemplateParser, $this->basicEmailSender,
$this->mailgunEmailSender);
}
function testItParsesTheTemplateForTheTicket() {
2017-03-03 22:05:41 -05:00
//-- Arrange
$templateId = EmailTemplateRetriever::NEW_NOTE;
$languageCode = 'en';
$ticket = new Ticket();
//-- Assert
$this->emailTemplateParser->expects($this->once())
->method('getFormattedEmailForLanguage')
->with($templateId, $languageCode, $ticket, $this->heskSettings, $this->modsForHeskSettings);
2017-03-02 22:05:28 -05:00
2017-03-03 22:05:41 -05:00
//-- Act
$this->emailSenderHelper->sendEmailForTicket($templateId, $languageCode, $ticket, $this->heskSettings, $this->modsForHeskSettings);
2017-03-02 22:05:28 -05:00
}
}