TYPO3 CMS  TYPO3_7-6
FlashMessagesViewHelperTest.php
Go to the documentation of this file.
1 <?php
3 
4 /* *
5  * This script is backported from the TYPO3 Flow package "TYPO3.Fluid". *
6  * *
7  * It is free software; you can redistribute it and/or modify it under *
8  * the terms of the GNU Lesser General Public License, either version 3 *
9  * of the License, or (at your option) any later version. *
10  * *
11  * The TYPO3 project - inspiring people to share! *
12  * */
13 
18 {
22  protected $viewHelper;
23 
27  protected $mockTagBuilder;
28 
33 
39  protected function setUp()
40  {
42  $mockFlashMessagingQueue = $this->getMock(\TYPO3\CMS\Core\Messaging\FlashMessageQueue::class, ['getAllMessagesAndFlush'], ['foo']);
43  $mockFlashMessagingQueue->expects($this->once())->method('getAllMessagesAndFlush')->will($this->returnValue([]));
44  $this->mockFlashMessagingQueue = $mockFlashMessagingQueue;
45 
46  $mockControllerContext = $this->getMock(\TYPO3\CMS\Extbase\Mvc\Controller\ControllerContext::class, [], [], '', false);
47  $mockControllerContext->expects($this->any())->method('getFlashMessageQueue')->will($this->returnValue($mockFlashMessagingQueue));
48 
49  $this->mockTagBuilder = $this->getMock(\TYPO3\CMS\Fluid\Core\ViewHelper\TagBuilder::class);
50  $this->viewHelper = $this->getAccessibleMock(\TYPO3\CMS\Fluid\ViewHelpers\FlashMessagesViewHelper::class, ['dummy']);
51  $this->viewHelper->_set('controllerContext', $mockControllerContext);
52  $this->viewHelper->_set('tag', $this->mockTagBuilder);
53  $this->viewHelper->initialize();
54  }
55 
60  {
61  $this->assertEmpty($this->viewHelper->render());
62  }
63 
68  {
69  $queueIdentifier = 'myQueue';
70 
71  $mockControllerContext = $this->getMock(\TYPO3\CMS\Extbase\Mvc\Controller\ControllerContext::class, [], [], '', false);
72  $mockControllerContext->expects($this->once())->method('getFlashMessageQueue')->with($queueIdentifier)->will($this->returnValue($this->mockFlashMessagingQueue));
73 
74  $this->viewHelper->_set('controllerContext', $mockControllerContext);
75  $this->viewHelper->setArguments(['queueIdentifier' => $queueIdentifier]);
76 
77  $this->assertEmpty($this->viewHelper->render());
78  }
79 }
getAccessibleMock( $originalClassName, $methods=[], array $arguments=[], $mockClassName='', $callOriginalConstructor=true, $callOriginalClone=true, $callAutoload=true)