/** * Create message with HTML and TEXT body from template HTMl and TEXT fields * using a text and a html layout */ public function testMessageWithTextAndHtmlBodyAndTextAndHtmlLayoutAndTextAndHtmlTemplateWichExtendsLayout() { $message = new ModelMessage(); $message->setLocale('fr_FR'); $message->setSubject("The subject"); $message->setTextMessage("The TEXT content"); $message->setHtmlMessage("The HTML content"); $message->setTextTemplateFileName('template5-text.txt'); $message->setHtmlTemplateFileName('template5-html.html'); //$message->setHtmlLayoutFileName('layout5.html.tpl'); //$message->setTextLayoutFileName('layout5.text.tpl'); $path = TemplateHelper::getInstance()->getActiveMailTemplate()->getAbsolutePath(); $this->parser->assign('myvar', 'my-value'); file_put_contents($path . DS . 'layout5.html.tpl', 'HTML Layout 5: {block name="message-body"}{$message_body nofilter}{/block}'); file_put_contents($path . DS . 'layout5.text.tpl', 'TEXT Layout 5: {block name="message-body"}{$message_body nofilter}{/block}'); file_put_contents($path . DS . 'template5-html.html', '{extends file="layout5.html.tpl"}{block name="message-body"}HTML <template> & content v={$myvar}{/block}'); file_put_contents($path . DS . 'template5-text.txt', '{extends file="layout5.text.tpl"}{block name="message-body"}TEXT <template> & content v={$myvar}{/block}'); $instance = \Swift_Message::newInstance(); $message->buildMessage($this->parser, $instance); $this->assertEquals("The subject", $instance->getSubject()); $this->assertEquals("HTML Layout 5: HTML <template> & content v=my-value", $instance->getBody()); $this->assertEquals("TEXT Layout 5: TEXT <template> & content v=my-value", $instance->getChildren()[0]->getBody()); }