| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- <?php
- namespace App\Test\Service\Access;
- use App\ApiResources\Profile\AccessProfile;
- use App\ApiResources\Profile\OrganizationProfile;
- use App\Entity\Access\Access;
- use App\Entity\Organization\Organization;
- use App\Entity\Person\Person;
- use App\Repository\Access\AccessRepository;
- use App\Service\Access\AccessProfileCreator;
- use App\Service\Access\HandleOptionalsRoles;
- use App\Service\Access\Utils;
- use App\Service\Organization\OrganizationProfileCreator;
- use PHPUnit\Framework\TestCase;
- use Symfony\Component\Security\Core\Exception\AuthenticationException;
- use Symfony\Component\Security\Core\Role\RoleHierarchy;
- class AccessProfileCreatorTest extends TestCase
- {
- private Access $access;
- private AccessProfileCreator $accessProfileCreator;
- private mixed $accessRepositoryMock;
- public function setUp():void
- {
- $person = new Person();
- $person
- ->setName('Foo')
- ->setGivenName('Bar')
- ;
- $today = new \DateTime();
- $this->access = new Access();
- $this->access
- ->setAdminAccess(true)
- ->setPerson($person)
- ->setOrganization(new Organization())
- ->setActivityYear($today->format('Y'))
- ;
- $organizationProfileCreatorMock = $this->getMockBuilder(OrganizationProfileCreator::class)->disableOriginalConstructor()->getMock();
- $organizationProfileCreatorMock
- ->method('createCompleteOrganizationProfile')
- ->with($this->access->getOrganization())
- ->willReturn(new OrganizationProfile());
- $this->accessRepositoryMock = $this->getMockBuilder(AccessRepository::class)->disableOriginalConstructor()->getMock();
- $accessUtilsMock = $this->getMockBuilder(Utils::class)->disableOriginalConstructor()->getMock();
- $this->accessProfileCreator = new AccessProfileCreator(
- $organizationProfileCreatorMock,
- $this->accessRepositoryMock,
- $accessUtilsMock
- );
- }
- /**
- * @see AccessProfileCreator::getAccessProfile()
- */
- public function testGetAccessProfileFailed(){
- $this->accessRepositoryMock
- ->method('findAllValidAccesses')
- ->with($this->access)
- ->willReturn([]);
- $this->expectException(AuthenticationException::class);
- $this->accessProfileCreator->getAccessProfile($this->access);
- }
- /**
- * @see AccessProfileCreator::createCompleteAccessProfile()
- */
- public function testCreateCompleteAccessProfile(){
- $accessProfile = $this->accessProfileCreator->createCompleteAccessProfile($this->access);
- $this->assertInstanceOf(AccessProfile::class, $accessProfile);
- }
- /**
- * @see AccessProfileCreator::createLightAccessProfile()
- */
- public function testCreateLightAccessProfile(){
- $accessProfile = $this->accessProfileCreator->createLightAccessProfile($this->access);
- $this->assertInstanceOf(AccessProfile::class, $accessProfile);
- }
- }
|