|
Apache/2.4.41 (Ubuntu) Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) server ip : 62.171.164.128 | your ip : 127.0.0.1 safemode OFF > / home / dev2.destoffenstraat.com / vendor / magento / framework / Acl / Test / Unit / |
Filename | /home/dev2.destoffenstraat.com/vendor/magento/framework/Acl/Test/Unit/BuilderTest.php |
Size | 2.6 kb |
Permission | rw-r--r-- |
Owner | root : root |
Create time | 17-Aug-2025 10:26 |
Last modified | 07-Jan-2021 21:08 |
Last accessed | 23-Aug-2025 03:56 |
Actions | edit | rename | delete | download (gzip) |
View | text | code | image |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\Framework\Acl\Test\Unit;
use Magento\Framework\Acl;
use Magento\Framework\Acl\Builder;
use Magento\Framework\Acl\Loader\DefaultLoader;
use Magento\Framework\AclFactory;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
class BuilderTest extends TestCase
{
/**
* @var MockObject
*/
protected $_aclFactoryMock;
/**
* @var MockObject
*/
protected $_aclMock;
/**
* @var MockObject
*/
protected $_ruleLoader;
/**
* @var MockObject
*/
protected $_roleLoader;
/**
* @var MockObject
*/
protected $_resourceLoader;
/**
* @var Builder
*/
protected $_model;
protected function setUp(): void
{
$this->_aclMock = new Acl();
$this->_aclFactoryMock = $this->createMock(AclFactory::class);
$this->_aclFactoryMock->expects($this->any())->method('create')->willReturn($this->_aclMock);
$this->_roleLoader = $this->createMock(DefaultLoader::class);
$this->_ruleLoader = $this->createMock(DefaultLoader::class);
$this->_resourceLoader = $this->createMock(DefaultLoader::class);
$this->_model = new Builder(
$this->_aclFactoryMock,
$this->_roleLoader,
$this->_resourceLoader,
$this->_ruleLoader
);
}
public function testGetAclUsesLoadersProvidedInConfigurationToPopulateAclIfCacheIsEmpty()
{
$this->_ruleLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->_roleLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->_resourceLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
}
public function testGetAclReturnsAclStoredInCache()
{
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
}
public function testGetAclRethrowsException()
{
$this->expectException('LogicException');
$this->_aclFactoryMock->expects(
$this->once()
)->method(
'create'
)->willThrowException(
new \InvalidArgumentException()
);
$this->_model->getAcl();
}
public function testResetRuntimeAcl()
{
$this->assertInstanceOf(Builder::class, $this->_model->resetRuntimeAcl());
}
}
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\Framework\Acl\Test\Unit;
use Magento\Framework\Acl;
use Magento\Framework\Acl\Builder;
use Magento\Framework\Acl\Loader\DefaultLoader;
use Magento\Framework\AclFactory;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
class BuilderTest extends TestCase
{
/**
* @var MockObject
*/
protected $_aclFactoryMock;
/**
* @var MockObject
*/
protected $_aclMock;
/**
* @var MockObject
*/
protected $_ruleLoader;
/**
* @var MockObject
*/
protected $_roleLoader;
/**
* @var MockObject
*/
protected $_resourceLoader;
/**
* @var Builder
*/
protected $_model;
protected function setUp(): void
{
$this->_aclMock = new Acl();
$this->_aclFactoryMock = $this->createMock(AclFactory::class);
$this->_aclFactoryMock->expects($this->any())->method('create')->willReturn($this->_aclMock);
$this->_roleLoader = $this->createMock(DefaultLoader::class);
$this->_ruleLoader = $this->createMock(DefaultLoader::class);
$this->_resourceLoader = $this->createMock(DefaultLoader::class);
$this->_model = new Builder(
$this->_aclFactoryMock,
$this->_roleLoader,
$this->_resourceLoader,
$this->_ruleLoader
);
}
public function testGetAclUsesLoadersProvidedInConfigurationToPopulateAclIfCacheIsEmpty()
{
$this->_ruleLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->_roleLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->_resourceLoader->expects($this->once())->method('populateAcl')->with($this->_aclMock);
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
}
public function testGetAclReturnsAclStoredInCache()
{
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
$this->assertEquals($this->_aclMock, $this->_model->getAcl());
}
public function testGetAclRethrowsException()
{
$this->expectException('LogicException');
$this->_aclFactoryMock->expects(
$this->once()
)->method(
'create'
)->willThrowException(
new \InvalidArgumentException()
);
$this->_model->getAcl();
}
public function testResetRuntimeAcl()
{
$this->assertInstanceOf(Builder::class, $this->_model->resetRuntimeAcl());
}
}