function UpdateActionsWithEntityPluginsTest::testUpdateActionsWithEntityPlugins
Tests upgrading comment and node actions to generic entity ones.
See also
system_post_update_change_action_plugins()
File
-
core/
modules/ system/ tests/ src/ Functional/ Update/ UpdateActionsWithEntityPluginsTest.php, line 33
Class
- UpdateActionsWithEntityPluginsTest
- Tests upgrading comment and node actions to generic entity ones.
Namespace
Drupal\Tests\system\Functional\UpdateCode
public function testUpdateActionsWithEntityPlugins() {
$old_new_action_id_map = [
'comment_publish_action' => [
'comment_publish_action',
'entity:publish_action:comment',
],
'comment_unpublish_action' => [
'comment_unpublish_action',
'entity:unpublish_action:comment',
],
'comment_save_action' => [
'comment_save_action',
'entity:save_action:comment',
],
'node_publish_action' => [
'node_publish_action',
'entity:publish_action:node',
],
'node_unpublish_action' => [
'node_unpublish_action',
'entity:unpublish_action:node',
],
'node_save_action' => [
'node_save_action',
'entity:save_action:node',
],
];
foreach ($old_new_action_id_map as $key => list($before, $after)) {
$config = \Drupal::configFactory()->get('system.action.' . $key);
$this->assertSame($before, $config->get('plugin'));
}
$this->runUpdates();
foreach ($old_new_action_id_map as $key => list($before, $after)) {
/** @var \Drupal\system\Entity\Action $action */
$action = Action::load($key);
$this->assertSame($after, $action->getPlugin()
->getPluginId());
$config = \Drupal::configFactory()->get('system.action.' . $key);
$this->assertSame($after, $config->get('plugin'));
// 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.