function UpdateActionsWithEntityPluginsTest::testUpdateDeleteActionsWithEntityPlugins

Tests upgrading comment and node delete actions to generic entity ones.

See also

system_post_update_change_delete_action_plugins()

File

core/modules/system/tests/src/Functional/Update/UpdateActionsWithEntityPluginsTest.php, line 67

Class

UpdateActionsWithEntityPluginsTest
Tests upgrading comment and node actions to generic entity ones.

Namespace

Drupal\Tests\system\Functional\Update

Code

public function testUpdateDeleteActionsWithEntityPlugins() {
    // comment_delete_actions is not part of the dump files.
    $array = [
        'node_delete_action' => [
            'node_delete_action',
            'entity:delete_action:node',
        ],
    ];
    foreach ($array as $key => list($before, $after)) {
        
        /** @var \Drupal\system\Entity\Action $action */
        $action = Action::load($key);
        $this->assertSame($before, $action->getPlugin()
            ->getPluginId());
    }
    $this->runUpdates();
    foreach ($array as $key => list($before, $after)) {
        
        /** @var \Drupal\system\Entity\Action $action */
        $action = Action::load($key);
        $this->assertSame($after, $action->getPlugin()
            ->getPluginId());
        // Check that the type the action is based on will be a module dependency.
        $this->assertArraySubset([
            'module' => [
                $action->getPluginDefinition()['type'],
            ],
        ], $action->getDependencies());
    }
}

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