trait ContentModerationTestTrait
Same name in other branches
- 9 core/modules/content_moderation/tests/src/Traits/ContentModerationTestTrait.php \Drupal\Tests\content_moderation\Traits\ContentModerationTestTrait
- 8.9.x core/modules/content_moderation/tests/src/Traits/ContentModerationTestTrait.php \Drupal\Tests\content_moderation\Traits\ContentModerationTestTrait
- 11.x core/modules/content_moderation/tests/src/Traits/ContentModerationTestTrait.php \Drupal\Tests\content_moderation\Traits\ContentModerationTestTrait
Provides functionality for testing content moderation.
Hierarchy
- trait \Drupal\Tests\content_moderation\Traits\ContentModerationTestTrait
39 files declare their use of ContentModerationTestTrait
- BookContentModerationTest.php in core/
modules/ book/ tests/ src/ Functional/ BookContentModerationTest.php - ContentModerationAccessTest.php in core/
modules/ content_moderation/ tests/ src/ Kernel/ ContentModerationAccessTest.php - ContentModerationResaveTest.php in core/
modules/ content_moderation/ tests/ src/ Kernel/ ContentModerationResaveTest.php - ContentModerationStateStorageSchemaTest.php in core/
modules/ content_moderation/ tests/ src/ Kernel/ ContentModerationStateStorageSchemaTest.php - ContentModerationStateTest.php in core/
modules/ content_moderation/ tests/ src/ Kernel/ ContentModerationStateTest.php
File
-
core/
modules/ content_moderation/ tests/ src/ Traits/ ContentModerationTestTrait.php, line 13
Namespace
Drupal\Tests\content_moderation\TraitsView source
trait ContentModerationTestTrait {
/**
* Creates the editorial workflow.
*
* @return \Drupal\workflows\Entity\Workflow
* The editorial workflow entity.
*/
protected function createEditorialWorkflow() {
// Allow this method to be called twice from the same test method.
if ($workflow = Workflow::load('editorial')) {
return $workflow;
}
$workflow = Workflow::create([
'type' => 'content_moderation',
'id' => 'editorial',
'label' => 'Editorial',
'type_settings' => [
'states' => [
'archived' => [
'label' => 'Archived',
'weight' => 5,
'published' => FALSE,
'default_revision' => TRUE,
],
'draft' => [
'label' => 'Draft',
'published' => FALSE,
'default_revision' => FALSE,
'weight' => -5,
],
'published' => [
'label' => 'Published',
'published' => TRUE,
'default_revision' => TRUE,
'weight' => 0,
],
],
'transitions' => [
'archive' => [
'label' => 'Archive',
'from' => [
'published',
],
'to' => 'archived',
'weight' => 2,
],
'archived_draft' => [
'label' => 'Restore to Draft',
'from' => [
'archived',
],
'to' => 'draft',
'weight' => 3,
],
'archived_published' => [
'label' => 'Restore',
'from' => [
'archived',
],
'to' => 'published',
'weight' => 4,
],
'create_new_draft' => [
'label' => 'Create New Draft',
'to' => 'draft',
'weight' => 0,
'from' => [
'draft',
'published',
],
],
'publish' => [
'label' => 'Publish',
'to' => 'published',
'weight' => 1,
'from' => [
'draft',
'published',
],
],
],
],
]);
$workflow->save();
return $workflow;
}
/**
* Adds an entity type ID / bundle ID to the given workflow.
*
* @param \Drupal\workflows\WorkflowInterface $workflow
* A workflow object.
* @param string $entity_type_id
* The entity type ID to add.
* @param string $bundle
* The bundle ID to add.
*/
protected function addEntityTypeAndBundleToWorkflow(WorkflowInterface $workflow, $entity_type_id, $bundle) {
$workflow->getTypePlugin()
->addEntityTypeAndBundle($entity_type_id, $bundle);
$workflow->save();
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overrides |
---|---|---|---|---|
ContentModerationTestTrait::addEntityTypeAndBundleToWorkflow | protected | function | Adds an entity type ID / bundle ID to the given workflow. | 1 |
ContentModerationTestTrait::createEditorialWorkflow | protected | function | Creates the editorial workflow. | 1 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.