mirror of
https://github.com/kevinveenbirkenbach/infinito.git
synced 2025-01-10 22:37:28 +01:00
52 lines
2.8 KiB
PHP
52 lines
2.8 KiB
PHP
<?php
|
|
|
|
namespace tests\Unit\Domain\ActionManagement\Create;
|
|
|
|
use PHPUnit\Framework\TestCase;
|
|
use Infinito\Domain\ActionManagement\Create\CreateSourceAction;
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
use Infinito\Entity\Source\PureSource;
|
|
use Infinito\Attribut\ClassAttributInterface;
|
|
use Infinito\Attribut\SlugAttributInterface;
|
|
use Infinito\Entity\Source\PureSourceInterface;
|
|
use Infinito\Domain\ActionManagement\ActionService;
|
|
use Doctrine\ORM\EntityManagerInterface;
|
|
use Infinito\Domain\RequestManagement\Action\RequestedActionServiceInterface;
|
|
use Infinito\Domain\SecureManagement\SecureRequestedRightCheckerServiceInterface;
|
|
use Symfony\Component\HttpFoundation\RequestStack;
|
|
use Infinito\Domain\RepositoryManagement\LayerRepositoryFactoryServiceInterface;
|
|
use Infinito\Domain\FormManagement\RequestedActionFormBuilderServiceInterface;
|
|
use Symfony\Component\Form\FormBuilderInterface;
|
|
use Infinito\Form\Source\PureSourceTypeInterface;
|
|
|
|
/**
|
|
* @author kevinfrantz
|
|
*/
|
|
class CreateSourceActionTest extends TestCase
|
|
{
|
|
public function testCreatePureSource(): void
|
|
{
|
|
$request = new Request();
|
|
$request->setMethod(Request::METHOD_POST);
|
|
$request->query->set(ClassAttributInterface::CLASS_ATTRIBUT_NAME, PureSource::class);
|
|
$request->request->set(SlugAttributInterface::SLUG_ATTRIBUT_NAME, 'randomname');
|
|
$requestedActionService = $this->createMock(RequestedActionServiceInterface::class);
|
|
$secureRequestedRightChecker = $this->createMock(SecureRequestedRightCheckerServiceInterface::class);
|
|
$entityManager = $this->createMock(EntityManagerInterface::class);
|
|
$pureSourceType = $this->createMock(PureSourceTypeInterface::class);
|
|
$pureSourceType->method('isValid')->willReturn(true);
|
|
$formBuilderInterface = $this->createMock(FormBuilderInterface::class);
|
|
$formBuilderInterface->method('getForm')->willReturn($pureSourceType);
|
|
// $formBuilderInterface->method('isValid')->willReturn(true);
|
|
$requestedActionFormBuilderService = $this->createMock(RequestedActionFormBuilderServiceInterface::class);
|
|
$requestedActionFormBuilderService->method('createByService')->willReturn($formBuilderInterface);
|
|
$requestStack = $this->createMock(RequestStack::class);
|
|
$requestStack->method('getCurrentRequest')->willReturn($request);
|
|
$layerRepositoryFactoryService = $this->createMock(LayerRepositoryFactoryServiceInterface::class);
|
|
$actionService = new ActionService($requestedActionService, $secureRequestedRightChecker, $requestStack, $layerRepositoryFactoryService, $requestedActionFormBuilderService, $entityManager);
|
|
$createSourceAction = new CreateSourceAction($actionService);
|
|
$result = $createSourceAction->execute();
|
|
$this->assertInstanceOf(PureSourceInterface::class, $result);
|
|
}
|
|
}
|