| Current Path : /var/www/html/setup/src/Magento/Setup/Test/Unit/Module/ |
| Current File : /var/www/html/setup/src/Magento/Setup/Test/Unit/Module/SetupFactoryTest.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\Setup\Test\Unit\Module;
use Magento\Framework\App\ResourceConnection;
use Magento\Framework\ObjectManagerInterface;
use Magento\Setup\Model\ObjectManagerProvider;
use Magento\Setup\Module\Setup;
use Magento\Setup\Module\SetupFactory;
use PHPUnit\Framework\TestCase;
class SetupFactoryTest extends TestCase
{
public function testCreate()
{
$objectManager = $this->getMockForAbstractClass(
ObjectManagerInterface::class,
[],
'',
false
);
$objectManager->expects($this->once())
->method('get')
->with(ResourceConnection::class)
->willReturn($this->createMock(ResourceConnection::class));
$objectManagerProvider = $this->createMock(ObjectManagerProvider::class);
$objectManagerProvider->expects($this->once())->method('get')->willReturn($objectManager);
$factory = new SetupFactory($objectManagerProvider);
$this->assertInstanceOf(Setup::class, $factory->create());
}
public function testCreateWithParam()
{
$objectManager = $this->getMockForAbstractClass(
ObjectManagerInterface::class,
[],
'',
false
);
$objectManager->expects($this->never())->method('get');
$resource = $this->createMock(ResourceConnection::class);
$objectManagerProvider = $this->createMock(ObjectManagerProvider::class);
$objectManagerProvider->expects($this->once())->method('get')->willReturn($objectManager);
$factory = new SetupFactory($objectManagerProvider);
$this->assertInstanceOf(Setup::class, $factory->create($resource));
}
}