public function UpdateActionsWithEntityPluginsTest::testUpdateActionsWithEntityPlugins in Drupal 8
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());
}
}