DatabaseTest.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\Framework\Lock\Backend;
  8. /**
  9. * \Magento\Framework\Lock\Backend\Database test case
  10. */
  11. class DatabaseTest extends \PHPUnit\Framework\TestCase
  12. {
  13. /**
  14. * @var \Magento\Framework\Lock\Backend\Database
  15. */
  16. private $model;
  17. /**
  18. * @var \Magento\Framework\ObjectManagerInterface
  19. */
  20. private $objectManager;
  21. protected function setUp()
  22. {
  23. $this->objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
  24. $this->model = $this->objectManager->create(\Magento\Framework\Lock\Backend\Database::class);
  25. }
  26. public function testLockAndUnlock()
  27. {
  28. $name = 'test_lock';
  29. $this->assertFalse($this->model->isLocked($name));
  30. $this->assertTrue($this->model->lock($name));
  31. $this->assertTrue($this->model->isLocked($name));
  32. $this->assertTrue($this->model->unlock($name));
  33. $this->assertFalse($this->model->isLocked($name));
  34. }
  35. public function testUnlockWithoutExistingLock()
  36. {
  37. $name = 'test_lock';
  38. $this->assertFalse($this->model->isLocked($name));
  39. $this->assertFalse($this->model->unlock($name));
  40. }
  41. }