public function shouldWorkWhenCallingPublicMethodsWithOptionalConstructorParams()
{
$from = new State('a');
$to = new State('b');
$object = new Context(new Identifier(Identifier::NULL_ENTITY_ID, Identifier::NULL_STATEMACHINE));
$transition = new Transition($from, $to);
$this->assertEquals($from . '_to_' . $to, $transition->getName());
$this->assertEquals($from, $transition->getStateFrom());
$this->assertEquals($to, $transition->getStateTo());
$this->assertContains($transition->getName(), $transition->toString());
$command = $transition->getCommand($object);
$rule = $transition->getRule($object);
$this->assertTrue(is_a($command, Transition::COMMAND_NULL));
$this->assertTrue(is_a($rule, Transition::RULE_TRUE));
}