class TransitionTest

Same name and namespace in other branches
  1. 11.x core/modules/workflows/tests/src/Unit/TransitionTest.php \Drupal\Tests\workflows\Unit\TransitionTest
  2. 10 core/modules/workflows/tests/src/Unit/TransitionTest.php \Drupal\Tests\workflows\Unit\TransitionTest
  3. 8.9.x core/modules/workflows/tests/src/Unit/TransitionTest.php \Drupal\Tests\workflows\Unit\TransitionTest

@coversDefaultClass \Drupal\workflows\Transition

@group workflows

Hierarchy

Expanded class hierarchy of TransitionTest

File

core/modules/workflows/tests/src/Unit/TransitionTest.php, line 15

Namespace

Drupal\Tests\workflows\Unit
View source
class TransitionTest extends UnitTestCase {
  
  /**
   * @covers ::__construct
   * @covers ::id
   * @covers ::label
   */
  public function testGetters() {
    $state = new Transition($this->prophesize(WorkflowTypeInterface::class)
      ->reveal(), 'draft_published', 'Publish', [
      'draft',
    ], 'published');
    $this->assertEquals('draft_published', $state->id());
    $this->assertEquals('Publish', $state->label());
  }
  
  /**
   * @covers ::from
   * @covers ::to
   */
  public function testFromAndTo() {
    $workflow = new TestType([], '', []);
    $workflow->addState('draft', 'Draft')
      ->addState('published', 'Published')
      ->addTransition('publish', 'Publish', [
      'draft',
    ], 'published');
    $state = $workflow->getState('draft');
    $transition = $state->getTransitionTo('published');
    $this->assertEquals($state, $transition->from()['draft']);
    $this->assertEquals($workflow->getState('published'), $transition->to());
  }

}

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