diff options
Diffstat (limited to 'test/w3c/txml/test151.txml')
-rw-r--r-- | test/w3c/txml/test151.txml | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/test/w3c/txml/test151.txml b/test/w3c/txml/test151.txml new file mode 100644 index 0000000..6f95692 --- /dev/null +++ b/test/w3c/txml/test151.txml @@ -0,0 +1,45 @@ +<?xml version="1.0"?> + +<!-- test that foreach causes a new variable to be declared if 'item' doesn't already exist. Also +test that it will use an existing var if it does exist. --> + +<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> +<datamodel> + <data conf:id="1"/> + <data conf:id="2"/> + <data conf:id="3"> + <conf:array123/> + </data> + </datamodel> + + <state id="s0"> + <onentry> +<!-- first use declared variables --> + <foreach conf:item="1" conf:index="2" conf:arrayVar="3"/> + <raise event="foo"/> + </onentry> + <transition event="error" conf:targetfail=""/> + <transition event="*" target="s1"/> + </state> + +<state id="s1"> + <onentry> +<!-- now use undeclared variables --> + <foreach conf:item="4" conf:index="5" conf:arrayVar="3"/> + <raise event="bar"/> + </onentry> + <transition event="error" conf:targetfail=""/> + <transition event="*" target="s2"/> + </state> + +<state id="s2"> + <!-- check that var5 is bound --> + <transition conf:isBound="5" conf:targetpass=""/> + <transition conf:targetfail=""/> + </state> + <conf:pass/> + <conf:fail/> + + + +</scxml>
\ No newline at end of file |