![]() 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/Lock/Test/Unit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Framework\Lock\Test\Unit; use Magento\Framework\Lock\LockBackendFactory; use Magento\Framework\Lock\LockManagerInterface; use Magento\Framework\Lock\Proxy; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * @inheritdoc */ class ProxyTest extends TestCase { /** * @var LockBackendFactory|MockObject */ private $factoryMock; /** * @var LockManagerInterface|MockObject */ private $lockerMock; /** * @var Proxy */ private $proxy; /** * @inheritdoc */ protected function setUp(): void { $this->factoryMock = $this->createMock(LockBackendFactory::class); $this->lockerMock = $this->getMockForAbstractClass(LockManagerInterface::class); $this->proxy = new Proxy($this->factoryMock); } /** * @return void */ public function testIsLocked() { $lockName = 'testLock'; $this->factoryMock->expects($this->once()) ->method('create') ->willReturn($this->lockerMock); $this->lockerMock->expects($this->exactly(2)) ->method('isLocked') ->with($lockName) ->willReturn(true); $this->assertTrue($this->proxy->isLocked($lockName)); // Call one more time to check that method Factory::create is called one time $this->assertTrue($this->proxy->isLocked($lockName)); } /** * @return void */ public function testLock() { $lockName = 'testLock'; $timeout = 123; $this->factoryMock->expects($this->once()) ->method('create') ->willReturn($this->lockerMock); $this->lockerMock->expects($this->exactly(2)) ->method('lock') ->with($lockName, $timeout) ->willReturn(true); $this->assertTrue($this->proxy->lock($lockName, $timeout)); // Call one more time to check that method Factory::create is called one time $this->assertTrue($this->proxy->lock($lockName, $timeout)); } /** * @return void */ public function testUnlock() { $lockName = 'testLock'; $this->factoryMock->expects($this->once()) ->method('create') ->willReturn($this->lockerMock); $this->lockerMock->expects($this->exactly(2)) ->method('unlock') ->with($lockName) ->willReturn(true); $this->assertTrue($this->proxy->unlock($lockName)); // Call one more time to check that method Factory::create is called one time $this->assertTrue($this->proxy->unlock($lockName)); } }