Skip to content

Commit

Permalink
#73: add form and area tests
Browse files Browse the repository at this point in the history
  • Loading branch information
solverat committed Jan 6, 2019
1 parent 2b4dcfe commit a1bd4ef
Show file tree
Hide file tree
Showing 3 changed files with 96 additions and 5 deletions.
11 changes: 6 additions & 5 deletions tests/_support/Helper/PimcoreBackend.php
Original file line number Diff line number Diff line change
Expand Up @@ -138,10 +138,11 @@ public function seeDownload($fileName)
* @param Page $document
* @param null|Page $redirectAfterSuccessDocument
* @param null|Snippet $loginSnippet
* @param bool $hideAreaAfterLogin
*/
public function seeAMembersAreaElementPlacedOnDocument(Page $document, $redirectAfterSuccessDocument = null, $loginSnippet = null)
public function seeAMembersAreaElementPlacedOnDocument(Page $document, $redirectAfterSuccessDocument = null, $loginSnippet = null, $hideAreaAfterLogin = false)
{
$areaElement = $this->createMembersArea($redirectAfterSuccessDocument, $loginSnippet);
$areaElement = $this->createMembersArea($redirectAfterSuccessDocument, $loginSnippet, $hideAreaAfterLogin);
$document->setElements($areaElement);

try {
Expand Down Expand Up @@ -427,11 +428,11 @@ protected function generateEmailDocument($key = 'members-test-email', array $par
/**
* @param null|Page $redirectAfterSuccessDocument
* @param null|Snippet $loginSnippet
* @param bool $hideSnippetAfterLogin
* @param bool $hideAreaAfterLogin
*
* @return array
*/
protected function createMembersArea($redirectAfterSuccessDocument = null, $loginSnippet = null, $hideSnippetAfterLogin = false)
protected function createMembersArea($redirectAfterSuccessDocument = null, $loginSnippet = null, $hideAreaAfterLogin = false)
{
$blockArea = new Areablock();
$blockArea->setName(MembersHelper::AREA_TEST_NAMESPACE);
Expand All @@ -450,7 +451,7 @@ protected function createMembersArea($redirectAfterSuccessDocument = null, $logi

$hideWhenLoggedIn = new Checkbox();
$hideWhenLoggedIn->setName(sprintf('%s:1.hideWhenLoggedIn', MembersHelper::AREA_TEST_NAMESPACE));
$hideWhenLoggedIn->setDataFromEditmode($hideSnippetAfterLogin);
$hideWhenLoggedIn->setDataFromEditmode($hideAreaAfterLogin);

$showSnippedWhenLoggedIn = null;
if ($loginSnippet instanceof Snippet) {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<?php

namespace DachcomBundle\Test\unit\EventListener;

use MembersBundle\Event\FilterUserResponseEvent;
use MembersBundle\EventListener\AuthenticationListener;
use MembersBundle\MembersEvents;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Codeception\TestCase\Test;

class AuthenticationListenerTest extends Test
{
const FIREWALL_NAME = 'foo';

/**
* @var EventDispatcherInterface
*/
private $eventDispatcher;

/**
* @var FilterUserResponseEvent
*/
private $event;

/**
* @var AuthenticationListener
*/
private $listener;

public function setUp()
{
$user = $this->getMockBuilder('MembersBundle\Adapter\User\UserInterface')->getMock();
$response = $this->getMockBuilder('Symfony\Component\HttpFoundation\Response')->getMock();
$request = $this->getMockBuilder('Symfony\Component\HttpFoundation\Request')->getMock();

$this->event = new FilterUserResponseEvent($user, $request, $response);
$this->eventDispatcher = $this->getMockBuilder('Symfony\Component\EventDispatcher\EventDispatcher')->getMock();
$this->eventDispatcher
->expects($this->once())
->method('dispatch');

$loginManager = $this->getMockBuilder('MembersBundle\Manager\LoginManagerInterface')->getMock();
$this->listener = new AuthenticationListener($loginManager, self::FIREWALL_NAME);
}

public function testAuthenticate()
{
$this->listener->authenticate($this->event, MembersEvents::REGISTRATION_COMPLETED, $this->eventDispatcher);
}
}
40 changes: 40 additions & 0 deletions tests/bundle_tests/unit/EventListener/FlashListenerTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

namespace DachcomBundle\Test\unit\EventListener;

use MembersBundle\EventListener\FlashListener;
use MembersBundle\MembersEvents;
use PHPUnit\Framework\TestCase;
use Symfony\Component\EventDispatcher\Event;

class FlashListenerTest extends TestCase
{
/**
* @var Event
*/
private $event;

/**
* @var FlashListener
*/
private $listener;

public function setUp()
{
$this->event = new Event();
$flashBag = $this->getMockBuilder('Symfony\Component\HttpFoundation\Session\Flash\FlashBag')->getMock();
$session = $this->getMockBuilder('Symfony\Component\HttpFoundation\Session\Session')->disableOriginalConstructor()->getMock();
$session
->expects($this->once())
->method('getFlashBag')
->willReturn($flashBag);

$translator = $this->getMockBuilder('Symfony\Component\Translation\TranslatorInterface')->getMock();
$this->listener = new FlashListener($session, $translator);
}

public function testAddSuccessFlash()
{
$this->listener->addSuccessFlash($this->event, MembersEvents::CHANGE_PASSWORD_COMPLETED);
}
}

0 comments on commit a1bd4ef

Please sign in to comment.