![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/framework/Session/Test/Unit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Framework\Session\Test\Unit; use Magento\Framework\DataObject; use Magento\Framework\ObjectManager\ObjectManager; use Magento\Framework\Session\SaveHandler\Native; use Magento\Framework\Session\SaveHandlerFactory; use PHPUnit\Framework\TestCase; class SaveHandlerFactoryTest extends TestCase { /** * @dataProvider createDataProvider */ public function testCreate($handlers, $saveClass, $saveMethod) { $saveHandler = $this->createMock($saveClass); $objectManager = $this->createPartialMock(ObjectManager::class, ['create']); $objectManager->expects( $this->once() )->method( 'create' )->with( $saveClass, [] )->willReturn( $saveHandler ); $model = new SaveHandlerFactory($objectManager, $handlers); $result = $model->create($saveMethod); $this->assertInstanceOf($saveClass, $result); $this->assertInstanceOf(Native::class, $result); $this->assertInstanceOf('\SessionHandlerInterface', $result); } /** * @return array */ public function createDataProvider() { return [[[], Native::class, 'files']]; } public function testCreateInvalid() { $this->expectException('LogicException'); $this->expectExceptionMessage( 'Magento\Framework\Session\SaveHandler\Native doesn\'t implement \SessionHandlerInterface' ); $invalidSaveHandler = new DataObject(); $objectManager = $this->getMockBuilder(ObjectManager::class) ->disableOriginalConstructor() ->getMock(); $objectManager->expects($this->once()) ->method('create') ->willReturn($invalidSaveHandler); $model = new SaveHandlerFactory($objectManager, []); $model->create('files'); } }