mirror of
https://github.com/werkraum-media/events.git
synced 2024-11-25 08:16:10 +01:00
Daniel Siepmann
cb50981a2b
* Add dependency. * Remove empty tearDown() methods. * Fix signature of setUp() to be compatible with recent phpunit. * Temporary fix syntax issues in test files Relates: #8092
63 lines
1.9 KiB
PHP
63 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace Wrm\Events\Tests\Unit\Controller;
|
|
|
|
/**
|
|
* Test case.
|
|
*
|
|
* @author Dirk Koritnik <koritnik@werkraum-media.de>
|
|
*/
|
|
class EventControllerTest extends \TYPO3\TestingFramework\Core\Unit\UnitTestCase
|
|
{
|
|
/**
|
|
* @var \Wrm\Events\Controller\EventController
|
|
*/
|
|
protected $subject = null;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
parent::setUp();
|
|
$this->subject = $this->getMockBuilder(\Wrm\Events\Controller\EventController::class)
|
|
->setMethods(['redirect', 'forward', 'addFlashMessage'])
|
|
->disableOriginalConstructor()
|
|
->getMock();
|
|
}
|
|
|
|
/**
|
|
* @test
|
|
*/
|
|
public function listActionFetchesAllEventsFromRepositoryAndAssignsThemToView()
|
|
{
|
|
|
|
$allEvents = $this->getMockBuilder(\TYPO3\CMS\Extbase\Persistence\ObjectStorage::class)
|
|
->disableOriginalConstructor()
|
|
->getMock();
|
|
|
|
// $eventRepository = $this->getMockBuilder(\::class)
|
|
// ->setMethods(['findAll'])
|
|
// ->disableOriginalConstructor()
|
|
// ->getMock();
|
|
$eventRepository->expects(self::once())->method('findAll')->will(self::returnValue($allEvents));
|
|
$this->inject($this->subject, 'eventRepository', $eventRepository);
|
|
|
|
$view = $this->getMockBuilder(\TYPO3\CMS\Extbase\Mvc\View\ViewInterface::class)->getMock();
|
|
$view->expects(self::once())->method('assign')->with('events', $allEvents);
|
|
$this->inject($this->subject, 'view', $view);
|
|
|
|
$this->subject->listAction();
|
|
}
|
|
|
|
/**
|
|
* @test
|
|
*/
|
|
public function showActionAssignsTheGivenEventToView()
|
|
{
|
|
$event = new \Wrm\Events\Domain\Model\Event();
|
|
|
|
$view = $this->getMockBuilder(\TYPO3\CMS\Extbase\Mvc\View\ViewInterface::class)->getMock();
|
|
$this->inject($this->subject, 'view', $view);
|
|
$view->expects(self::once())->method('assign')->with('event', $event);
|
|
|
|
$this->subject->showAction($event);
|
|
}
|
|
}
|