use Symfony\Component\Workflow\StateMachine;
use Symfony\Component\Workflow\TransitionBlocker;
class StateMachineTest extends TestCase
{ use WorkflowBuilderTrait;
public function testCan() { $definition =
$this->
createComplexStateMachineDefinition();
$net =
new StateMachine($definition);
$subject =
new Subject();
// If you are in place "a" you should be able to apply "t1"
$subject->
setMarking('a'
);
$this->
assertTrue($net->
can($subject, 't1'
));
$subject->
setMarking('d'
);
$this->
assertTrue($net->
can($subject, 't1'
));
$subject->
setMarking('b'
);
$this->
assertFalse($net->
can($subject, 't1'
));
}