function ModerationStateFieldItemListTest::testModerationStateChanges

Same name and namespace in other branches
  1. 11.x core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php \Drupal\Tests\content_moderation\Kernel\ModerationStateFieldItemListTest::testModerationStateChanges()
  2. 10 core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php \Drupal\Tests\content_moderation\Kernel\ModerationStateFieldItemListTest::testModerationStateChanges()
  3. 9 core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php \Drupal\Tests\content_moderation\Kernel\ModerationStateFieldItemListTest::testModerationStateChanges()
  4. 8.9.x core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php \Drupal\Tests\content_moderation\Kernel\ModerationStateFieldItemListTest::testModerationStateChanges()

Tests that moderation state changes also change the related entity state.

Attributes

#[DataProvider('moderationStateChangesTestCases')]

File

core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php, line 208

Class

ModerationStateFieldItemListTest
Tests Drupal\content_moderation\Plugin\Field\ModerationStateFieldItemList.

Namespace

Drupal\Tests\content_moderation\Kernel

Code

public function testModerationStateChanges($initial_state, $final_state, $first_published, $first_is_default, $second_published, $second_is_default) : void {
  $this->testNode->moderation_state->value = $initial_state;
  $this->assertEquals($first_published, $this->testNode
    ->isPublished());
  $this->assertEquals($first_is_default, $this->testNode
    ->isDefaultRevision());
  $this->testNode
    ->save();
  $this->testNode->moderation_state->value = $final_state;
  $this->assertEquals($second_published, $this->testNode
    ->isPublished());
  $this->assertEquals($second_is_default, $this->testNode
    ->isDefaultRevision());
}

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