public function LockFunctionalTest::testPersistentLock in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/system/src/Tests/Lock/LockFunctionalTest.php \Drupal\system\Tests\Lock\LockFunctionalTest::testPersistentLock()
Tests that the persistent lock is persisted between requests.
File
- core/
modules/ system/ src/ Tests/ Lock/ LockFunctionalTest.php, line 66 - Contains \Drupal\system\Tests\Lock\LockFunctionalTest.
Class
- LockFunctionalTest
- Confirm locking works between two separate requests.
Namespace
Drupal\system\Tests\LockCode
public function testPersistentLock() {
$persistent_lock = $this->container
->get('lock.persistent');
// Get a persistent lock.
$this
->drupalGet('system-test/lock-persist/lock1');
$this
->assertText('TRUE: Lock successfully acquired in SystemTestController::lockPersist()');
// Ensure that a shutdown function has not released the lock.
$this
->assertFalse($persistent_lock
->lockMayBeAvailable('lock1'));
$this
->drupalGet('system-test/lock-persist/lock1');
$this
->assertText('FALSE: Lock not acquired in SystemTestController::lockPersist()');
// Get another persistent lock.
$this
->drupalGet('system-test/lock-persist/lock2');
$this
->assertText('TRUE: Lock successfully acquired in SystemTestController::lockPersist()');
$this
->assertFalse($persistent_lock
->lockMayBeAvailable('lock2'));
// Release the first lock and try getting it again.
$persistent_lock
->release('lock1');
$this
->drupalGet('system-test/lock-persist/lock1');
$this
->assertText('TRUE: Lock successfully acquired in SystemTestController::lockPersist()');
}