Revision control

Copy as Markdown

<?xml version="1.0" encoding="UTF-8"?><!-- test that the onexit handlers run in the invoked process if it is cancelled. This has to be a
manual test, since this process won't accept any events from the child process once it has been cancelled.
Tester must examine log output from child process to determine success --><scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript">
<state id="s0">
<onentry>
<send event="foo"/>
</onentry>
<invoke type="http://www.w3.org/TR/scxml/">
<content>
<scxml initial="sub0" version="1.0" datamodel="ecmascript">
<state id="sub0" initial="sub01">
<onentry>
<send event="timeout" delay="2s"/>
</onentry>
<transition event="timeout" target="subFinal"/>
<onexit>
<log expr="'Exiting sub0'"/>
</onexit>
<state id="sub01">
<onexit>
<log expr="'Exiting sub01'"/>
</onexit>
</state>
</state>
<final id="subFinal">
<onentry>
<log expr="'entering final state, invocation was not cancelled'"/>
</onentry>
</final>
</scxml>
</content>
</invoke>
<!-- this transition will cause the invocation to be cancelled -->
<transition event="foo" target="final"/>
</state>
<final id="final"/>
</scxml>