TransitionTest.php in Drupal 9
File
core/modules/workflows/tests/src/Unit/TransitionTest.php
View source
<?php
namespace Drupal\Tests\workflows\Unit;
use Drupal\Tests\UnitTestCase;
use Drupal\workflow_type_test\Plugin\WorkflowType\TestType;
use Drupal\workflows\Transition;
use Drupal\workflows\WorkflowTypeInterface;
class TransitionTest extends UnitTestCase {
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());
}
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());
}
}