function StageEventsTest::testPackageListsAvailableToRequireEvents

Tests that pre- and post-require events have access to the package lists.

File

core/modules/package_manager/tests/src/Kernel/StageEventsTest.php, line 189

Class

StageEventsTest
Tests that the stage fires events during its lifecycle.

Namespace

Drupal\Tests\package_manager\Kernel

Code

public function testPackageListsAvailableToRequireEvents() : void {
    $listener = function (object $event) : void {
        $expected_runtime = [
            'drupal/core' => '9.8.2',
        ];
        $expected_dev = [
            'drupal/core-dev' => '9.8.2',
        ];
        
        /** @var \Drupal\package_manager\Event\PreRequireEvent|\Drupal\package_manager\Event\PostRequireEvent $event */
        $this->assertSame($expected_runtime, $event->getRuntimePackages());
        $this->assertSame($expected_dev, $event->getDevPackages());
    };
    $this->addEventTestListener($listener, PreRequireEvent::class);
    $this->addEventTestListener($listener, PostRequireEvent::class);
    $this->stage
        ->create();
    $this->stage
        ->require([
        'drupal/core:9.8.2',
    ], [
        'drupal/core-dev:9.8.2',
    ]);
}

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