function LockFileValidatorTest::testLockFileDeleted

Tests validation when the lock file is deleted.

@dataProvider providerValidateStageEvents

File

core/modules/package_manager/tests/src/Kernel/LockFileValidatorTest.php, line 130

Class

LockFileValidatorTest
@coversDefaultClass \Drupal\package_manager\Validator\LockFileValidator[[api-linebreak]] @group package_manager @internal

Namespace

Drupal\Tests\package_manager\Kernel

Code

public function testLockFileDeleted(string $event_class) : void {
  // Add a listener with an extremely high priority to the same event that
  // should raise the validation error. Because the validator uses the default
  // priority of 0, this listener deletes lock file before the validator
  // runs.
  $this->addEventTestListener(function () {
    unlink($this->activeDir . '/composer.lock');
  }, $event_class);
  $result = ValidationResult::createError([
    $this->t('The active lock file (@file) does not exist.', [
      '@file' => $this->activeDir . '/composer.lock',
    ]),
  ], $this->t('Problem detected in lock file during stage operations.'));
  $stage = $this->assertResults([
    $result,
  ], $event_class);
  // A status check should agree that there is an error here.
  $this->assertStatusCheckResults([
    $result,
  ], $stage);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.