createComplexStateMachineDefinition(); $net = new StateMachine($definition); $subject = new \stdClass(); // If you are in place "a" you should be able to apply "t1" $subject->marking = 'a'; $this->assertTrue($net->can($subject, 't1')); $subject->marking = 'd'; $this->assertTrue($net->can($subject, 't1')); $subject->marking = 'b'; $this->assertFalse($net->can($subject, 't1')); } public function testCanWithMultipleTransition() { $definition = $this->createComplexStateMachineDefinition(); $net = new StateMachine($definition); $subject = new \stdClass(); // If you are in place "b" you should be able to apply "t1" and "t2" $subject->marking = 'b'; $this->assertTrue($net->can($subject, 't2')); $this->assertTrue($net->can($subject, 't3')); } } __halt_compiler();----SIGNATURE:----iE3yYjMFyuMGskhhZpA1z9mwOIB83tLKzXH0uPh8a+gmc6NUoSXycGHXe37IO30G3RTGz0u8kHRgtMO1gZsYSH+c89DchrflmMQqb/IxaE7VT1kpraztB5fwU7kBtzp8wsCqTYPRT03BPnCGtX/x4phRU6cWFWPToIc3plc4P3VvtQegdS9MpUFagzAEsUV5Q4wLHQX4RWpGO5JUcpUGF5WIw2p3mVysiAc4C62LFPRi3h2VqWa7DAVQF/DuyRrRrXmt115dUcniPNsNuJ6XsEPirt9iqXj8YtE/PfxXe5IiMw5D8vqevAJ9gs4Zz0Hyx6iMrHgco1bxogdKCZJDVGrlh3JDRm9HkipethZhGdLEE3xGCekSKp+081NJvyC8SG3XHTg+iu33+Lym/29unjUxMABkTXGt/FzR6VkRHXWuB0TA9Q6Io6eDbX48E2F+La8RJhPHhR5bDeaAb65WAExi1n7rPoi0xaOREL7ZTvJ8mhxAeRMYlI9InGBbO1ph2mJ4/EDiYGeu3JJz82qfASdnXYus2Gfo8TQ31FfHaVj5WYsh8jVp5qoT7C4dO6qQLKvsjTchY0+vzGdH7aR1K/pWxCEUQZPSK8E+WgtZKlbPuNYmryE8kbs42iUbjsnKVjQ7RTTPfMRa4npeSPA1GQmeZsUbZHoXd2MgjDaf/5E=----ATTACHMENT:----NjQ3NzkzOTk3NjIxNjc5NCA1OTA1NTM0ODM4MjI4MTg5IDI5MDMzOTA2MzkyODAxNDI=