Commit 7e110101 authored by alexpott's avatar alexpott

Issue #2960054 by Sam152:...

Issue #2960054 by Sam152: content_moderation_post_update_update_cms_default_revisions fails if content_moderation was enabled but no entity types were being moderated
parent 4e43216f
...@@ -20,6 +20,7 @@ function content_moderation_post_update_update_cms_default_revisions(&$sandbox) ...@@ -20,6 +20,7 @@ function content_moderation_post_update_update_cms_default_revisions(&$sandbox)
$entity_type_id = &$sandbox['entity_type_id']; $entity_type_id = &$sandbox['entity_type_id'];
if (!isset($entity_type_id)) { if (!isset($entity_type_id)) {
$sandbox['bundles'] = []; $sandbox['bundles'] = [];
$sandbox['entity_type_ids'] = [];
/** @var \Drupal\workflows\WorkflowInterface $workflow */ /** @var \Drupal\workflows\WorkflowInterface $workflow */
foreach (Workflow::loadMultipleByType('content_moderation') as $workflow) { foreach (Workflow::loadMultipleByType('content_moderation') as $workflow) {
/** @var \Drupal\content_moderation\Plugin\WorkflowType\ContentModeration $plugin */ /** @var \Drupal\content_moderation\Plugin\WorkflowType\ContentModeration $plugin */
......
...@@ -20,7 +20,6 @@ protected function setDatabaseDumpFiles() { ...@@ -20,7 +20,6 @@ protected function setDatabaseDumpFiles() {
$this->databaseDumpFiles = [ $this->databaseDumpFiles = [
__DIR__ . '/../../../../system/tests/fixtures/update/drupal-8.4.0.bare.standard.php.gz', __DIR__ . '/../../../../system/tests/fixtures/update/drupal-8.4.0.bare.standard.php.gz',
__DIR__ . '/../../fixtures/update/drupal-8.4.0-content_moderation_installed.php', __DIR__ . '/../../fixtures/update/drupal-8.4.0-content_moderation_installed.php',
__DIR__ . '/../../fixtures/update/drupal-8.default-cms-entity-id-2941736.php',
]; ];
} }
...@@ -28,6 +27,11 @@ protected function setDatabaseDumpFiles() { ...@@ -28,6 +27,11 @@ protected function setDatabaseDumpFiles() {
* Test updating the default revision. * Test updating the default revision.
*/ */
public function testUpdateDefaultRevision() { public function testUpdateDefaultRevision() {
// Include the database fixture required to test updating the default
// revision. This is excluded from ::setDatabaseDumpFiles so that we can
// test the same post_update hook with no test content enabled.
require __DIR__ . '/../../fixtures/update/drupal-8.default-cms-entity-id-2941736.php';
$this->runUpdates(); $this->runUpdates();
foreach (['node', 'block_content'] as $entity_type_id) { foreach (['node', 'block_content'] as $entity_type_id) {
...@@ -45,6 +49,14 @@ public function testUpdateDefaultRevision() { ...@@ -45,6 +49,14 @@ public function testUpdateDefaultRevision() {
} }
} }
/**
* Test the post_update hook when no entity types are being moderated.
*/
public function testNoEntitiesUnderModeration() {
// If any errors occur during the post_update hook, the test case will fail.
$this->runUpdates();
}
/** /**
* Assert for the given entity, the default revision ID matches. * Assert for the given entity, the default revision ID matches.
* *
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment