12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?xml version="1.1" ?>
- <diagram author="Sam Pieters" name="Create and Start Instance">
- <description>
- Test 8: Check if an instance is created and started successfully with constructor parameters (other than the main app)
- </description>
- <inport name="Inport" />
- <outport name="Outport"/>
- <class name="MainApp" default="true">
- <relationships>
- <association name="linkA" class="A" />
- </relationships>
- <scxml initial="state1">
- <state id="state1">
- <onentry>
- <raise scope="cd" event="create_instance">
- <parameter expr='"linkA"' />
- <parameter expr='"A"' />
- <!-- Constructor parameters -->
- <parameter expr='1' type="int" />
- <parameter expr='3.14' type="float" />
- <parameter expr='"test"' type="string" />
- <parameter expr='[1, 2, 3]' type="list" />
- <parameter expr='{"1": 1, "2": 2, "3": 3}' type="dict" />
- </raise>
- </onentry>
- <transition event='instance_created' target='../state2'>
- <parameter name="association_name" type="string"/>
- <raise port="Outport" event="instance_created_succesfully">
- <parameter expr="str('%.2f' % (self.getSimulatedTime() / 1000.0))" />
- <parameter expr="association_name" />
- </raise>
- <raise scope="cd" event="start_instance">
- <parameter expr="association_name" />
- </raise>
- </transition>
- </state>
- <state id="state2">
- <transition event='instance_started' target='.'>
- <parameter name="association_name" type="string"/>
- <raise port="Outport" event="instance_started_succesfully">
- <parameter expr="str('%.2f' % (self.getSimulatedTime() / 1000.0))" />
- <parameter expr="association_name" />
- </raise>
- </transition>
- </state>
- </scxml>
- </class>
- <class name="A">
- <constructor>
- <parameter name='integer' type="int" />
- <parameter name='floating_point' type="float" />
- <parameter name='astring' type="string" />
- <parameter name='alist' type="list" />
- <parameter name='adict' type="dict" />
- <body>
- self.integer = integer
- self.floating_point = floating_point
- self.astring = astring
- self.alist = alist
- self.adict = adict
- </body>
- </constructor>
- <scxml initial="state1">
- <state id="state1">
- <onentry>
- <raise port="Outport" event="statechart_started_succesfully">
- <parameter expr="str('%.2f' % (self.getSimulatedTime() / 1000.0))" />
- </raise>
- <raise port="Outport" event="constructor_initialized_succesfully">
- <parameter expr="str('%.2f' % (self.getSimulatedTime() / 1000.0))" />
- <parameter expr="self.integer" />
- <parameter expr="self.floating_point" />
- <parameter expr="self.astring" />
- <parameter expr="self.alist" />
- <parameter expr="self.adict" />
- </raise>
- </onentry>
- </state>
- </scxml>
- </class>
- </diagram>
|