From 7aa531ea7c9c8186d720e5c0a11d3e6120deca72 Mon Sep 17 00:00:00 2001 From: Martin-P Date: Fri, 4 Apr 2014 04:14:19 +0200 Subject: [PATCH] Fixed rebase conflicts, added same functionality to renderCurrent and added tests --- src/Helper/FlashMessenger.php | 8 ++-- test/Helper/FlashMessengerTest.php | 63 +++++++++++++++++++++++++++++- 2 files changed, 66 insertions(+), 5 deletions(-) diff --git a/src/Helper/FlashMessenger.php b/src/Helper/FlashMessenger.php index e3a5ba3e..f3cc2f27 100644 --- a/src/Helper/FlashMessenger.php +++ b/src/Helper/FlashMessenger.php @@ -110,7 +110,7 @@ public function render($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, arr { $flashMessenger = $this->getPluginFlashMessenger(); $messages = $flashMessenger->getMessagesFromNamespace($namespace); - return $this->renderMessages($namespace, $messages, $classes); + return $this->renderMessages($namespace, $messages, $classes, $autoEscape); } /** @@ -120,11 +120,11 @@ public function render($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, arr * @param array $classes * @return string */ - public function renderCurrent($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, array $classes = array()) + public function renderCurrent($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, array $classes = array(), $autoEscape = null) { $flashMessenger = $this->getPluginFlashMessenger(); $messages = $flashMessenger->getCurrentMessagesFromNamespace($namespace); - return $this->renderMessages($namespace, $messages, $classes); + return $this->renderMessages($namespace, $messages, $classes, $autoEscape); } /** @@ -134,7 +134,7 @@ public function renderCurrent($namespace = PluginFlashMessenger::NAMESPACE_DEFAU * @param array $classes * @return string */ - protected function renderMessages($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, array $messages = array(), array $classes = array()) + protected function renderMessages($namespace = PluginFlashMessenger::NAMESPACE_DEFAULT, array $messages = array(), array $classes = array(), $autoEscape = null) { // Prepare classes for opening tag if (empty($classes)) { diff --git a/test/Helper/FlashMessengerTest.php b/test/Helper/FlashMessengerTest.php index 844a596e..6be7d88e 100644 --- a/test/Helper/FlashMessengerTest.php +++ b/test/Helper/FlashMessengerTest.php @@ -454,10 +454,13 @@ public function testCanSetAutoEscape() $this->helper->setAutoEscape(false); $this->assertFalse($this->helper->getAutoEscape()); - $this->helper->SetAutoEscape(true); + $this->helper->setAutoEscape(true); $this->assertTrue($this->helper->getAutoEscape()); } + /** + * @covers Zend\View\Helper\FlashMessenger::render + */ public function testMessageIsEscapedByDefault() { $helper = new FlashMessenger; @@ -469,6 +472,9 @@ public function testMessageIsEscapedByDefault() $this->assertSame($displayAssertion, $display); } + /** + * @covers Zend\View\Helper\FlashMessenger::render + */ public function testMessageIsNotEscapedWhenAutoEscapeIsFalse() { $helper = new FlashMessenger; @@ -518,4 +524,59 @@ public function testRenderUsesCurrentAutoEscapeByDefault() $display = $this->helper->render(PluginFlashMessenger::NAMESPACE_DEFAULT); $this->assertSame($displayAssertion, $display); } + + /** + * @covers Zend\View\Helper\FlashMessenger::renderCurrent + */ + public function testCurrentMessageIsEscapedByDefault() + { + $this->helper->addMessage('Foo
bar'); + + $displayAssertion = ''; + $display = $this->helper->renderCurrent(PluginFlashMessenger::NAMESPACE_DEFAULT); + $this->assertSame($displayAssertion, $display); + } + + /** + * @covers Zend\View\Helper\FlashMessenger::renderCurrent + */ + public function testCurrentMessageIsNotEscapedWhenAutoEscapeIsFalse() + { + $this->helper->addMessage('Foo
bar'); + + $displayAssertion = ''; + $display = $this->helper->setAutoEscape(false) + ->renderCurrent(PluginFlashMessenger::NAMESPACE_DEFAULT); + $this->assertSame($displayAssertion, $display); + } + + /** + * @covers Zend\View\Helper\FlashMessenger::renderCurrent + */ + public function testCanSetAutoEscapeOnRenderCurrent() + { + $this->helper->addMessage('Foo
bar'); + + $displayAssertion = ''; + $display = $this->helper->renderCurrent(PluginFlashMessenger::NAMESPACE_DEFAULT, array(), false); + $this->assertSame($displayAssertion, $display); + } + + /** + * @covers Zend\View\Helper\FlashMessenger::renderCurrent + */ + public function testRenderCurrentUsesCurrentAutoEscapeByDefault() + { + $this->helper->addMessage('Foo
bar'); + + $this->helper->setAutoEscape(false); + $displayAssertion = ''; + $display = $this->helper->renderCurrent(PluginFlashMessenger::NAMESPACE_DEFAULT); + $this->assertSame($displayAssertion, $display); + + $this->helper->setAutoEscape(true); + $displayAssertion = ''; + $display = $this->helper->renderCurrent(PluginFlashMessenger::NAMESPACE_DEFAULT); + $this->assertSame($displayAssertion, $display); + } }