/** * @param string $to * @param Template $template * @param array $data * @return Message */ public function assemble($to, Template $template, array $data) { $html = new MimePart($template->getBody($data)); $html->type = "text/html"; $body = new MimeMessage(); $body->addPart($html); $message = new Message(); $message->addFrom($this->config['from-email'], $this->config['from-name'])->addTo($to)->setSubject($template->getSubject())->setBody($body)->setEncoding("UTF-8"); return $message; }
public function testRender() { $renderer = $this->prophesize(RendererInterface::class); $layout = $this->prophesize(ViewModel::class); $templateId = 1; $templateConfig = ['subject' => 'Subject', 'template' => 'template/feedback-answer', 'layout' => 'default']; $template = new Template($templateId, $templateConfig, $renderer->reveal(), $layout->reveal()); $templateFile = "test template"; $renderer->render(Argument::type(ViewModel::class))->willReturn($templateFile); $output = $template->getBody([]); $this->assertEquals($templateFile, $output); }