diff options
author | Thomas Schuetz | 2013-07-12 08:40:15 +0000 |
---|---|---|
committer | Thomas Schuetz | 2013-07-12 08:40:15 +0000 |
commit | 12cda553738ca88662624b6f47066b5564549648 (patch) | |
tree | bfa65b6c38aa566a5f1cc98395da6546a6c6e282 /tests | |
parent | 3447749b1a453735ac54fc09ea7680acdbb19b69 (diff) | |
parent | d65e1d1bdd43feadb43261b85aac2d8aef5e089c (diff) | |
download | org.eclipse.etrice-12cda553738ca88662624b6f47066b5564549648.tar.gz org.eclipse.etrice-12cda553738ca88662624b6f47066b5564549648.tar.xz org.eclipse.etrice-12cda553738ca88662624b6f47066b5564549648.zip |
Merge remote-tracking branch 'origin/master'
Conflicts:
plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.c.zip
plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.modellib.java.zip
plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.runtime.c.zip
plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.c.zip
plugins/org.eclipse.etrice.ui.runtime/contents/org.eclipse.etrice.tutorials.java.zip
Change-Id: I98e2df3ab57d6e7e8f27e5b0aee7eaa189bfbc33
Diffstat (limited to 'tests')
286 files changed, 38833 insertions, 38833 deletions
diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.classpath b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.classpath +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.gitignore b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.gitignore +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.project b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.project index 0f2d1651c..728db81ef 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.project +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.abstractexec.behavior.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.abstractexec.behavior.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.settings/org.eclipse.jdt.core.prefs index 688e6015f..c0fd1680a 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Thu Aug 16 23:39:06 CEST 2012
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Thu Aug 16 23:39:06 CEST 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.abstractexec.behavior.tests/META-INF/MANIFEST.MF index fd55f8dff..f8ccdf873 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/META-INF/MANIFEST.MF @@ -1,16 +1,16 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Abstract Execution for Behavior Tests
-Bundle-SymbolicName: org.eclipse.etrice.abstractexec.behavior.tests
-Bundle-Version: 0.2.0.qualifier
-Bundle-Activator: org.eclipse.etrice.abstractexec.behavior.tests.Activator
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.emf.ecore;bundle-version="2.7.0",
- org.eclipse.etrice.core.room.ui;bundle-version="0.2.0",
- com.google.inject;bundle-version="2.0.0",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.junit;bundle-version="4.10.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-ActivationPolicy: lazy
-Import-Package: org.eclipse.etrice.abstractexec.behavior
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Abstract Execution for Behavior Tests +Bundle-SymbolicName: org.eclipse.etrice.abstractexec.behavior.tests +Bundle-Version: 0.2.0.qualifier +Bundle-Activator: org.eclipse.etrice.abstractexec.behavior.tests.Activator +Bundle-Vendor: Eclipse eTrice (Incubation) +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.emf.ecore;bundle-version="2.7.0", + org.eclipse.etrice.core.room.ui;bundle-version="0.2.0", + com.google.inject;bundle-version="2.0.0", + org.eclipse.xtext;bundle-version="2.1.1", + org.junit;bundle-version="4.10.0" +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-ActivationPolicy: lazy +Import-Package: org.eclipse.etrice.abstractexec.behavior diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/build.properties b/tests/org.eclipse.etrice.abstractexec.behavior.tests/build.properties index 41eb6ade2..34d2e4d2d 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/build.properties +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/build.properties @@ -1,4 +1,4 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/cashTerminal.room b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/cashTerminal.room index 928db6942..b64e2e0d5 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/cashTerminal.room +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/cashTerminal.room @@ -1,228 +1,228 @@ -RoomModel CashTerminal {
-
- ActorClass Controller {
- Interface {
- conjugated Port terminal:TerminalProtocol
- conjugated Port auth:AuthProtocol
- }
- Structure {
- external Port terminal
- external Port auth
- }
- Behavior {
- StateMachine{
- Transition init: initial -> state0_sm {
- action {
- "auth.hello();"
- }
- }
- Transition tr0: state0_sm -> offline {
- triggers {
- <serviceNA: auth>
- }
- action {
- "terminal.showOffline();"
- }
- }
- Transition tr1: state0_sm -> idle_sm {
- triggers {
- <hello: auth>
- }
- }
- Transition tr2: idle_sm -> handleCard {
- triggers {
- <cardEntered: terminal>
- }
- }
- Transition tr3: tp0 of handleCard -> tp0 of handlePIN
- Transition tr4: tp1 of handlePIN -> idle_sm
- Transition tr5: handlePIN -> idle_sm {
- triggers {
- <correctPIN: auth>
- }
- action {
- "terminal.dispenseMoney();"
- }
- }
- Transition tr6: tp1 of handleCard -> idle_sm
- State state0_sm
- State idle_sm {
- entry {
- "terminal.showWelcome();"
- }
- }
- State offline
- State handleCard {
- subgraph {
- Transition init: initial -> state0_sm {
- action {
- "auth.checkCard();"
- }
- }
- Transition tr0: state0_sm -> wait_sm {
- triggers {
- <validCard: auth>
- }
- action {
- "terminal.showPIN();"
- }
- }
- Transition tr1: wait_sm -> my tp0 {
- triggers {
- <pinEntered: terminal>
- }
- }
- Transition tr2: state0_sm -> my tp1 {
- triggers {
- <invalidCard: auth>
- }
- }
- ExitPoint tp0
- ExitPoint tp1
- State state0_sm
- State wait_sm
- }
- }
- State handlePIN {
- subgraph {
- Transition tr0: my tp0 -> wait_sm
- Transition tr1: wait_sm -> cp cp0 {
- triggers {
- <wrongPIN: auth>
- }
- }
- Transition tr2: cp cp0 -> my tp1 {
- action {
- "terminal.confiscateCard();"
- }
- }
- Transition tr3: cp cp0 -> wait_sm {
- cond {
- "if(count_tries < 2)"
- }
- }
- ChoicePoint cp0
- EntryPoint tp0
- ExitPoint tp1
- State wait_sm {
- entry {
- "auth.checkPIN();"
- }
- }
- }
- }
- }
-
- }
- }
-
- ActorClass AuthServer {
- Interface {
- Port client:AuthProtocol
- }
- Structure {
- external Port client
- }
- Behavior {
- StateMachine {
- Transition tr0: cp cp0 -> error {
- action {
- "client.serviceNA();"
- }
- }
- Transition tr2: cp cp0 -> standby {
- cond {
- "if(okay)"
- }
- action {
- "client.hello();"
- }
- }
- Transition tr4: standby -> standby {
- triggers {
- <checkCard: client>
- }
- action {
- "if(valid)"
- "\tclient.validCard();"
- "else"
- "\tinvalidCard();"
- }
- }
- Transition tr5_vm: standby -> standby {
- triggers {
- <checkPIN: client>
- }
- action {
- "if(correct)"
- "\tclient.correctPIN();"
- "else"
- "\tclient.wrongPIN();"
- }
- }
- Transition init: initial -> state0 { }
- Transition tr6: state0 -> cp cp0 {
- triggers {
- <hello: client>
- }
- }
- ChoicePoint cp0
- State standby
- State error
- State state0
- }
- }
- }
-
- ProtocolClass TerminalProtocol {
- incoming {
- Message showWelcome()
- Message showPIN()
- Message confiscateCard()
- Message dispenseMoney()
- Message showOffline()
+RoomModel CashTerminal { + + ActorClass Controller { + Interface { + conjugated Port terminal:TerminalProtocol + conjugated Port auth:AuthProtocol + } + Structure { + external Port terminal + external Port auth + } + Behavior { + StateMachine{ + Transition init: initial -> state0_sm { + action { + "auth.hello();" + } + } + Transition tr0: state0_sm -> offline { + triggers { + <serviceNA: auth> + } + action { + "terminal.showOffline();" + } + } + Transition tr1: state0_sm -> idle_sm { + triggers { + <hello: auth> + } + } + Transition tr2: idle_sm -> handleCard { + triggers { + <cardEntered: terminal> + } + } + Transition tr3: tp0 of handleCard -> tp0 of handlePIN + Transition tr4: tp1 of handlePIN -> idle_sm + Transition tr5: handlePIN -> idle_sm { + triggers { + <correctPIN: auth> + } + action { + "terminal.dispenseMoney();" + } + } + Transition tr6: tp1 of handleCard -> idle_sm + State state0_sm + State idle_sm { + entry { + "terminal.showWelcome();" + } + } + State offline + State handleCard { + subgraph { + Transition init: initial -> state0_sm { + action { + "auth.checkCard();" + } + } + Transition tr0: state0_sm -> wait_sm { + triggers { + <validCard: auth> + } + action { + "terminal.showPIN();" + } + } + Transition tr1: wait_sm -> my tp0 { + triggers { + <pinEntered: terminal> + } + } + Transition tr2: state0_sm -> my tp1 { + triggers { + <invalidCard: auth> + } + } + ExitPoint tp0 + ExitPoint tp1 + State state0_sm + State wait_sm + } + } + State handlePIN { + subgraph { + Transition tr0: my tp0 -> wait_sm + Transition tr1: wait_sm -> cp cp0 { + triggers { + <wrongPIN: auth> + } + } + Transition tr2: cp cp0 -> my tp1 { + action { + "terminal.confiscateCard();" + } + } + Transition tr3: cp cp0 -> wait_sm { + cond { + "if(count_tries < 2)" + } + } + ChoicePoint cp0 + EntryPoint tp0 + ExitPoint tp1 + State wait_sm { + entry { + "auth.checkPIN();" + } + } + } + } + } - }
- outgoing {
- Message pinEntered()
- Message cardEntered()
- }
- semantics {
- in:showOffline
- in:showWelcome->out:cardEntered->(in:showPIN->out:pinEntered->(in:dispenseMoney->in:showWelcome,in:confiscateCard->in:showWelcome),in:showWelcome)
- }
- }
-
- ProtocolClass AuthProtocol {
- incoming {
- Message hello()
- Message checkCard()
- Message checkPIN()
- }
-
- outgoing {
- Message validCard()
- Message invalidCard()
- Message correctPIN()
- Message wrongPIN()
- Message serviceNA()
- Message hello()
- }
- semantics {
- in:hello->(
- out:hello->in:checkCard->(
- out:validCard->in:checkPIN->(
- out:correctPIN,
- out:wrongPIN->in:checkPIN->(
- out:correctPIN,
- out:wrongPIN
- )
- ),
- out:invalidCard
- ),
- out:serviceNA
- )
- }
- }
-
+ } + } + + ActorClass AuthServer { + Interface { + Port client:AuthProtocol + } + Structure { + external Port client + } + Behavior { + StateMachine { + Transition tr0: cp cp0 -> error { + action { + "client.serviceNA();" + } + } + Transition tr2: cp cp0 -> standby { + cond { + "if(okay)" + } + action { + "client.hello();" + } + } + Transition tr4: standby -> standby { + triggers { + <checkCard: client> + } + action { + "if(valid)" + "\tclient.validCard();" + "else" + "\tinvalidCard();" + } + } + Transition tr5_vm: standby -> standby { + triggers { + <checkPIN: client> + } + action { + "if(correct)" + "\tclient.correctPIN();" + "else" + "\tclient.wrongPIN();" + } + } + Transition init: initial -> state0 { } + Transition tr6: state0 -> cp cp0 { + triggers { + <hello: client> + } + } + ChoicePoint cp0 + State standby + State error + State state0 + } + } + } + + ProtocolClass TerminalProtocol { + incoming { + Message showWelcome() + Message showPIN() + Message confiscateCard() + Message dispenseMoney() + Message showOffline() + + } + outgoing { + Message pinEntered() + Message cardEntered() + } + semantics { + in:showOffline + in:showWelcome->out:cardEntered->(in:showPIN->out:pinEntered->(in:dispenseMoney->in:showWelcome,in:confiscateCard->in:showWelcome),in:showWelcome) + } + } + + ProtocolClass AuthProtocol { + incoming { + Message hello() + Message checkCard() + Message checkPIN() + } + + outgoing { + Message validCard() + Message invalidCard() + Message correctPIN() + Message wrongPIN() + Message serviceNA() + Message hello() + } + semantics { + in:hello->( + out:hello->in:checkCard->( + out:validCard->in:checkPIN->( + out:correctPIN, + out:wrongPIN->in:checkPIN->( + out:correctPIN, + out:wrongPIN + ) + ), + out:invalidCard + ), + out:serviceNA + ) + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.AuthServer.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.AuthServer.behavior index 3bb426a80..98113bf46 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.AuthServer.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.AuthServer.behavior @@ -1,281 +1,281 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AuthServer" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="584" height="426"/>
- <link>
- <businessObjects href="../cashTerminal.room#ActorClass:AuthServer"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="605" height="445" x="-10" y="-9">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="525" height="365" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="525" height="365" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:AuthServer$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="525" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="383" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:AuthServer$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="314">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$standby"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1 //@connections.2 //@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="standby"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="445" y="314">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$error"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="error"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="343" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="379" y="241">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ChoicePoint:AuthServer$cp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0 //@connections.1" incomingConnections="//@connections.5"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:AuthServer$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-8" font="//@fonts.0" value="tr0: [else]"/>
- </connectionDecorators>
- <bendpoints x="418" y="279"/>
- <bendpoints x="433" y="293"/>
- <bendpoints x="450" y="308"/>
- <bendpoints x="465" y="322"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#CPBranchTransition:AuthServer$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="34" y="-8" font="//@fonts.0" value="tr2: [if(okay)]"/>
- </connectionDecorators>
- <bendpoints x="343" y="272"/>
- <bendpoints x="289" y="288"/>
- <bendpoints x="227" y="307"/>
- <bendpoints x="168" y="325"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr4: <checkCard:clie..."/>
- </connectionDecorators>
- <bendpoints x="135" y="345"/>
- <bendpoints x="148" y="345"/>
- <bendpoints x="159" y="346"/>
- <bendpoints x="167" y="347"/>
- <bendpoints x="170" y="350"/>
- <bendpoints x="167" y="352"/>
- <bendpoints x="159" y="353"/>
- <bendpoints x="148" y="354"/>
- <bendpoints x="135" y="354"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr5_vm"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="13" y="-7" font="//@fonts.0" value="tr5_vm: <checkPIN:cl..."/>
- </connectionDecorators>
- <bendpoints x="162" y="336"/>
- <bendpoints x="208" y="334"/>
- <bendpoints x="250" y="335"/>
- <bendpoints x="282" y="341"/>
- <bendpoints x="294" y="350"/>
- <bendpoints x="282" y="358"/>
- <bendpoints x="250" y="364"/>
- <bendpoints x="208" y="365"/>
- <bendpoints x="162" y="363"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#InitialTransition:AuthServer$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="393" y="92"/>
- <bendpoints x="393" y="105"/>
- <bendpoints x="393" y="120"/>
- <bendpoints x="393" y="134"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr6"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-6" font="//@fonts.0" value="tr6: <hello:client>"/>
- </connectionDecorators>
- <bendpoints x="393" y="189"/>
- <bendpoints x="393" y="203"/>
- <bendpoints x="393" y="218"/>
- <bendpoints x="393" y="231"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AuthServer" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="584" height="426"/> + <link> + <businessObjects href="../cashTerminal.room#ActorClass:AuthServer"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="605" height="445" x="-10" y="-9"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="525" height="365" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="525" height="365" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:AuthServer$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="525" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="383" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:AuthServer$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="314"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$standby"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1 //@connections.2 //@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="standby"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="445" y="314"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$error"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="error"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="343" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:AuthServer$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="379" y="241"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ChoicePoint:AuthServer$cp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0 //@connections.1" incomingConnections="//@connections.5"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:AuthServer$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-8" font="//@fonts.0" value="tr0: [else]"/> + </connectionDecorators> + <bendpoints x="418" y="279"/> + <bendpoints x="433" y="293"/> + <bendpoints x="450" y="308"/> + <bendpoints x="465" y="322"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#CPBranchTransition:AuthServer$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="34" y="-8" font="//@fonts.0" value="tr2: [if(okay)]"/> + </connectionDecorators> + <bendpoints x="343" y="272"/> + <bendpoints x="289" y="288"/> + <bendpoints x="227" y="307"/> + <bendpoints x="168" y="325"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr4: <checkCard:clie..."/> + </connectionDecorators> + <bendpoints x="135" y="345"/> + <bendpoints x="148" y="345"/> + <bendpoints x="159" y="346"/> + <bendpoints x="167" y="347"/> + <bendpoints x="170" y="350"/> + <bendpoints x="167" y="352"/> + <bendpoints x="159" y="353"/> + <bendpoints x="148" y="354"/> + <bendpoints x="135" y="354"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr5_vm"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="13" y="-7" font="//@fonts.0" value="tr5_vm: <checkPIN:cl..."/> + </connectionDecorators> + <bendpoints x="162" y="336"/> + <bendpoints x="208" y="334"/> + <bendpoints x="250" y="335"/> + <bendpoints x="282" y="341"/> + <bendpoints x="294" y="350"/> + <bendpoints x="282" y="358"/> + <bendpoints x="250" y="364"/> + <bendpoints x="208" y="365"/> + <bendpoints x="162" y="363"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#InitialTransition:AuthServer$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="393" y="92"/> + <bendpoints x="393" y="105"/> + <bendpoints x="393" y="120"/> + <bendpoints x="393" y="134"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:AuthServer$tr6"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-6" font="//@fonts.0" value="tr6: <hello:client>"/> + </connectionDecorators> + <bendpoints x="393" y="189"/> + <bendpoints x="393" y="203"/> + <bendpoints x="393" y="218"/> + <bendpoints x="393" y="231"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.Controller.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.Controller.behavior index 66b6cc173..e1a44abec 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.Controller.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/CashTerminal.Controller.behavior @@ -1,824 +1,824 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of Controller" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.1/@link //@children.1/@children.1/@link //@children.1/@children.2/@link //@children.0/@children.5/@children.1/@link //@children.1/@children.3/@link //@children.0/@children.5/@children.2/@link //@children.1/@children.4/@link //@children.1/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@children.2/@link //@children.2/@children.1/@link //@children.0/@children.6/@children.1/@link //@children.2/@children.2/@link //@children.0/@children.6/@children.2/@link //@children.2/@children.3/@link //@children.2/@children.4/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@connections.15/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="576" height="552"/>
- <link>
- <businessObjects href="../cashTerminal.room#ActorClass:Controller"/>
- </link>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="596" height="572" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="516" height="492" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="516" height="492" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:Controller$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="516" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="338" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:Controller$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="298" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$state0_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9 //@connections.10" incomingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_sm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="225" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$idle_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.11" incomingConnections="//@connections.10 //@connections.13 //@connections.14 //@connections.15" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="idle_sm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="371" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$offline"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="offline"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="175" height="104" x="67" y="318">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="115" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="90" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.11" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="115" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="handleCard"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="88" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.12" referencedGraphicsAlgorithm="//@children.0/@children.5/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="84" y="-1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.15" referencedGraphicsAlgorithm="//@children.0/@children.5/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="167" height="104" x="229" y="428">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="107" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="82" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$handlePIN"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.14" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="107" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="handlePIN"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="22" y="-1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#EntryPoint:Controller$handlePIN$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.12" referencedGraphicsAlgorithm="//@children.0/@children.6/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="99" y="-1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handlePIN$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.13" referencedGraphicsAlgorithm="//@children.0/@children.6/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:Controller$handleCard$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/handleCard"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:Controller$handleCard$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.2"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard$state0_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.3" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.1/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_sm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard$wait_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wait_sm"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#StateGraph:Controller$handlePIN$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/handlePIN"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#EntryPoint:Controller$handlePIN$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handlePIN$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="136" y="178">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#SimpleState:Controller$handlePIN$wait_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.4 //@connections.7" referencedGraphicsAlgorithm="//@children.2/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wait_sm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../cashTerminal.room#ChoicePoint:Controller$handlePIN$cp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6 //@connections.7" incomingConnections="//@connections.5"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#InitialTransition:Controller$handleCard$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <validCard:auth..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.5/@anchors.0" end="//@children.1/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <pinEntered:ter..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr2"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <invalidCard:au..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$handlePIN$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.3/@anchors.0" end="//@children.2/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handlePIN$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <wrongPIN:auth>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.4/@anchors.0" end="//@children.2/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$handlePIN$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: [else]"/>
- </connectionDecorators>
- <bendpoints x="694" y="303"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.4/@anchors.0" end="//@children.2/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#CPBranchTransition:Controller$handlePIN$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: [if(count_tries..."/>
- </connectionDecorators>
- <bendpoints x="313" y="389"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#InitialTransition:Controller$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="348" y="91"/>
- <bendpoints x="348" y="105"/>
- <bendpoints x="348" y="119"/>
- <bendpoints x="348" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-7" font="//@fonts.0" value="tr0: <serviceNA:auth..."/>
- </connectionDecorators>
- <bendpoints x="368" y="188"/>
- <bendpoints x="379" y="202"/>
- <bendpoints x="390" y="216"/>
- <bendpoints x="401" y="230"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-1" y="11" font="//@fonts.0" value="tr1: <hello:auth>"/>
- </connectionDecorators>
- <bendpoints x="309" y="175"/>
- <bendpoints x="300" y="180"/>
- <bendpoints x="292" y="186"/>
- <bendpoints x="284" y="193"/>
- <bendpoints x="278" y="201"/>
- <bendpoints x="274" y="209"/>
- <bendpoints x="272" y="217"/>
- <bendpoints x="271" y="226"/>
- <bendpoints x="271" y="234"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr2"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-37" y="22" font="//@fonts.0" value="tr2: <cardEntered:te..."/>
- </connectionDecorators>
- <bendpoints x="208" y="261"/>
- <bendpoints x="165" y="266"/>
- <bendpoints x="123" y="273"/>
- <bendpoints x="87" y="283"/>
- <bendpoints x="65" y="297"/>
- <bendpoints x="60" y="306"/>
- <bendpoints x="61" y="315"/>
- <bendpoints x="67" y="323"/>
- <bendpoints x="76" y="331"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.5/@children.1/@anchors.0" end="//@children.0/@children.6/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr3"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="11" y="-7" font="//@fonts.0" value="tr3: "/>
- </connectionDecorators>
- <bendpoints x="193" y="394"/>
- <bendpoints x="213" y="408"/>
- <bendpoints x="233" y="422"/>
- <bendpoints x="253" y="436"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.6/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr4"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="17" y="25" font="//@fonts.0" value="tr4: "/>
- </connectionDecorators>
- <bendpoints x="377" y="432"/>
- <bendpoints x="403" y="412"/>
- <bendpoints x="424" y="389"/>
- <bendpoints x="433" y="364"/>
- <bendpoints x="427" y="338"/>
- <bendpoints x="408" y="314"/>
- <bendpoints x="383" y="296"/>
- <bendpoints x="356" y="281"/>
- <bendpoints x="329" y="271"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr5"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-11" font="//@fonts.0" value="tr5: <correctPIN:aut..."/>
- </connectionDecorators>
- <bendpoints x="295" y="417"/>
- <bendpoints x="290" y="378"/>
- <bendpoints x="285" y="337"/>
- <bendpoints x="280" y="300"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.5/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr6"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" font="//@fonts.0" value="tr6: "/>
- </connectionDecorators>
- <bendpoints x="188" y="325"/>
- <bendpoints x="206" y="311"/>
- <bendpoints x="225" y="297"/>
- <bendpoints x="242" y="284"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of Controller" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.1/@link //@children.1/@children.1/@link //@children.1/@children.2/@link //@children.0/@children.5/@children.1/@link //@children.1/@children.3/@link //@children.0/@children.5/@children.2/@link //@children.1/@children.4/@link //@children.1/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@children.2/@link //@children.2/@children.1/@link //@children.0/@children.6/@children.1/@link //@children.2/@children.2/@link //@children.0/@children.6/@children.2/@link //@children.2/@children.3/@link //@children.2/@children.4/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@connections.15/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="576" height="552"/> + <link> + <businessObjects href="../cashTerminal.room#ActorClass:Controller"/> + </link> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="596" height="572" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="516" height="492" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="516" height="492" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:Controller$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="516" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="338" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:Controller$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="298" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$state0_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9 //@connections.10" incomingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_sm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="225" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$idle_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.11" incomingConnections="//@connections.10 //@connections.13 //@connections.14 //@connections.15" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="idle_sm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="371" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$offline"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="offline"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="175" height="104" x="67" y="318"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="115" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="90" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="57" y="38"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.11" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="115" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="handleCard"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="88" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.12" referencedGraphicsAlgorithm="//@children.0/@children.5/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="84" y="-1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.15" referencedGraphicsAlgorithm="//@children.0/@children.5/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="167" height="104" x="229" y="428"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="107" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="82" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="53" y="38"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$handlePIN"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.14" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="107" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="handlePIN"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="22" y="-1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#EntryPoint:Controller$handlePIN$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.12" referencedGraphicsAlgorithm="//@children.0/@children.6/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="99" y="-1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handlePIN$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.13" referencedGraphicsAlgorithm="//@children.0/@children.6/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:Controller$handleCard$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/handleCard"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:Controller$handleCard$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.2"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handleCard$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard$state0_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.3" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.1/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_sm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$handleCard$wait_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wait_sm"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#StateGraph:Controller$handlePIN$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/handlePIN"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#EntryPoint:Controller$handlePIN$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ExitPoint:Controller$handlePIN$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="136" y="178"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#SimpleState:Controller$handlePIN$wait_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.4 //@connections.7" referencedGraphicsAlgorithm="//@children.2/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wait_sm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../cashTerminal.room#ChoicePoint:Controller$handlePIN$cp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6 //@connections.7" incomingConnections="//@connections.5"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#InitialTransition:Controller$handleCard$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <validCard:auth..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.5/@anchors.0" end="//@children.1/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <pinEntered:ter..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.4/@anchors.0" end="//@children.1/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handleCard$tr2"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <invalidCard:au..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$handlePIN$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.3/@anchors.0" end="//@children.2/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$handlePIN$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <wrongPIN:auth>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.4/@anchors.0" end="//@children.2/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$handlePIN$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: [else]"/> + </connectionDecorators> + <bendpoints x="694" y="303"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.2/@children.4/@anchors.0" end="//@children.2/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#CPBranchTransition:Controller$handlePIN$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: [if(count_tries..."/> + </connectionDecorators> + <bendpoints x="313" y="389"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#InitialTransition:Controller$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="348" y="91"/> + <bendpoints x="348" y="105"/> + <bendpoints x="348" y="119"/> + <bendpoints x="348" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-7" font="//@fonts.0" value="tr0: <serviceNA:auth..."/> + </connectionDecorators> + <bendpoints x="368" y="188"/> + <bendpoints x="379" y="202"/> + <bendpoints x="390" y="216"/> + <bendpoints x="401" y="230"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-1" y="11" font="//@fonts.0" value="tr1: <hello:auth>"/> + </connectionDecorators> + <bendpoints x="309" y="175"/> + <bendpoints x="300" y="180"/> + <bendpoints x="292" y="186"/> + <bendpoints x="284" y="193"/> + <bendpoints x="278" y="201"/> + <bendpoints x="274" y="209"/> + <bendpoints x="272" y="217"/> + <bendpoints x="271" y="226"/> + <bendpoints x="271" y="234"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr2"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-37" y="22" font="//@fonts.0" value="tr2: <cardEntered:te..."/> + </connectionDecorators> + <bendpoints x="208" y="261"/> + <bendpoints x="165" y="266"/> + <bendpoints x="123" y="273"/> + <bendpoints x="87" y="283"/> + <bendpoints x="65" y="297"/> + <bendpoints x="60" y="306"/> + <bendpoints x="61" y="315"/> + <bendpoints x="67" y="323"/> + <bendpoints x="76" y="331"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.5/@children.1/@anchors.0" end="//@children.0/@children.6/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr3"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="11" y="-7" font="//@fonts.0" value="tr3: "/> + </connectionDecorators> + <bendpoints x="193" y="394"/> + <bendpoints x="213" y="408"/> + <bendpoints x="233" y="422"/> + <bendpoints x="253" y="436"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.6/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr4"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="17" y="25" font="//@fonts.0" value="tr4: "/> + </connectionDecorators> + <bendpoints x="377" y="432"/> + <bendpoints x="403" y="412"/> + <bendpoints x="424" y="389"/> + <bendpoints x="433" y="364"/> + <bendpoints x="427" y="338"/> + <bendpoints x="408" y="314"/> + <bendpoints x="383" y="296"/> + <bendpoints x="356" y="281"/> + <bendpoints x="329" y="271"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#TriggeredTransition:Controller$tr5"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-11" font="//@fonts.0" value="tr5: <correctPIN:aut..."/> + </connectionDecorators> + <bendpoints x="295" y="417"/> + <bendpoints x="290" y="378"/> + <bendpoints x="285" y="337"/> + <bendpoints x="280" y="300"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.5/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../cashTerminal.room#ContinuationTransition:Controller$tr6"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" font="//@fonts.0" value="tr6: "/> + </connectionDecorators> + <bendpoints x="188" y="325"/> + <bendpoints x="206" y="311"/> + <bendpoints x="225" y="297"/> + <bendpoints x="242" y="284"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Reachability.Testee_Super_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Reachability.Testee_Super_ac.behavior index a7ebd3c34..384db42a0 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Reachability.Testee_Super_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Reachability.Testee_Super_ac.behavior @@ -1,3009 +1,3009 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of Testee_Super_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@children.0/@children.9/@link //@children.0/@children.10/@link //@children.0/@children.11/@link //@children.0/@children.12/@link //@children.0/@children.13/@link //@children.0/@children.14/@link //@children.0/@children.15/@link //@children.0/@children.16/@link //@children.0/@children.17/@link //@children.0/@children.18/@link //@children.1/@link //@children.1/@children.1/@link //@children.0/@children.2/@children.1/@link //@children.1/@children.2/@link //@children.0/@children.2/@children.2/@link //@children.1/@children.3/@link //@children.0/@children.2/@children.3/@link //@children.1/@children.4/@link //@children.0/@children.2/@children.4/@link //@children.1/@children.5/@link //@children.0/@children.2/@children.5/@link //@children.1/@children.6/@link //@children.0/@children.2/@children.6/@link //@children.1/@children.7/@link //@children.0/@children.2/@children.7/@link //@children.1/@children.8/@link //@children.0/@children.2/@children.8/@link //@children.1/@children.9/@link //@children.0/@children.2/@children.9/@link //@children.1/@children.10/@link //@children.1/@children.11/@link //@children.1/@children.12/@link //@children.1/@children.13/@link //@children.2/@link //@children.2/@children.1/@link //@children.2/@children.2/@link //@connections.0/@link //@children.3/@link //@children.3/@children.1/@link //@children.3/@children.2/@link //@children.1/@children.11/@children.1/@link //@children.3/@children.3/@link //@children.4/@link //@children.4/@children.1/@link //@children.3/@children.3/@children.1/@link //@children.4/@children.2/@link //@children.3/@children.3/@children.2/@link //@children.4/@children.3/@link //@children.4/@children.4/@link //@children.4/@children.5/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@connections.15/@link //@connections.16/@link //@connections.17/@link //@connections.18/@link //@children.5/@link //@children.5/@children.1/@link //@children.5/@children.2/@link //@children.0/@children.14/@children.1/@link //@children.5/@children.3/@link //@children.0/@children.14/@children.2/@link //@children.5/@children.4/@link //@children.0/@children.14/@children.3/@link //@children.5/@children.5/@link //@children.5/@children.6/@link //@connections.19/@link //@connections.20/@link //@connections.21/@link //@connections.22/@link //@children.6/@link //@children.6/@children.1/@link //@children.6/@children.2/@link //@children.0/@children.18/@children.1/@link //@children.6/@children.3/@link //@children.6/@children.4/@link //@children.6/@children.5/@link //@children.7/@link //@children.7/@children.1/@link //@children.7/@children.2/@link //@children.6/@children.4/@children.1/@link //@children.7/@children.3/@link //@children.7/@children.4/@link //@connections.23/@link //@connections.24/@link //@connections.25/@link //@connections.26/@link //@connections.27/@link //@connections.28/@link //@connections.29/@link //@connections.30/@link //@connections.31/@link //@connections.32/@link //@connections.33/@link //@connections.34/@link //@connections.35/@link //@connections.36/@link //@connections.37/@link //@connections.38/@link //@connections.39/@link //@connections.40/@link //@connections.41/@link //@connections.42/@link //@connections.43/@link //@connections.44/@link //@connections.45/@link //@connections.46/@link //@connections.47/@link //@connections.48/@link //@connections.49/@link //@connections.50/@link //@connections.51/@link //@connections.52/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1160" height="662"/>
- <link>
- <businessObjects href="../reachability.room#ActorClass:Testee_Super_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="1181" height="682" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="1101" height="602" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="1101" height="602" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="1101" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="451" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.37" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="231" y="442">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="-1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.30" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="51" y="-1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.31" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="17">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp2_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.32" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp2_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="59" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp3_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.34" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp3_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="35">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp4_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.36" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp4_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="88" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp5_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.35" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp5_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="25">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp6_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.49" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp6_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="24">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp7_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.33" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp7_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="22" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp8_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.48" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.9/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp8_0"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="113" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state01_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.30" incomingConnections="//@connections.39" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state01_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="252" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state02_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.31" incomingConnections="//@connections.40" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state02_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="1011" y="291">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state03_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.32" incomingConnections="//@connections.47" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state03_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="114" y="552">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state04_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.33 //@connections.48 //@connections.49" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state04_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="292" y="552">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state07_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.34" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state07_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="402" y="552">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state08_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.35" referencedGraphicsAlgorithm="//@children.0/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state08_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="512" y="552">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state09_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.36" referencedGraphicsAlgorithm="//@children.0/@children.9/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state09_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="411" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.38 //@connections.41 //@connections.43 //@connections.50" incomingConnections="//@connections.37" referencedGraphicsAlgorithm="//@children.0/@children.10/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="241" y="229">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$stateA_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.39 //@connections.40" incomingConnections="//@connections.38" referencedGraphicsAlgorithm="//@children.0/@children.11/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="stateA_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="417" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.41 //@connections.52" referencedGraphicsAlgorithm="//@children.0/@children.12/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="878" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.42 //@connections.47 //@connections.51" referencedGraphicsAlgorithm="//@children.0/@children.13/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="706" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.45" incomingConnections="//@connections.42" referencedGraphicsAlgorithm="//@children.0/@children.14/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp0_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.44" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp0_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="4">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state2_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.43" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="100" y="44">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.46" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp1_1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="617" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state20_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.44" referencedGraphicsAlgorithm="//@children.0/@children.15/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state20_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="727" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state21_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.45" referencedGraphicsAlgorithm="//@children.0/@children.16/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state21_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="869" y="346">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state21_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.46" referencedGraphicsAlgorithm="//@children.0/@children.17/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state21_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="538" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.52" incomingConnections="//@connections.50" referencedGraphicsAlgorithm="//@children.0/@children.18/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="1">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$tp0_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.51" referencedGraphicsAlgorithm="//@children.0/@children.18/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/>
- </children>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="40">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="120">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="200">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp2_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.11"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp2_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="280">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp3_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.12"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp3_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp4_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.16"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp4_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="440">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp5_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.15 //@connections.17"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp5_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="520">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp6_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.13"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp6_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="600">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp7_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.14"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp7_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="680">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp8_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.18"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp8_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="100" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state00_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.12" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.1/@children.10/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state00_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="260" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.17 //@connections.18" incomingConnections="//@connections.10" referencedGraphicsAlgorithm="//@children.1/@children.11/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state01_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="27">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.16" referencedGraphicsAlgorithm="//@children.1/@children.11/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="420" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state03_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.13" incomingConnections="//@connections.11" referencedGraphicsAlgorithm="//@children.1/@children.12/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state03_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="580" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state02_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.14 //@connections.15" referencedGraphicsAlgorithm="//@children.1/@children.13/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state02_0"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state00_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state00_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state00_1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state00_1$state0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state01_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.3/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" incomingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.3/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.3/@children.3/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="37">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.3/@children.3/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/>
- </children>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$state0_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state01_1/state0_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.4 //@connections.5"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1$state0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.4/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1$state1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.4/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ChoicePoint:Testee_Super_ac$state0_1$state01_1$state0_1$cp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state2_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state2_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state2_1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.19" referencedGraphicsAlgorithm="//@children.5/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="160">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp0_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.22"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state2_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.20"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="560">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp1_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.21"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1$state0_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.22" incomingConnections="//@connections.19" referencedGraphicsAlgorithm="//@children.5/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1$state0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.21" incomingConnections="//@connections.20" referencedGraphicsAlgorithm="//@children.5/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state3_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.25" referencedGraphicsAlgorithm="//@children.6/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$tp0_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.26"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state30_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.28 //@connections.29" incomingConnections="//@connections.25 //@connections.28" referencedGraphicsAlgorithm="//@children.6/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state30_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.27" incomingConnections="//@connections.27" referencedGraphicsAlgorithm="//@children.6/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state31_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="27">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$state31_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.29" referencedGraphicsAlgorithm="//@children.6/@children.4/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state32_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.26" referencedGraphicsAlgorithm="//@children.6/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state32_0"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$state31_1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state3_1/state31_1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$state31_1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.24" referencedGraphicsAlgorithm="//@children.7/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$state31_1$tp0_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.23"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="124" height="90" x="204" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="39" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1$state300_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.23" referencedGraphicsAlgorithm="//@children.7/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="64" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state300_1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="124" height="90" x="470" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="39" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1$state301_1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.24" referencedGraphicsAlgorithm="//@children.7/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="64" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state301_1"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state0_1$state00_1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.1/@anchors.0" end="//@children.4/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.5/@anchors.0" end="//@children.4/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr3_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_1: [else]"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.5/@anchors.0" end="//@children.4/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#CPBranchTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr4_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4_1: [true]"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.4/@anchors.0" end="//@children.4/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr2_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.3/@anchors.0" end="//@children.4/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr1_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in2:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.1/@anchors.0" end="//@children.3/@children.3/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state0_1$state01_1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@children.2/@anchors.0" end="//@children.3/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@anchors.0" end="//@children.3/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$tr2_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in2:p>"/>
- </connectionDecorators>
- <bendpoints x="440" y="325"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.10/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.2/@anchors.0" end="//@children.1/@children.11/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr1_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.3/@anchors.0" end="//@children.1/@children.12/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr2_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_0: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.10/@anchors.0" end="//@children.1/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr6_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr6_1: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.12/@anchors.0" end="//@children.1/@children.7/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr3_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_0: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.13/@anchors.0" end="//@children.1/@children.8/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr4zzz_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4zzz_0: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.13/@anchors.0" end="//@children.1/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr5_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_0: <in2:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@children.1/@anchors.0" end="//@children.1/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr4_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@anchors.0" end="//@children.1/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr2_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@anchors.0" end="//@children.1/@children.9/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr8_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr8_0: <in2:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.1/@anchors.0" end="//@children.5/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state2_1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.3/@anchors.0" end="//@children.5/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state2_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.6/@anchors.0" end="//@children.5/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state2_1$tr1_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in3:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.5/@anchors.0" end="//@children.5/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state2_1$tr1_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_0: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.7/@children.2/@anchors.0" end="//@children.7/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state3_1$state31_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.7/@children.1/@anchors.0" end="//@children.7/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state3_1$state31_1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.1/@anchors.0" end="//@children.6/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state3_1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.2/@anchors.0" end="//@children.6/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state3_1$tr30_0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr30_0: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.4/@anchors.0" end="//@children.6/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr0_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: <in2:p>"/>
- </connectionDecorators>
- <bendpoints x="440" y="325"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.3/@anchors.0" end="//@children.6/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr1_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in4:p>"/>
- </connectionDecorators>
- <bendpoints x="240" y="325"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.3/@anchors.0" end="//@children.6/@children.4/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr2_1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="17" y="-7" font="//@fonts.0" value="tr0_1: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="178" y="404"/>
- <bendpoints x="185" y="412"/>
- <bendpoints x="193" y="421"/>
- <bendpoints x="201" y="429"/>
- <bendpoints x="210" y="437"/>
- <bendpoints x="218" y="443"/>
- <bendpoints x="226" y="448"/>
- <bendpoints x="234" y="453"/>
- <bendpoints x="242" y="458"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr2_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="1" font="//@fonts.0" value="tr2_1: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="302" y="408"/>
- <bendpoints x="302" y="421"/>
- <bendpoints x="302" y="435"/>
- <bendpoints x="302" y="449"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr3_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="306" y="-72" font="//@fonts.0" value="tr3_0: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="1037" y="352"/>
- <bendpoints x="1024" y="364"/>
- <bendpoints x="1009" y="376"/>
- <bendpoints x="992" y="387"/>
- <bendpoints x="974" y="396"/>
- <bendpoints x="879" y="422"/>
- <bendpoints x="746" y="444"/>
- <bendpoints x="598" y="460"/>
- <bendpoints x="460" y="472"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.8/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr0_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-14" y="18" font="//@fonts.0" value="tr0_0: "/>
- </connectionDecorators>
- <bendpoints x="231" y="490"/>
- <bendpoints x="210" y="496"/>
- <bendpoints x="190" y="504"/>
- <bendpoints x="172" y="516"/>
- <bendpoints x="157" y="531"/>
- <bendpoints x="153" y="539"/>
- <bendpoints x="152" y="547"/>
- <bendpoints x="153" y="556"/>
- <bendpoints x="155" y="564"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.4/@anchors.0" end="//@children.0/@children.7/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr01_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-15" font="//@fonts.0" value="tr01_1: "/>
- </connectionDecorators>
- <bendpoints x="316" y="519"/>
- <bendpoints x="321" y="533"/>
- <bendpoints x="327" y="547"/>
- <bendpoints x="332" y="560"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.6/@anchors.0" end="//@children.0/@children.8/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr02_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-12" font="//@fonts.0" value="tr02_1: "/>
- </connectionDecorators>
- <bendpoints x="348" y="511"/>
- <bendpoints x="356" y="516"/>
- <bendpoints x="364" y="521"/>
- <bendpoints x="372" y="526"/>
- <bendpoints x="380" y="531"/>
- <bendpoints x="392" y="539"/>
- <bendpoints x="404" y="548"/>
- <bendpoints x="415" y="556"/>
- <bendpoints x="425" y="564"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.5/@anchors.0" end="//@children.0/@children.9/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr03_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="30" y="-1" font="//@fonts.0" value="tr03_1: "/>
- </connectionDecorators>
- <bendpoints x="373" y="503"/>
- <bendpoints x="393" y="509"/>
- <bendpoints x="415" y="516"/>
- <bendpoints x="436" y="523"/>
- <bendpoints x="457" y="531"/>
- <bendpoints x="475" y="539"/>
- <bendpoints x="492" y="547"/>
- <bendpoints x="509" y="556"/>
- <bendpoints x="525" y="564"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.10/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="461" y="91"/>
- <bendpoints x="461" y="105"/>
- <bendpoints x="461" y="119"/>
- <bendpoints x="461" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.11/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-33" y="25" font="//@fonts.0" value="tr_1: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="408" y="163"/>
- <bendpoints x="383" y="167"/>
- <bendpoints x="357" y="174"/>
- <bendpoints x="332" y="185"/>
- <bendpoints x="310" y="201"/>
- <bendpoints x="303" y="209"/>
- <bendpoints x="298" y="219"/>
- <bendpoints x="295" y="230"/>
- <bendpoints x="293" y="240"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.11/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0a_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-4" y="18" font="//@fonts.0" value="tr0a_1: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="248" y="278"/>
- <bendpoints x="234" y="284"/>
- <bendpoints x="220" y="292"/>
- <bendpoints x="207" y="301"/>
- <bendpoints x="195" y="311"/>
- <bendpoints x="187" y="321"/>
- <bendpoints x="180" y="333"/>
- <bendpoints x="174" y="344"/>
- <bendpoints x="170" y="356"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.11/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0b_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-4" font="//@fonts.0" value="tr0b_1: <in2:p>"/>
- </connectionDecorators>
- <bendpoints x="292" y="289"/>
- <bendpoints x="292" y="301"/>
- <bendpoints x="293" y="314"/>
- <bendpoints x="294" y="328"/>
- <bendpoints x="295" y="341"/>
- <bendpoints x="296" y="346"/>
- <bendpoints x="297" y="351"/>
- <bendpoints x="297" y="356"/>
- <bendpoints x="298" y="361"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.12/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr11_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-14" font="//@fonts.0" value="tr11_1: <in2:p>"/>
- </connectionDecorators>
- <bendpoints x="455" y="187"/>
- <bendpoints x="453" y="199"/>
- <bendpoints x="450" y="213"/>
- <bendpoints x="448" y="228"/>
- <bendpoints x="446" y="242"/>
- <bendpoints x="445" y="252"/>
- <bendpoints x="445" y="260"/>
- <bendpoints x="445" y="268"/>
- <bendpoints x="445" y="276"/>
- <bendpoints x="446" y="286"/>
- <bendpoints x="449" y="304"/>
- <bendpoints x="452" y="321"/>
- <bendpoints x="456" y="338"/>
- <bendpoints x="459" y="353"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.14/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$trC_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="38" y="-23" font="//@fonts.0" value="trC_0: <in2:p>"/>
- </connectionDecorators>
- <bendpoints x="910" y="184"/>
- <bendpoints x="902" y="192"/>
- <bendpoints x="893" y="201"/>
- <bendpoints x="884" y="209"/>
- <bendpoints x="874" y="217"/>
- <bendpoints x="865" y="223"/>
- <bendpoints x="856" y="228"/>
- <bendpoints x="847" y="234"/>
- <bendpoints x="838" y="238"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.14/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr20_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="51" font="//@fonts.0" value="tr20_1: <in3:p>"/>
- </connectionDecorators>
- <bendpoints x="508" y="176"/>
- <bendpoints x="528" y="182"/>
- <bendpoints x="548" y="188"/>
- <bendpoints x="569" y="194"/>
- <bendpoints x="590" y="201"/>
- <bendpoints x="601" y="205"/>
- <bendpoints x="610" y="208"/>
- <bendpoints x="618" y="210"/>
- <bendpoints x="626" y="213"/>
- <bendpoints x="637" y="217"/>
- <bendpoints x="655" y="223"/>
- <bendpoints x="673" y="229"/>
- <bendpoints x="692" y="235"/>
- <bendpoints x="709" y="241"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@children.1/@anchors.0" end="//@children.0/@children.15/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr20_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="18" y="-10" font="//@fonts.0" value="tr20_0: "/>
- </connectionDecorators>
- <bendpoints x="738" y="291"/>
- <bendpoints x="731" y="295"/>
- <bendpoints x="725" y="300"/>
- <bendpoints x="720" y="306"/>
- <bendpoints x="714" y="311"/>
- <bendpoints x="705" y="322"/>
- <bendpoints x="696" y="333"/>
- <bendpoints x="688" y="345"/>
- <bendpoints x="681" y="356"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@anchors.0" end="//@children.0/@children.16/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr21_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-4" font="//@fonts.0" value="tr21_0: <in3:p>"/>
- </connectionDecorators>
- <bendpoints x="772" y="291"/>
- <bendpoints x="772" y="296"/>
- <bendpoints x="771" y="301"/>
- <bendpoints x="771" y="306"/>
- <bendpoints x="770" y="311"/>
- <bendpoints x="770" y="318"/>
- <bendpoints x="769" y="323"/>
- <bendpoints x="769" y="329"/>
- <bendpoints x="770" y="334"/>
- <bendpoints x="770" y="341"/>
- <bendpoints x="771" y="346"/>
- <bendpoints x="771" y="351"/>
- <bendpoints x="772" y="356"/>
- <bendpoints x="773" y="361"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@children.3/@anchors.0" end="//@children.0/@children.17/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr22_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="15" y="-7" font="//@fonts.0" value="tr22_1: "/>
- </connectionDecorators>
- <bendpoints x="834" y="290"/>
- <bendpoints x="842" y="295"/>
- <bendpoints x="850" y="300"/>
- <bendpoints x="858" y="305"/>
- <bendpoints x="865" y="311"/>
- <bendpoints x="876" y="321"/>
- <bendpoints x="887" y="333"/>
- <bendpoints x="896" y="345"/>
- <bendpoints x="904" y="356"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$trx_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-5" y="-29" font="//@fonts.0" value="trx_0: <in1:p>"/>
- </connectionDecorators>
- <bendpoints x="961" y="180"/>
- <bendpoints x="967" y="185"/>
- <bendpoints x="974" y="190"/>
- <bendpoints x="980" y="195"/>
- <bendpoints x="986" y="201"/>
- <bendpoints x="1005" y="223"/>
- <bendpoints x="1021" y="247"/>
- <bendpoints x="1035" y="271"/>
- <bendpoints x="1047" y="293"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.9/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr5_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="23" y="-14" font="//@fonts.0" value="tr5_0: "/>
- </connectionDecorators>
- <bendpoints x="256" y="519"/>
- <bendpoints x="237" y="533"/>
- <bendpoints x="217" y="547"/>
- <bendpoints x="199" y="560"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.7/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr6_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-24" y="17" font="//@fonts.0" value="tr6_0: "/>
- </connectionDecorators>
- <bendpoints x="210" y="491"/>
- <bendpoints x="165" y="497"/>
- <bendpoints x="123" y="505"/>
- <bendpoints x="87" y="516"/>
- <bendpoints x="65" y="531"/>
- <bendpoints x="60" y="546"/>
- <bendpoints x="69" y="558"/>
- <bendpoints x="88" y="568"/>
- <bendpoints x="111" y="575"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.18/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr30_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-17" y="-31" font="//@fonts.0" value="tr30_1: <in4:p>"/>
- </connectionDecorators>
- <bendpoints x="471" y="184"/>
- <bendpoints x="475" y="193"/>
- <bendpoints x="481" y="201"/>
- <bendpoints x="488" y="210"/>
- <bendpoints x="495" y="217"/>
- <bendpoints x="507" y="226"/>
- <bendpoints x="519" y="233"/>
- <bendpoints x="532" y="240"/>
- <bendpoints x="545" y="245"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.18/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr31_0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-9" y="6" font="//@fonts.0" value="tr31_0: <in3:p>"/>
- </connectionDecorators>
- <bendpoints x="877" y="174"/>
- <bendpoints x="853" y="179"/>
- <bendpoints x="828" y="186"/>
- <bendpoints x="801" y="193"/>
- <bendpoints x="775" y="201"/>
- <bendpoints x="767" y="204"/>
- <bendpoints x="748" y="211"/>
- <bendpoints x="721" y="221"/>
- <bendpoints x="690" y="233"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.18/@anchors.0" end="//@children.0/@children.12/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr31_1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="20" y="-4" font="//@fonts.0" value="tr31_1: <in4:p>"/>
- </connectionDecorators>
- <bendpoints x="564" y="301"/>
- <bendpoints x="543" y="318"/>
- <bendpoints x="522" y="336"/>
- <bendpoints x="501" y="352"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of Testee_Super_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@children.0/@children.9/@link //@children.0/@children.10/@link //@children.0/@children.11/@link //@children.0/@children.12/@link //@children.0/@children.13/@link //@children.0/@children.14/@link //@children.0/@children.15/@link //@children.0/@children.16/@link //@children.0/@children.17/@link //@children.0/@children.18/@link //@children.1/@link //@children.1/@children.1/@link //@children.0/@children.2/@children.1/@link //@children.1/@children.2/@link //@children.0/@children.2/@children.2/@link //@children.1/@children.3/@link //@children.0/@children.2/@children.3/@link //@children.1/@children.4/@link //@children.0/@children.2/@children.4/@link //@children.1/@children.5/@link //@children.0/@children.2/@children.5/@link //@children.1/@children.6/@link //@children.0/@children.2/@children.6/@link //@children.1/@children.7/@link //@children.0/@children.2/@children.7/@link //@children.1/@children.8/@link //@children.0/@children.2/@children.8/@link //@children.1/@children.9/@link //@children.0/@children.2/@children.9/@link //@children.1/@children.10/@link //@children.1/@children.11/@link //@children.1/@children.12/@link //@children.1/@children.13/@link //@children.2/@link //@children.2/@children.1/@link //@children.2/@children.2/@link //@connections.0/@link //@children.3/@link //@children.3/@children.1/@link //@children.3/@children.2/@link //@children.1/@children.11/@children.1/@link //@children.3/@children.3/@link //@children.4/@link //@children.4/@children.1/@link //@children.3/@children.3/@children.1/@link //@children.4/@children.2/@link //@children.3/@children.3/@children.2/@link //@children.4/@children.3/@link //@children.4/@children.4/@link //@children.4/@children.5/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link //@connections.14/@link //@connections.15/@link //@connections.16/@link //@connections.17/@link //@connections.18/@link //@children.5/@link //@children.5/@children.1/@link //@children.5/@children.2/@link //@children.0/@children.14/@children.1/@link //@children.5/@children.3/@link //@children.0/@children.14/@children.2/@link //@children.5/@children.4/@link //@children.0/@children.14/@children.3/@link //@children.5/@children.5/@link //@children.5/@children.6/@link //@connections.19/@link //@connections.20/@link //@connections.21/@link //@connections.22/@link //@children.6/@link //@children.6/@children.1/@link //@children.6/@children.2/@link //@children.0/@children.18/@children.1/@link //@children.6/@children.3/@link //@children.6/@children.4/@link //@children.6/@children.5/@link //@children.7/@link //@children.7/@children.1/@link //@children.7/@children.2/@link //@children.6/@children.4/@children.1/@link //@children.7/@children.3/@link //@children.7/@children.4/@link //@connections.23/@link //@connections.24/@link //@connections.25/@link //@connections.26/@link //@connections.27/@link //@connections.28/@link //@connections.29/@link //@connections.30/@link //@connections.31/@link //@connections.32/@link //@connections.33/@link //@connections.34/@link //@connections.35/@link //@connections.36/@link //@connections.37/@link //@connections.38/@link //@connections.39/@link //@connections.40/@link //@connections.41/@link //@connections.42/@link //@connections.43/@link //@connections.44/@link //@connections.45/@link //@connections.46/@link //@connections.47/@link //@connections.48/@link //@connections.49/@link //@connections.50/@link //@connections.51/@link //@connections.52/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1160" height="662"/> + <link> + <businessObjects href="../reachability.room#ActorClass:Testee_Super_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="1181" height="682" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="1101" height="602" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="1101" height="602" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="1101" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="451" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.37" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="231" y="442"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="-1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.30" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="51" y="-1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.31" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="17"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp2_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.32" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp2_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="59" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp3_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.34" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp3_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="35"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp4_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.36" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp4_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="88" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp5_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.35" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp5_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="25"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp6_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.49" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp6_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="24"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp7_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.33" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp7_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="22" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp8_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.48" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.9/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp8_0"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="113" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state01_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.30" incomingConnections="//@connections.39" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state01_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="252" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state02_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.31" incomingConnections="//@connections.40" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state02_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="1011" y="291"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state03_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.32" incomingConnections="//@connections.47" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state03_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="114" y="552"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state04_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.33 //@connections.48 //@connections.49" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state04_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="292" y="552"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state07_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.34" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state07_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="402" y="552"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state08_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.35" referencedGraphicsAlgorithm="//@children.0/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state08_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="512" y="552"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state09_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.36" referencedGraphicsAlgorithm="//@children.0/@children.9/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state09_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="411" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.38 //@connections.41 //@connections.43 //@connections.50" incomingConnections="//@connections.37" referencedGraphicsAlgorithm="//@children.0/@children.10/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="241" y="229"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$stateA_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.39 //@connections.40" incomingConnections="//@connections.38" referencedGraphicsAlgorithm="//@children.0/@children.11/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="stateA_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="417" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.41 //@connections.52" referencedGraphicsAlgorithm="//@children.0/@children.12/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="878" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.42 //@connections.47 //@connections.51" referencedGraphicsAlgorithm="//@children.0/@children.13/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="706" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.45" incomingConnections="//@connections.42" referencedGraphicsAlgorithm="//@children.0/@children.14/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2_1"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp0_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.44" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" value="tp0_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="-1" y="4"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state2_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.43" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="100" y="44"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.46" referencedGraphicsAlgorithm="//@children.0/@children.14/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" y="37" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="tp1_1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="617" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state20_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.44" referencedGraphicsAlgorithm="//@children.0/@children.15/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state20_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="727" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state21_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.45" referencedGraphicsAlgorithm="//@children.0/@children.16/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state21_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="869" y="346"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state21_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.46" referencedGraphicsAlgorithm="//@children.0/@children.17/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state21_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="162" height="104" x="538" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="102" height="44" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="77" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="51" y="38"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.52" incomingConnections="//@connections.50" referencedGraphicsAlgorithm="//@children.0/@children.18/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="102" height="44" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3_1"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="102" y="1"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$tp0_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.51" referencedGraphicsAlgorithm="//@children.0/@children.18/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/> + </children> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="40"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="120"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="200"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$tp2_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.11"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp2_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="280"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp3_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.12"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp3_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp4_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.16"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp4_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="440"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp5_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.15 //@connections.17"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp5_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="520"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp6_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.13"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp6_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="600"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp7_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.14"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp7_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="680"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$tp8_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.18"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp8_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="100" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state00_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.12" incomingConnections="//@connections.9" referencedGraphicsAlgorithm="//@children.1/@children.10/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state00_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="260" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.17 //@connections.18" incomingConnections="//@connections.10" referencedGraphicsAlgorithm="//@children.1/@children.11/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state01_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="27"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.16" referencedGraphicsAlgorithm="//@children.1/@children.11/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="420" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state03_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.13" incomingConnections="//@connections.11" referencedGraphicsAlgorithm="//@children.1/@children.12/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state03_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="580" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state02_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.14 //@connections.15" referencedGraphicsAlgorithm="//@children.1/@children.13/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state02_0"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state00_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state00_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state00_1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state00_1$state0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state01_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.3/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" incomingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.3/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.3/@children.3/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="37"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.3/@children.3/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/> + </children> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state0_1$state01_1$state0_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state0_1/state01_1/state0_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state0_1$state01_1$state0_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.4 //@connections.5"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1$state0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.4/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state0_1$state01_1$state0_1$state1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.4/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="50" height="50" x="375" y="265"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="25" height="25" x="12" y="12"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ChoicePoint:Testee_Super_ac$state0_1$state01_1$state0_1$cp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="50" height="25" y="12" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="C"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state2_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state2_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state2_1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.19" referencedGraphicsAlgorithm="//@children.5/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="160"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp0_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.22"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state2_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.20"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="560"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#ExitPoint:Testee_Super_ac$state2_1$tp1_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.21"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1$state0_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.22" incomingConnections="//@connections.19" referencedGraphicsAlgorithm="//@children.5/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state2_1$state0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.21" incomingConnections="//@connections.20" referencedGraphicsAlgorithm="//@children.5/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state3_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.25" referencedGraphicsAlgorithm="//@children.6/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$tp0_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.26"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state30_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.28 //@connections.29" incomingConnections="//@connections.25 //@connections.28" referencedGraphicsAlgorithm="//@children.6/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state30_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.27" incomingConnections="//@connections.27" referencedGraphicsAlgorithm="//@children.6/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state31_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="27"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$state31_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.29" referencedGraphicsAlgorithm="//@children.6/@children.4/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state32_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.26" referencedGraphicsAlgorithm="//@children.6/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state32_0"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$state31_1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state3_1/state31_1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#StateGraph:Testee_Super_ac$state3_1$state31_1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.24" referencedGraphicsAlgorithm="//@children.7/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#EntryPoint:Testee_Super_ac$state3_1$state31_1$tp0_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.23"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="124" height="90" x="204" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="39" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1$state300_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.23" referencedGraphicsAlgorithm="//@children.7/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="64" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state300_1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="124" height="90" x="470" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="64" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="39" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="32" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../reachability.room#SimpleState:Testee_Super_ac$state3_1$state31_1$state301_1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.24" referencedGraphicsAlgorithm="//@children.7/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="64" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state301_1"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state0_1$state00_1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.1/@anchors.0" end="//@children.4/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.5/@anchors.0" end="//@children.4/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr3_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_1: [else]"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.5/@anchors.0" end="//@children.4/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#CPBranchTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr4_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4_1: [true]"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.4/@anchors.0" end="//@children.4/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr2_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.4/@children.3/@anchors.0" end="//@children.4/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$state0_1$tr1_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in2:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.1/@anchors.0" end="//@children.3/@children.3/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state0_1$state01_1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@children.2/@anchors.0" end="//@children.3/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$state01_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@anchors.0" end="//@children.3/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$state01_1$tr2_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in2:p>"/> + </connectionDecorators> + <bendpoints x="440" y="325"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.10/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.2/@anchors.0" end="//@children.1/@children.11/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr1_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.3/@anchors.0" end="//@children.1/@children.12/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr2_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_0: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.10/@anchors.0" end="//@children.1/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr6_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr6_1: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.12/@anchors.0" end="//@children.1/@children.7/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr3_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_0: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.13/@anchors.0" end="//@children.1/@children.8/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr4zzz_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4zzz_0: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.13/@anchors.0" end="//@children.1/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr5_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_0: <in2:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@children.1/@anchors.0" end="//@children.1/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state0_1$tr4_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@anchors.0" end="//@children.1/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr2_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.11/@anchors.0" end="//@children.1/@children.9/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state0_1$tr8_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr8_0: <in2:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.1/@anchors.0" end="//@children.5/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state2_1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.3/@anchors.0" end="//@children.5/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state2_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.6/@anchors.0" end="//@children.5/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state2_1$tr1_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in3:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.5/@children.5/@anchors.0" end="//@children.5/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state2_1$tr1_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_0: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.7/@children.2/@anchors.0" end="//@children.7/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state3_1$state31_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.7/@children.1/@anchors.0" end="//@children.7/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state3_1$state31_1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.1/@anchors.0" end="//@children.6/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$state3_1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.2/@anchors.0" end="//@children.6/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$state3_1$tr30_0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr30_0: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.4/@anchors.0" end="//@children.6/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr0_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0_1: <in2:p>"/> + </connectionDecorators> + <bendpoints x="440" y="325"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.3/@anchors.0" end="//@children.6/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr1_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1_1: <in4:p>"/> + </connectionDecorators> + <bendpoints x="240" y="325"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.6/@children.3/@anchors.0" end="//@children.6/@children.4/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$state3_1$tr2_1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2_1: <in1:p>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="17" y="-7" font="//@fonts.0" value="tr0_1: <in1:p>"/> + </connectionDecorators> + <bendpoints x="178" y="404"/> + <bendpoints x="185" y="412"/> + <bendpoints x="193" y="421"/> + <bendpoints x="201" y="429"/> + <bendpoints x="210" y="437"/> + <bendpoints x="218" y="443"/> + <bendpoints x="226" y="448"/> + <bendpoints x="234" y="453"/> + <bendpoints x="242" y="458"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr2_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="1" font="//@fonts.0" value="tr2_1: <in1:p>"/> + </connectionDecorators> + <bendpoints x="302" y="408"/> + <bendpoints x="302" y="421"/> + <bendpoints x="302" y="435"/> + <bendpoints x="302" y="449"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr3_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="306" y="-72" font="//@fonts.0" value="tr3_0: <in1:p>"/> + </connectionDecorators> + <bendpoints x="1037" y="352"/> + <bendpoints x="1024" y="364"/> + <bendpoints x="1009" y="376"/> + <bendpoints x="992" y="387"/> + <bendpoints x="974" y="396"/> + <bendpoints x="879" y="422"/> + <bendpoints x="746" y="444"/> + <bendpoints x="598" y="460"/> + <bendpoints x="460" y="472"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.8/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr0_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-14" y="18" font="//@fonts.0" value="tr0_0: "/> + </connectionDecorators> + <bendpoints x="231" y="490"/> + <bendpoints x="210" y="496"/> + <bendpoints x="190" y="504"/> + <bendpoints x="172" y="516"/> + <bendpoints x="157" y="531"/> + <bendpoints x="153" y="539"/> + <bendpoints x="152" y="547"/> + <bendpoints x="153" y="556"/> + <bendpoints x="155" y="564"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.4/@anchors.0" end="//@children.0/@children.7/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr01_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-15" font="//@fonts.0" value="tr01_1: "/> + </connectionDecorators> + <bendpoints x="316" y="519"/> + <bendpoints x="321" y="533"/> + <bendpoints x="327" y="547"/> + <bendpoints x="332" y="560"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.6/@anchors.0" end="//@children.0/@children.8/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr02_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-12" font="//@fonts.0" value="tr02_1: "/> + </connectionDecorators> + <bendpoints x="348" y="511"/> + <bendpoints x="356" y="516"/> + <bendpoints x="364" y="521"/> + <bendpoints x="372" y="526"/> + <bendpoints x="380" y="531"/> + <bendpoints x="392" y="539"/> + <bendpoints x="404" y="548"/> + <bendpoints x="415" y="556"/> + <bendpoints x="425" y="564"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.5/@anchors.0" end="//@children.0/@children.9/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr03_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="30" y="-1" font="//@fonts.0" value="tr03_1: "/> + </connectionDecorators> + <bendpoints x="373" y="503"/> + <bendpoints x="393" y="509"/> + <bendpoints x="415" y="516"/> + <bendpoints x="436" y="523"/> + <bendpoints x="457" y="531"/> + <bendpoints x="475" y="539"/> + <bendpoints x="492" y="547"/> + <bendpoints x="509" y="556"/> + <bendpoints x="525" y="564"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.10/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#InitialTransition:Testee_Super_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="461" y="91"/> + <bendpoints x="461" y="105"/> + <bendpoints x="461" y="119"/> + <bendpoints x="461" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.11/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-33" y="25" font="//@fonts.0" value="tr_1: <in1:p>"/> + </connectionDecorators> + <bendpoints x="408" y="163"/> + <bendpoints x="383" y="167"/> + <bendpoints x="357" y="174"/> + <bendpoints x="332" y="185"/> + <bendpoints x="310" y="201"/> + <bendpoints x="303" y="209"/> + <bendpoints x="298" y="219"/> + <bendpoints x="295" y="230"/> + <bendpoints x="293" y="240"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.11/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0a_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-4" y="18" font="//@fonts.0" value="tr0a_1: <in1:p>"/> + </connectionDecorators> + <bendpoints x="248" y="278"/> + <bendpoints x="234" y="284"/> + <bendpoints x="220" y="292"/> + <bendpoints x="207" y="301"/> + <bendpoints x="195" y="311"/> + <bendpoints x="187" y="321"/> + <bendpoints x="180" y="333"/> + <bendpoints x="174" y="344"/> + <bendpoints x="170" y="356"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.11/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr0b_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-4" font="//@fonts.0" value="tr0b_1: <in2:p>"/> + </connectionDecorators> + <bendpoints x="292" y="289"/> + <bendpoints x="292" y="301"/> + <bendpoints x="293" y="314"/> + <bendpoints x="294" y="328"/> + <bendpoints x="295" y="341"/> + <bendpoints x="296" y="346"/> + <bendpoints x="297" y="351"/> + <bendpoints x="297" y="356"/> + <bendpoints x="298" y="361"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.12/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr11_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-14" font="//@fonts.0" value="tr11_1: <in2:p>"/> + </connectionDecorators> + <bendpoints x="455" y="187"/> + <bendpoints x="453" y="199"/> + <bendpoints x="450" y="213"/> + <bendpoints x="448" y="228"/> + <bendpoints x="446" y="242"/> + <bendpoints x="445" y="252"/> + <bendpoints x="445" y="260"/> + <bendpoints x="445" y="268"/> + <bendpoints x="445" y="276"/> + <bendpoints x="446" y="286"/> + <bendpoints x="449" y="304"/> + <bendpoints x="452" y="321"/> + <bendpoints x="456" y="338"/> + <bendpoints x="459" y="353"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.14/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$trC_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="38" y="-23" font="//@fonts.0" value="trC_0: <in2:p>"/> + </connectionDecorators> + <bendpoints x="910" y="184"/> + <bendpoints x="902" y="192"/> + <bendpoints x="893" y="201"/> + <bendpoints x="884" y="209"/> + <bendpoints x="874" y="217"/> + <bendpoints x="865" y="223"/> + <bendpoints x="856" y="228"/> + <bendpoints x="847" y="234"/> + <bendpoints x="838" y="238"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.14/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr20_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="51" font="//@fonts.0" value="tr20_1: <in3:p>"/> + </connectionDecorators> + <bendpoints x="508" y="176"/> + <bendpoints x="528" y="182"/> + <bendpoints x="548" y="188"/> + <bendpoints x="569" y="194"/> + <bendpoints x="590" y="201"/> + <bendpoints x="601" y="205"/> + <bendpoints x="610" y="208"/> + <bendpoints x="618" y="210"/> + <bendpoints x="626" y="213"/> + <bendpoints x="637" y="217"/> + <bendpoints x="655" y="223"/> + <bendpoints x="673" y="229"/> + <bendpoints x="692" y="235"/> + <bendpoints x="709" y="241"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@children.1/@anchors.0" end="//@children.0/@children.15/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr20_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="18" y="-10" font="//@fonts.0" value="tr20_0: "/> + </connectionDecorators> + <bendpoints x="738" y="291"/> + <bendpoints x="731" y="295"/> + <bendpoints x="725" y="300"/> + <bendpoints x="720" y="306"/> + <bendpoints x="714" y="311"/> + <bendpoints x="705" y="322"/> + <bendpoints x="696" y="333"/> + <bendpoints x="688" y="345"/> + <bendpoints x="681" y="356"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@anchors.0" end="//@children.0/@children.16/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr21_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-4" font="//@fonts.0" value="tr21_0: <in3:p>"/> + </connectionDecorators> + <bendpoints x="772" y="291"/> + <bendpoints x="772" y="296"/> + <bendpoints x="771" y="301"/> + <bendpoints x="771" y="306"/> + <bendpoints x="770" y="311"/> + <bendpoints x="770" y="318"/> + <bendpoints x="769" y="323"/> + <bendpoints x="769" y="329"/> + <bendpoints x="770" y="334"/> + <bendpoints x="770" y="341"/> + <bendpoints x="771" y="346"/> + <bendpoints x="771" y="351"/> + <bendpoints x="772" y="356"/> + <bendpoints x="773" y="361"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.14/@children.3/@anchors.0" end="//@children.0/@children.17/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr22_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="15" y="-7" font="//@fonts.0" value="tr22_1: "/> + </connectionDecorators> + <bendpoints x="834" y="290"/> + <bendpoints x="842" y="295"/> + <bendpoints x="850" y="300"/> + <bendpoints x="858" y="305"/> + <bendpoints x="865" y="311"/> + <bendpoints x="876" y="321"/> + <bendpoints x="887" y="333"/> + <bendpoints x="896" y="345"/> + <bendpoints x="904" y="356"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$trx_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-5" y="-29" font="//@fonts.0" value="trx_0: <in1:p>"/> + </connectionDecorators> + <bendpoints x="961" y="180"/> + <bendpoints x="967" y="185"/> + <bendpoints x="974" y="190"/> + <bendpoints x="980" y="195"/> + <bendpoints x="986" y="201"/> + <bendpoints x="1005" y="223"/> + <bendpoints x="1021" y="247"/> + <bendpoints x="1035" y="271"/> + <bendpoints x="1047" y="293"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.9/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr5_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="23" y="-14" font="//@fonts.0" value="tr5_0: "/> + </connectionDecorators> + <bendpoints x="256" y="519"/> + <bendpoints x="237" y="533"/> + <bendpoints x="217" y="547"/> + <bendpoints x="199" y="560"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@children.7/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#ContinuationTransition:Testee_Super_ac$tr6_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-24" y="17" font="//@fonts.0" value="tr6_0: "/> + </connectionDecorators> + <bendpoints x="210" y="491"/> + <bendpoints x="165" y="497"/> + <bendpoints x="123" y="505"/> + <bendpoints x="87" y="516"/> + <bendpoints x="65" y="531"/> + <bendpoints x="60" y="546"/> + <bendpoints x="69" y="558"/> + <bendpoints x="88" y="568"/> + <bendpoints x="111" y="575"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.10/@anchors.0" end="//@children.0/@children.18/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr30_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-17" y="-31" font="//@fonts.0" value="tr30_1: <in4:p>"/> + </connectionDecorators> + <bendpoints x="471" y="184"/> + <bendpoints x="475" y="193"/> + <bendpoints x="481" y="201"/> + <bendpoints x="488" y="210"/> + <bendpoints x="495" y="217"/> + <bendpoints x="507" y="226"/> + <bendpoints x="519" y="233"/> + <bendpoints x="532" y="240"/> + <bendpoints x="545" y="245"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.13/@anchors.0" end="//@children.0/@children.18/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr31_0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-9" y="6" font="//@fonts.0" value="tr31_0: <in3:p>"/> + </connectionDecorators> + <bendpoints x="877" y="174"/> + <bendpoints x="853" y="179"/> + <bendpoints x="828" y="186"/> + <bendpoints x="801" y="193"/> + <bendpoints x="775" y="201"/> + <bendpoints x="767" y="204"/> + <bendpoints x="748" y="211"/> + <bendpoints x="721" y="221"/> + <bendpoints x="690" y="233"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.18/@anchors.0" end="//@children.0/@children.12/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../reachability.room#TriggeredTransition:Testee_Super_ac$tr31_1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="20" y="-4" font="//@fonts.0" value="tr31_1: <in4:p>"/> + </connectionDecorators> + <bendpoints x="564" y="301"/> + <bendpoints x="543" y="318"/> + <bendpoints x="522" y="336"/> + <bendpoints x="501" y="352"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest1.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest1.behavior index 390a0da47..e919dc34e 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest1.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest1.behavior @@ -1,356 +1,356 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest1" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="322" height="620"/>
- <link>
- <businessObjects href="../semantics.room#ActorClass:AETest1"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="342" height="640" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="262" height="560" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="262" height="560" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest1$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="262" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="144" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="104" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="104" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$state1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.5" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="318">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$state2"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="414">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$state3"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="510">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$state4"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="168" y="318">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest1$wrong"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wrong"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#InitialTransition:AETest1$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="154" y="91"/>
- <bendpoints x="154" y="105"/>
- <bendpoints x="154" y="119"/>
- <bendpoints x="154" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="6" y="-7" font="//@fonts.0" value="tr0: <in1:p0>"/>
- </connectionDecorators>
- <bendpoints x="154" y="188"/>
- <bendpoints x="154" y="202"/>
- <bendpoints x="154" y="216"/>
- <bendpoints x="154" y="230"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-1" y="11" font="//@fonts.0" value="tr1: <in2:p0>"/>
- </connectionDecorators>
- <bendpoints x="115" y="270"/>
- <bendpoints x="106" y="275"/>
- <bendpoints x="97" y="281"/>
- <bendpoints x="89" y="289"/>
- <bendpoints x="83" y="297"/>
- <bendpoints x="80" y="305"/>
- <bendpoints x="79" y="313"/>
- <bendpoints x="79" y="322"/>
- <bendpoints x="81" y="330"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-7" font="//@fonts.0" value="tr2: <in3:p0>"/>
- </connectionDecorators>
- <bendpoints x="90" y="380"/>
- <bendpoints x="90" y="394"/>
- <bendpoints x="90" y="408"/>
- <bendpoints x="90" y="422"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-7" font="//@fonts.0" value="tr3: <in4:p0>"/>
- </connectionDecorators>
- <bendpoints x="90" y="476"/>
- <bendpoints x="90" y="490"/>
- <bendpoints x="90" y="504"/>
- <bendpoints x="90" y="518"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.7/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr4: <in1:p0>"/>
- </connectionDecorators>
- <bendpoints x="172" y="284"/>
- <bendpoints x="181" y="298"/>
- <bendpoints x="191" y="312"/>
- <bendpoints x="200" y="326"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest1" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="322" height="620"/> + <link> + <businessObjects href="../semantics.room#ActorClass:AETest1"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="342" height="640" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="262" height="560" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="262" height="560" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest1$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="262" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="144" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="104" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="104" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$state1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.5" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="318"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$state2"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="414"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$state3"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="510"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$state4"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="168" y="318"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest1$wrong"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="wrong"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#InitialTransition:AETest1$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="154" y="91"/> + <bendpoints x="154" y="105"/> + <bendpoints x="154" y="119"/> + <bendpoints x="154" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="6" y="-7" font="//@fonts.0" value="tr0: <in1:p0>"/> + </connectionDecorators> + <bendpoints x="154" y="188"/> + <bendpoints x="154" y="202"/> + <bendpoints x="154" y="216"/> + <bendpoints x="154" y="230"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="-1" y="11" font="//@fonts.0" value="tr1: <in2:p0>"/> + </connectionDecorators> + <bendpoints x="115" y="270"/> + <bendpoints x="106" y="275"/> + <bendpoints x="97" y="281"/> + <bendpoints x="89" y="289"/> + <bendpoints x="83" y="297"/> + <bendpoints x="80" y="305"/> + <bendpoints x="79" y="313"/> + <bendpoints x="79" y="322"/> + <bendpoints x="81" y="330"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-7" font="//@fonts.0" value="tr2: <in3:p0>"/> + </connectionDecorators> + <bendpoints x="90" y="380"/> + <bendpoints x="90" y="394"/> + <bendpoints x="90" y="408"/> + <bendpoints x="90" y="422"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="7" y="-7" font="//@fonts.0" value="tr3: <in4:p0>"/> + </connectionDecorators> + <bendpoints x="90" y="476"/> + <bendpoints x="90" y="490"/> + <bendpoints x="90" y="504"/> + <bendpoints x="90" y="518"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.7/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest1$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr4: <in1:p0>"/> + </connectionDecorators> + <bendpoints x="172" y="284"/> + <bendpoints x="181" y="298"/> + <bendpoints x="191" y="312"/> + <bendpoints x="200" y="326"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest2.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest2.behavior index 2848473c2..652b3954f 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest2.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest2.behavior @@ -1,205 +1,205 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest2" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="546" height="332"/>
- <link>
- <businessObjects href="../semantics.room#ActorClass:AETest2"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="567" height="352" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="487" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="487" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest2$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="487" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="253" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest2$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="213" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest2$Idle"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2 //@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="207" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest2$MotorStarted"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#InitialTransition:AETest2$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="263" y="91"/>
- <bendpoints x="263" y="105"/>
- <bendpoints x="263" y="119"/>
- <bendpoints x="263" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-7" font="//@fonts.0" value="tr0: <someEvent1:dum..."/>
- </connectionDecorators>
- <bendpoints x="198" y="166"/>
- <bendpoints x="157" y="170"/>
- <bendpoints x="117" y="178"/>
- <bendpoints x="84" y="188"/>
- <bendpoints x="63" y="201"/>
- <bendpoints x="61" y="204"/>
- <bendpoints x="60" y="207"/>
- <bendpoints x="60" y="211"/>
- <bendpoints x="61" y="214"/>
- <bendpoints x="63" y="217"/>
- <bendpoints x="83" y="230"/>
- <bendpoints x="115" y="240"/>
- <bendpoints x="153" y="247"/>
- <bendpoints x="192" y="252"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr1: <done:motor1>"/>
- </connectionDecorators>
- <bendpoints x="258" y="234"/>
- <bendpoints x="257" y="226"/>
- <bendpoints x="256" y="218"/>
- <bendpoints x="256" y="209"/>
- <bendpoints x="256" y="201"/>
- <bendpoints x="257" y="196"/>
- <bendpoints x="257" y="191"/>
- <bendpoints x="258" y="186"/>
- <bendpoints x="259" y="181"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-9" font="//@fonts.0" value="tr2: <error:motor1>"/>
- </connectionDecorators>
- <bendpoints x="325" y="247"/>
- <bendpoints x="349" y="240"/>
- <bendpoints x="368" y="230"/>
- <bendpoints x="378" y="217"/>
- <bendpoints x="374" y="201"/>
- <bendpoints x="361" y="188"/>
- <bendpoints x="345" y="178"/>
- <bendpoints x="328" y="171"/>
- <bendpoints x="310" y="166"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest2" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="546" height="332"/> + <link> + <businessObjects href="../semantics.room#ActorClass:AETest2"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="567" height="352" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="487" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="487" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest2$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="487" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="253" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest2$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="213" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest2$Idle"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2 //@connections.3" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="207" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest2$MotorStarted"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#InitialTransition:AETest2$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="263" y="91"/> + <bendpoints x="263" y="105"/> + <bendpoints x="263" y="119"/> + <bendpoints x="263" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-7" font="//@fonts.0" value="tr0: <someEvent1:dum..."/> + </connectionDecorators> + <bendpoints x="198" y="166"/> + <bendpoints x="157" y="170"/> + <bendpoints x="117" y="178"/> + <bendpoints x="84" y="188"/> + <bendpoints x="63" y="201"/> + <bendpoints x="61" y="204"/> + <bendpoints x="60" y="207"/> + <bendpoints x="60" y="211"/> + <bendpoints x="61" y="214"/> + <bendpoints x="63" y="217"/> + <bendpoints x="83" y="230"/> + <bendpoints x="115" y="240"/> + <bendpoints x="153" y="247"/> + <bendpoints x="192" y="252"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr1: <done:motor1>"/> + </connectionDecorators> + <bendpoints x="258" y="234"/> + <bendpoints x="257" y="226"/> + <bendpoints x="256" y="218"/> + <bendpoints x="256" y="209"/> + <bendpoints x="256" y="201"/> + <bendpoints x="257" y="196"/> + <bendpoints x="257" y="191"/> + <bendpoints x="258" y="186"/> + <bendpoints x="259" y="181"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest2$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-9" font="//@fonts.0" value="tr2: <error:motor1>"/> + </connectionDecorators> + <bendpoints x="325" y="247"/> + <bendpoints x="349" y="240"/> + <bendpoints x="368" y="230"/> + <bendpoints x="378" y="217"/> + <bendpoints x="374" y="201"/> + <bendpoints x="361" y="188"/> + <bendpoints x="345" y="178"/> + <bendpoints x="328" y="171"/> + <bendpoints x="310" y="166"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest3.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest3.behavior index 4ed1aedde..954f70648 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest3.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest3.behavior @@ -1,174 +1,174 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest3" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="380" height="332"/>
- <link>
- <businessObjects href="../semantics.room#ActorClass:AETest3"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="401" height="352" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest3$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="321" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="158" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest3$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="118" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest3$Idle"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="112" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest3$MotorStarted"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#InitialTransition:AETest3$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="167" y="91"/>
- <bendpoints x="167" y="105"/>
- <bendpoints x="167" y="119"/>
- <bendpoints x="167" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest3$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-9" font="//@fonts.0" value="tr0: <someEvent1:dum..."/>
- </connectionDecorators>
- <bendpoints x="122" y="167"/>
- <bendpoints x="106" y="172"/>
- <bendpoints x="90" y="179"/>
- <bendpoints x="76" y="189"/>
- <bendpoints x="64" y="201"/>
- <bendpoints x="60" y="216"/>
- <bendpoints x="69" y="228"/>
- <bendpoints x="86" y="238"/>
- <bendpoints x="108" y="245"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest3$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-7" font="//@fonts.0" value="tr2: <error:motor1>"/>
- </connectionDecorators>
- <bendpoints x="198" y="235"/>
- <bendpoints x="205" y="227"/>
- <bendpoints x="210" y="219"/>
- <bendpoints x="212" y="210"/>
- <bendpoints x="210" y="201"/>
- <bendpoints x="207" y="195"/>
- <bendpoints x="203" y="190"/>
- <bendpoints x="199" y="185"/>
- <bendpoints x="194" y="180"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest3" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="380" height="332"/> + <link> + <businessObjects href="../semantics.room#ActorClass:AETest3"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="401" height="352" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest3$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="321" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="158" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest3$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="118" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest3$Idle"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="112" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest3$MotorStarted"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#InitialTransition:AETest3$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="167" y="91"/> + <bendpoints x="167" y="105"/> + <bendpoints x="167" y="119"/> + <bendpoints x="167" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest3$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="14" y="-9" font="//@fonts.0" value="tr0: <someEvent1:dum..."/> + </connectionDecorators> + <bendpoints x="122" y="167"/> + <bendpoints x="106" y="172"/> + <bendpoints x="90" y="179"/> + <bendpoints x="76" y="189"/> + <bendpoints x="64" y="201"/> + <bendpoints x="60" y="216"/> + <bendpoints x="69" y="228"/> + <bendpoints x="86" y="238"/> + <bendpoints x="108" y="245"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest3$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="8" y="-7" font="//@fonts.0" value="tr2: <error:motor1>"/> + </connectionDecorators> + <bendpoints x="198" y="235"/> + <bendpoints x="205" y="227"/> + <bendpoints x="210" y="219"/> + <bendpoints x="212" y="210"/> + <bendpoints x="210" y="201"/> + <bendpoints x="207" y="195"/> + <bendpoints x="203" y="190"/> + <bendpoints x="199" y="185"/> + <bendpoints x="194" y="180"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest4.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest4.behavior index b8412186d..c4f0d6d43 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest4.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics.AETest4.behavior @@ -1,553 +1,553 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest4" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="936" height="528"/>
- <link>
- <businessObjects href="../semantics.room#ActorClass:AETest4"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="957" height="547" x="-10" y="-9">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="877" height="467" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="877" height="467" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest4$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="877" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="291" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#StateGraph:AETest4$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="251" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest4$Idle"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.4 //@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="245" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest4$MotorStarted"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3 //@connections.5 //@connections.9" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="127" height="90" x="184" y="318">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="67" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="42" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest4$Motor1done"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4 //@connections.7" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="67" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Motor1done"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="127" height="90" x="511" y="318">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="67" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="42" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest4$Motor2done"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6 //@connections.8" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="67" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Motor2done"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="148" height="90" x="238" y="414">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="88" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="63" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics.room#SimpleState:AETest4$SomeMotorError"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10 //@connections.11 //@connections.12 //@connections.13" incomingConnections="//@connections.3 //@connections.7 //@connections.8 //@connections.9 //@connections.10 //@connections.11 //@connections.12 //@connections.13" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="88" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="SomeMotorError"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#InitialTransition:AETest4$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="300" y="92"/>
- <bendpoints x="300" y="105"/>
- <bendpoints x="300" y="120"/>
- <bendpoints x="300" y="134"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="11" y="-7" font="//@fonts.0" value="tr0: <someEvent1:dum..."/>
- </connectionDecorators>
- <bendpoints x="300" y="189"/>
- <bendpoints x="300" y="202"/>
- <bendpoints x="300" y="217"/>
- <bendpoints x="300" y="230"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" y="12" font="//@fonts.0" value="tr1: <done:motor1>"/>
- </connectionDecorators>
- <bendpoints x="255" y="272"/>
- <bendpoints x="246" y="276"/>
- <bendpoints x="237" y="282"/>
- <bendpoints x="230" y="289"/>
- <bendpoints x="223" y="298"/>
- <bendpoints x="220" y="305"/>
- <bendpoints x="220" y="314"/>
- <bendpoints x="221" y="323"/>
- <bendpoints x="224" y="331"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="12" y="-3" font="//@fonts.0" value="tr2: <error:motor1>"/>
- </connectionDecorators>
- <bendpoints x="210" y="269"/>
- <bendpoints x="148" y="282"/>
- <bendpoints x="94" y="302"/>
- <bendpoints x="62" y="330"/>
- <bendpoints x="69" y="369"/>
- <bendpoints x="100" y="399"/>
- <bendpoints x="138" y="421"/>
- <bendpoints x="180" y="435"/>
- <bendpoints x="221" y="444"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="16" font="//@fonts.0" value="tr3: <done:motor2>"/>
- </connectionDecorators>
- <bendpoints x="179" y="325"/>
- <bendpoints x="153" y="308"/>
- <bendpoints x="133" y="288"/>
- <bendpoints x="124" y="266"/>
- <bendpoints x="129" y="243"/>
- <bendpoints x="152" y="217"/>
- <bendpoints x="181" y="197"/>
- <bendpoints x="212" y="183"/>
- <bendpoints x="243" y="173"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="23" y="-10" font="//@fonts.0" value="tr4: <done:motor2>"/>
- </connectionDecorators>
- <bendpoints x="355" y="280"/>
- <bendpoints x="376" y="288"/>
- <bendpoints x="399" y="297"/>
- <bendpoints x="422" y="305"/>
- <bendpoints x="445" y="314"/>
- <bendpoints x="463" y="320"/>
- <bendpoints x="481" y="326"/>
- <bendpoints x="499" y="332"/>
- <bendpoints x="516" y="337"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr5"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="84" y="37" font="//@fonts.0" value="tr5: <done:motor1>"/>
- </connectionDecorators>
- <bendpoints x="568" y="331"/>
- <bendpoints x="568" y="323"/>
- <bendpoints x="568" y="314"/>
- <bendpoints x="566" y="306"/>
- <bendpoints x="563" y="298"/>
- <bendpoints x="546" y="268"/>
- <bendpoints x="528" y="247"/>
- <bendpoints x="507" y="231"/>
- <bendpoints x="482" y="217"/>
- <bendpoints x="450" y="202"/>
- <bendpoints x="426" y="191"/>
- <bendpoints x="401" y="182"/>
- <bendpoints x="375" y="175"/>
- <bendpoints x="351" y="170"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr6"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" y="-26" font="//@fonts.0" value="tr6: <error:motor2>"/>
- </connectionDecorators>
- <bendpoints x="225" y="376"/>
- <bendpoints x="222" y="384"/>
- <bendpoints x="221" y="393"/>
- <bendpoints x="221" y="402"/>
- <bendpoints x="224" y="410"/>
- <bendpoints x="229" y="416"/>
- <bendpoints x="235" y="422"/>
- <bendpoints x="242" y="428"/>
- <bendpoints x="250" y="432"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr7"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="25" y="-7" font="//@fonts.0" value="tr7: <error:motor1>"/>
- </connectionDecorators>
- <bendpoints x="498" y="378"/>
- <bendpoints x="458" y="393"/>
- <bendpoints x="416" y="407"/>
- <bendpoints x="376" y="422"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr8"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr8: <error:motor2>"/>
- </connectionDecorators>
- <bendpoints x="326" y="277"/>
- <bendpoints x="331" y="281"/>
- <bendpoints x="335" y="286"/>
- <bendpoints x="338" y="292"/>
- <bendpoints x="341" y="298"/>
- <bendpoints x="351" y="322"/>
- <bendpoints x="355" y="343"/>
- <bendpoints x="355" y="363"/>
- <bendpoints x="351" y="385"/>
- <bendpoints x="341" y="410"/>
- <bendpoints x="339" y="415"/>
- <bendpoints x="335" y="420"/>
- <bendpoints x="331" y="425"/>
- <bendpoints x="326" y="430"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr9"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr9: <done:motor1>"/>
- </connectionDecorators>
- <bendpoints x="361" y="447"/>
- <bendpoints x="374" y="447"/>
- <bendpoints x="385" y="448"/>
- <bendpoints x="393" y="449"/>
- <bendpoints x="395" y="450"/>
- <bendpoints x="393" y="450"/>
- <bendpoints x="385" y="451"/>
- <bendpoints x="374" y="452"/>
- <bendpoints x="361" y="452"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr10"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr10: <error:motor1>"/>
- </connectionDecorators>
- <bendpoints x="387" y="437"/>
- <bendpoints x="430" y="436"/>
- <bendpoints x="468" y="438"/>
- <bendpoints x="495" y="442"/>
- <bendpoints x="505" y="450"/>
- <bendpoints x="495" y="457"/>
- <bendpoints x="468" y="461"/>
- <bendpoints x="430" y="463"/>
- <bendpoints x="387" y="462"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr11"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr11: <done:motor2>"/>
- </connectionDecorators>
- <bendpoints x="411" y="436"/>
- <bendpoints x="484" y="434"/>
- <bendpoints x="552" y="435"/>
- <bendpoints x="602" y="441"/>
- <bendpoints x="621" y="450"/>
- <bendpoints x="602" y="458"/>
- <bendpoints x="552" y="464"/>
- <bendpoints x="484" y="465"/>
- <bendpoints x="411" y="463"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr12"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr12: <error:motor2>"/>
- </connectionDecorators>
- <bendpoints x="434" y="434"/>
- <bendpoints x="537" y="432"/>
- <bendpoints x="636" y="433"/>
- <bendpoints x="709" y="439"/>
- <bendpoints x="738" y="450"/>
- <bendpoints x="709" y="460"/>
- <bendpoints x="636" y="466"/>
- <bendpoints x="537" y="467"/>
- <bendpoints x="434" y="465"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of AETest4" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link //@connections.11/@link //@connections.12/@link //@connections.13/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="936" height="528"/> + <link> + <businessObjects href="../semantics.room#ActorClass:AETest4"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="957" height="547" x="-10" y="-9"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="877" height="467" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="877" height="467" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest4$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="877" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="291" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#StateGraph:AETest4$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="251" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest4$Idle"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.4 //@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Idle"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="132" height="90" x="245" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="72" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="47" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="36" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest4$MotorStarted"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.3 //@connections.5 //@connections.9" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="72" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="MotorStarted"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="127" height="90" x="184" y="318"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="67" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="42" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest4$Motor1done"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4 //@connections.7" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="67" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Motor1done"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="127" height="90" x="511" y="318"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="67" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="42" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="33" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest4$Motor2done"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6 //@connections.8" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="67" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Motor2done"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="148" height="90" x="238" y="414"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="88" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="63" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="44" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics.room#SimpleState:AETest4$SomeMotorError"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.10 //@connections.11 //@connections.12 //@connections.13" incomingConnections="//@connections.3 //@connections.7 //@connections.8 //@connections.9 //@connections.10 //@connections.11 //@connections.12 //@connections.13" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="88" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="SomeMotorError"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#InitialTransition:AETest4$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="300" y="92"/> + <bendpoints x="300" y="105"/> + <bendpoints x="300" y="120"/> + <bendpoints x="300" y="134"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="11" y="-7" font="//@fonts.0" value="tr0: <someEvent1:dum..."/> + </connectionDecorators> + <bendpoints x="300" y="189"/> + <bendpoints x="300" y="202"/> + <bendpoints x="300" y="217"/> + <bendpoints x="300" y="230"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" y="12" font="//@fonts.0" value="tr1: <done:motor1>"/> + </connectionDecorators> + <bendpoints x="255" y="272"/> + <bendpoints x="246" y="276"/> + <bendpoints x="237" y="282"/> + <bendpoints x="230" y="289"/> + <bendpoints x="223" y="298"/> + <bendpoints x="220" y="305"/> + <bendpoints x="220" y="314"/> + <bendpoints x="221" y="323"/> + <bendpoints x="224" y="331"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="12" y="-3" font="//@fonts.0" value="tr2: <error:motor1>"/> + </connectionDecorators> + <bendpoints x="210" y="269"/> + <bendpoints x="148" y="282"/> + <bendpoints x="94" y="302"/> + <bendpoints x="62" y="330"/> + <bendpoints x="69" y="369"/> + <bendpoints x="100" y="399"/> + <bendpoints x="138" y="421"/> + <bendpoints x="180" y="435"/> + <bendpoints x="221" y="444"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="16" font="//@fonts.0" value="tr3: <done:motor2>"/> + </connectionDecorators> + <bendpoints x="179" y="325"/> + <bendpoints x="153" y="308"/> + <bendpoints x="133" y="288"/> + <bendpoints x="124" y="266"/> + <bendpoints x="129" y="243"/> + <bendpoints x="152" y="217"/> + <bendpoints x="181" y="197"/> + <bendpoints x="212" y="183"/> + <bendpoints x="243" y="173"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="23" y="-10" font="//@fonts.0" value="tr4: <done:motor2>"/> + </connectionDecorators> + <bendpoints x="355" y="280"/> + <bendpoints x="376" y="288"/> + <bendpoints x="399" y="297"/> + <bendpoints x="422" y="305"/> + <bendpoints x="445" y="314"/> + <bendpoints x="463" y="320"/> + <bendpoints x="481" y="326"/> + <bendpoints x="499" y="332"/> + <bendpoints x="516" y="337"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr5"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="84" y="37" font="//@fonts.0" value="tr5: <done:motor1>"/> + </connectionDecorators> + <bendpoints x="568" y="331"/> + <bendpoints x="568" y="323"/> + <bendpoints x="568" y="314"/> + <bendpoints x="566" y="306"/> + <bendpoints x="563" y="298"/> + <bendpoints x="546" y="268"/> + <bendpoints x="528" y="247"/> + <bendpoints x="507" y="231"/> + <bendpoints x="482" y="217"/> + <bendpoints x="450" y="202"/> + <bendpoints x="426" y="191"/> + <bendpoints x="401" y="182"/> + <bendpoints x="375" y="175"/> + <bendpoints x="351" y="170"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr6"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" y="-26" font="//@fonts.0" value="tr6: <error:motor2>"/> + </connectionDecorators> + <bendpoints x="225" y="376"/> + <bendpoints x="222" y="384"/> + <bendpoints x="221" y="393"/> + <bendpoints x="221" y="402"/> + <bendpoints x="224" y="410"/> + <bendpoints x="229" y="416"/> + <bendpoints x="235" y="422"/> + <bendpoints x="242" y="428"/> + <bendpoints x="250" y="432"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr7"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="25" y="-7" font="//@fonts.0" value="tr7: <error:motor1>"/> + </connectionDecorators> + <bendpoints x="498" y="378"/> + <bendpoints x="458" y="393"/> + <bendpoints x="416" y="407"/> + <bendpoints x="376" y="422"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr8"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr8: <error:motor2>"/> + </connectionDecorators> + <bendpoints x="326" y="277"/> + <bendpoints x="331" y="281"/> + <bendpoints x="335" y="286"/> + <bendpoints x="338" y="292"/> + <bendpoints x="341" y="298"/> + <bendpoints x="351" y="322"/> + <bendpoints x="355" y="343"/> + <bendpoints x="355" y="363"/> + <bendpoints x="351" y="385"/> + <bendpoints x="341" y="410"/> + <bendpoints x="339" y="415"/> + <bendpoints x="335" y="420"/> + <bendpoints x="331" y="425"/> + <bendpoints x="326" y="430"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr9"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr9: <done:motor1>"/> + </connectionDecorators> + <bendpoints x="361" y="447"/> + <bendpoints x="374" y="447"/> + <bendpoints x="385" y="448"/> + <bendpoints x="393" y="449"/> + <bendpoints x="395" y="450"/> + <bendpoints x="393" y="450"/> + <bendpoints x="385" y="451"/> + <bendpoints x="374" y="452"/> + <bendpoints x="361" y="452"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr10"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr10: <error:motor1>"/> + </connectionDecorators> + <bendpoints x="387" y="437"/> + <bendpoints x="430" y="436"/> + <bendpoints x="468" y="438"/> + <bendpoints x="495" y="442"/> + <bendpoints x="505" y="450"/> + <bendpoints x="495" y="457"/> + <bendpoints x="468" y="461"/> + <bendpoints x="430" y="463"/> + <bendpoints x="387" y="462"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr11"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr11: <done:motor2>"/> + </connectionDecorators> + <bendpoints x="411" y="436"/> + <bendpoints x="484" y="434"/> + <bendpoints x="552" y="435"/> + <bendpoints x="602" y="441"/> + <bendpoints x="621" y="450"/> + <bendpoints x="602" y="458"/> + <bendpoints x="552" y="464"/> + <bendpoints x="484" y="465"/> + <bendpoints x="411" y="463"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.6/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics.room#TriggeredTransition:AETest4$tr12"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" y="-7" font="//@fonts.0" value="tr12: <error:motor2>"/> + </connectionDecorators> + <bendpoints x="434" y="434"/> + <bendpoints x="537" y="432"/> + <bendpoints x="636" y="433"/> + <bendpoints x="709" y="439"/> + <bendpoints x="738" y="450"/> + <bendpoints x="709" y="460"/> + <bendpoints x="636" y="466"/> + <bendpoints x="537" y="467"/> + <bendpoints x="434" y="465"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.DualSemantics_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.DualSemantics_ac.behavior index 3032efbf8..b7a47c113 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.DualSemantics_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.DualSemantics_ac.behavior @@ -1,314 +1,314 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of DualSemantics_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../semantics_basic.room#ActorClass:DualSemantics_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:DualSemantics_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:DualSemantics_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="73" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2 //@connections.5" incomingConnections="//@connections.0 //@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="339" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state2_sm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4 //@connections.6" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2_sm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state3"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="605" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state4"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:DualSemantics_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <inA1:a>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <inA1:a guard {..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: <inB1:b>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <inB1:b>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <inB1:b>"/>
- </connectionDecorators>
- <bendpoints x="173" y="325"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr5_vm"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_vm: <inB1:b guar..."/>
- </connectionDecorators>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of DualSemantics_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/> + <link> + <businessObjects href="../semantics_basic.room#ActorClass:DualSemantics_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:DualSemantics_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:DualSemantics_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="73" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2 //@connections.5" incomingConnections="//@connections.0 //@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="206" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="339" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state2_sm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4 //@connections.6" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2_sm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="472" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state3"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="605" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:DualSemantics_ac$state4"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:DualSemantics_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <inA1:a>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <inA1:a guard {..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: <inB1:b>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <inB1:b>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <inB1:b>"/> + </connectionDecorators> + <bendpoints x="173" y="325"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:DualSemantics_ac$tr5_vm"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_vm: <inB1:b guar..."/> + </connectionDecorators> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.GroupTransition_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.GroupTransition_ac.behavior index 7385f206d..491e48d8d 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.GroupTransition_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.GroupTransition_ac.behavior @@ -1,561 +1,561 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of GroupTransition_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.1/@link //@children.1/@children.1/@link //@children.1/@children.2/@link //@children.2/@link //@children.2/@children.1/@link //@children.2/@children.2/@link //@connections.0/@link //@connections.1/@link //@children.3/@link //@children.3/@children.1/@link //@children.0/@children.4/@children.1/@link //@children.3/@children.2/@link //@children.0/@children.4/@children.2/@link //@children.3/@children.3/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../semantics_basic.room#ActorClass:GroupTransition_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5 //@connections.7" incomingConnections="//@connections.4 //@connections.6 //@connections.8 //@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6" incomingConnections="//@connections.5 //@connections.10" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state2"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9 //@connections.10" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="33"/>
- <points x="33" y="27"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0">
- <points x="27" y="27"/>
- <points x="33" y="33"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#EntryPoint:GroupTransition_ac$state2$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.0/@children.4/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="37">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25">
- <points x="5"/>
- <points x="11" y="5"/>
- <points x="5" y="11"/>
- <points y="5"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#ExitPoint:GroupTransition_ac$state2$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.4/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1$state1_0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_0"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$state1_0$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1/state1_0"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$state1_0$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="144" height="90" x="328" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="84" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="59" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="42" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="42" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="42" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1$state1_0$state1_0_0_vm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="84" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_0_0_vm"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state2$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state2"/>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="entp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="47"/>
- <points x="47" y="33"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0">
- <points x="33" y="33"/>
- <points x="47" y="47"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#EntryPoint:GroupTransition_ac$state2$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="extp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30">
- <points x="10"/>
- <points x="20" y="10"/>
- <points x="10" y="20"/>
- <points y="10"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#ExitPoint:GroupTransition_ac$state2$tp1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state2$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.3/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$state1$state1_0$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$state1$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.1/@anchors.0" end="//@children.3/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#ContinuationTransition:GroupTransition_ac$state2$tr0"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@anchors.0" end="//@children.3/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$state2$tr1"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0 guard {..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@children.1/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in1:p0 guard {..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#ContinuationTransition:GroupTransition_ac$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <in2:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr5_vt"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_vt: <wrong1:p0>"/>
- </connectionDecorators>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of GroupTransition_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.1/@link //@children.1/@children.1/@link //@children.1/@children.2/@link //@children.2/@link //@children.2/@children.1/@link //@children.2/@children.2/@link //@connections.0/@link //@connections.1/@link //@children.3/@link //@children.3/@children.1/@link //@children.0/@children.4/@children.1/@link //@children.3/@children.2/@link //@children.0/@children.4/@children.2/@link //@children.3/@children.3/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link //@connections.8/@link //@connections.9/@link //@connections.10/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/> + <link> + <businessObjects href="../semantics_basic.room#ActorClass:GroupTransition_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5 //@connections.7" incomingConnections="//@connections.4 //@connections.6 //@connections.8 //@connections.9" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.6" incomingConnections="//@connections.5 //@connections.10" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state2"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.9 //@connections.10" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="17"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="33"/> + <points x="33" y="27"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"> + <points x="27" y="27"/> + <points x="33" y="33"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#EntryPoint:GroupTransition_ac$state2$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.0/@children.4/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="37"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="11" height="11" x="25" y="25"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0" x="25" y="25"> + <points x="5"/> + <points x="11" y="5"/> + <points x="5" y="11"/> + <points y="5"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#ExitPoint:GroupTransition_ac$state2$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.8" referencedGraphicsAlgorithm="//@children.0/@children.4/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="22" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1$state1_0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_0"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$state1_0$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state1/state1_0"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state1$state1_0$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="144" height="90" x="328" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="84" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="59" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="42" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="42" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="42" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state1$state1_0$state1_0_0_vm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.2/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="84" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_0_0_vm"/> + </children> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:GroupTransition_ac$state2$sg"/> + </link> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/state2"/> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="entp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="226"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="47"/> + <points x="47" y="33"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="2" filled="false" transparency="0.0"> + <points x="33" y="33"/> + <points x="47" y="47"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#EntryPoint:GroupTransition_ac$state2$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="extp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="492"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="2" filled="true" transparency="0.0" x="30" y="30"> + <points x="10"/> + <points x="20" y="10"/> + <points x="10" y="20"/> + <points y="10"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#ExitPoint:GroupTransition_ac$state2$tp1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.3"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:GroupTransition_ac$state2$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.3/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.2/@children.1/@anchors.0" end="//@children.2/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$state1$state1_0$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.1/@children.1/@anchors.0" end="//@children.1/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$state1$initial"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.1/@anchors.0" end="//@children.3/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#ContinuationTransition:GroupTransition_ac$state2$tr0"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.3/@children.3/@anchors.0" end="//@children.3/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$state2$tr1"/> + </link> + <connectionDecorators locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0 guard {..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:GroupTransition_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@children.1/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in1:p0 guard {..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@children.2/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#ContinuationTransition:GroupTransition_ac$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: "/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <in2:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:GroupTransition_ac$tr5_vt"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5_vt: <wrong1:p0>"/> + </connectionDecorators> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.NoSemantics_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.NoSemantics_ac.behavior index 6c74029dc..7a6661c74 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.NoSemantics_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.NoSemantics_ac.behavior @@ -1,174 +1,174 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of NoSemantics_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="380" height="332"/>
- <link>
- <businessObjects href="../semantics_basic.room#ActorClass:NoSemantics_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="401" height="352" x="-10" y="-10">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:NoSemantics_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="321" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="150" y="60">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:NoSemantics_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="110" y="126">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:NoSemantics_ac$state0_rm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_rm"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="110" y="222">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:NoSemantics_ac$state1_rm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_rm"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:NoSemantics_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- <bendpoints x="160" y="91"/>
- <bendpoints x="160" y="105"/>
- <bendpoints x="160" y="119"/>
- <bendpoints x="160" y="133"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:NoSemantics_ac$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="12" y="-8" font="//@fonts.0" value="tr0: <someEvent1:p1>"/>
- </connectionDecorators>
- <bendpoints x="116" y="169"/>
- <bendpoints x="101" y="174"/>
- <bendpoints x="87" y="180"/>
- <bendpoints x="74" y="189"/>
- <bendpoints x="64" y="201"/>
- <bendpoints x="60" y="216"/>
- <bendpoints x="69" y="228"/>
- <bendpoints x="86" y="238"/>
- <bendpoints x="108" y="246"/>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:NoSemantics_ac$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-7" font="//@fonts.0" value="tr1: <someEvent2:p1>"/>
- </connectionDecorators>
- <bendpoints x="185" y="235"/>
- <bendpoints x="191" y="227"/>
- <bendpoints x="196" y="219"/>
- <bendpoints x="198" y="210"/>
- <bendpoints x="196" y="201"/>
- <bendpoints x="193" y="195"/>
- <bendpoints x="190" y="190"/>
- <bendpoints x="186" y="185"/>
- <bendpoints x="182" y="180"/>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of NoSemantics_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="380" height="332"/> + <link> + <businessObjects href="../semantics_basic.room#ActorClass:NoSemantics_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="401" height="352" x="-10" y="-10"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="321" height="272" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:NoSemantics_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="321" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="150" y="60"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:NoSemantics_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="110" y="126"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:NoSemantics_ac$state0_rm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0 //@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0_rm"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="110" y="222"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:NoSemantics_ac$state1_rm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1_rm"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:NoSemantics_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="2" y="-9" font="//@fonts.0" value="init"/> + </connectionDecorators> + <bendpoints x="160" y="91"/> + <bendpoints x="160" y="105"/> + <bendpoints x="160" y="119"/> + <bendpoints x="160" y="133"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:NoSemantics_ac$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="12" y="-8" font="//@fonts.0" value="tr0: <someEvent1:p1>"/> + </connectionDecorators> + <bendpoints x="116" y="169"/> + <bendpoints x="101" y="174"/> + <bendpoints x="87" y="180"/> + <bendpoints x="74" y="189"/> + <bendpoints x="64" y="201"/> + <bendpoints x="60" y="216"/> + <bendpoints x="69" y="228"/> + <bendpoints x="86" y="238"/> + <bendpoints x="108" y="246"/> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:NoSemantics_ac$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="9" y="-7" font="//@fonts.0" value="tr1: <someEvent2:p1>"/> + </connectionDecorators> + <bendpoints x="185" y="235"/> + <bendpoints x="191" y="227"/> + <bendpoints x="196" y="219"/> + <bendpoints x="198" y="210"/> + <bendpoints x="196" y="201"/> + <bendpoints x="193" y="195"/> + <bendpoints x="190" y="190"/> + <bendpoints x="186" y="185"/> + <bendpoints x="182" y="180"/> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.SimpleAlternative_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.SimpleAlternative_ac.behavior index c4b6a7a96..4c76ba26d 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.SimpleAlternative_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.SimpleAlternative_ac.behavior @@ -1,392 +1,392 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of SimpleAlternative_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../semantics_basic.room#ActorClass:SimpleAlternative_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:SimpleAlternative_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:SimpleAlternative_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="240" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state2"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state3"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5 //@connections.6 //@connections.7" incomingConnections="//@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="440" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state4"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state5"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state5"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="640" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state6_rm"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.0/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state6_rm"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:SimpleAlternative_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in3:p0 guard {..."/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr3"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: <in3:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.7/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr4"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr5"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5: <in2:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.8/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr6_vt"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr6_vt: <in3:p0>"/>
- </connectionDecorators>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of SimpleAlternative_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@children.0/@children.6/@link //@children.0/@children.7/@link //@children.0/@children.8/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link //@connections.5/@link //@connections.6/@link //@connections.7/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/> + <link> + <businessObjects href="../semantics_basic.room#ActorClass:SimpleAlternative_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:SimpleAlternative_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:SimpleAlternative_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="40" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="true" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1 //@connections.2" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.4" incomingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="240" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state2"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state3"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.5 //@connections.6 //@connections.7" incomingConnections="//@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state3"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="440" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state4"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.6" referencedGraphicsAlgorithm="//@children.0/@children.6/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state4"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state5"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.5" referencedGraphicsAlgorithm="//@children.0/@children.7/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state5"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="640" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:SimpleAlternative_ac$state6_rm"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.7" referencedGraphicsAlgorithm="//@children.0/@children.8/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state6_rm"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.2/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:SimpleAlternative_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in2:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.4/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in3:p0 guard {..."/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr3"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3: <in3:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.7/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr4"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr4: <in1:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.6/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr5"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr5: <in2:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.8/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:SimpleAlternative_ac$tr6_vt"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr6_vt: <in3:p0>"/> + </connectionDecorators> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.TransitionsPoint_ac.behavior b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.TransitionsPoint_ac.behavior index 015d8b54f..356e821e5 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.TransitionsPoint_ac.behavior +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/diagrams/Semantics_basic.TransitionsPoint_ac.behavior @@ -1,231 +1,231 @@ -<?xml version="1.0" encoding="ASCII"?>
-<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of TransitionsPoint_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link" verticalGridUnit="10" version="0.9.2">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../semantics_basic.room#ActorClass:TransitionsPoint_ac"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="sg"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:TransitionsPoint_ac$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#StateGraph:TransitionsPoint_ac$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="trp"/>
- <properties key="item-kind" value="tp"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360">
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#TransitionPoint:TransitionsPoint_ac$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.4"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.1 //@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="state"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20">
- <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24">
- <points x="-2" y="-3"/>
- <points x="-2" y="3"/>
- <points x="2" y="3"/>
- <points x="2" y="-3"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state2"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.3/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#InitialTransition:TransitionsPoint_ac$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.5/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in3:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr2"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0">
- <properties key="obj-type" value="trans"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr3_vtvm"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0">
- <points x="-15" y="5"/>
- <points/>
- <points x="-15" y="-5"/>
- </graphicsAlgorithm>
- </connectionDecorators>
- <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_vtvm: <in1:p0>"/>
- </connectionDecorators>
- </connections>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <colors red="200" green="200" blue="200"/>
- <fonts name="Arial" size="8"/>
- <fonts name="Arial" size="9" bold="true"/>
-</pi:Diagram>
+<?xml version="1.0" encoding="ASCII"?> +<pi:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:al="http://eclipse.org/graphiti/mm/algorithms" xmlns:pi="http://eclipse.org/graphiti/mm/pictograms" visible="true" gridUnit="10" diagramTypeId="room.behavior" name="Behavior of TransitionsPoint_ac" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@children.0/@children.3/@link //@children.0/@children.4/@link //@children.0/@children.5/@link //@connections.0/@link //@connections.1/@link //@connections.2/@link //@connections.3/@link //@connections.4/@link" verticalGridUnit="10" version="0.9.2"> + <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/> + <link> + <businessObjects href="../semantics_basic.room#ActorClass:TransitionsPoint_ac"/> + </link> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="sg"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="880" height="580" x="40" y="40"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40" cornerHeight="20" cornerWidth="20"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:TransitionsPoint_ac$sg"/> + </link> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="800" height="80" y="40" font="//@fonts.1" horizontalAlignment="ALIGNMENT_RIGHT" verticalAlignment="ALIGNMENT_TOP" value="/"/> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="40" height="40" x="100" y="100"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="10" y="10"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#StateGraph:TransitionsPoint_ac$sg"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="40" height="20" y="10" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="I"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="trp"/> + <properties key="item-kind" value="tp"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="360"> + <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#TransitionPoint:TransitionsPoint_ac$tp0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2 //@connections.4"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="80" height="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="140" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state0"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.3/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state0"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="340" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state1"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.1 //@connections.3 //@connections.4" referencedGraphicsAlgorithm="//@children.0/@children.4/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state1"/> + </children> + </children> + <children xsi:type="pi:ContainerShape" visible="true" active="true"> + <properties key="obj-type" value="state"/> + <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="120" height="90" x="540" y="120"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" cornerHeight="20" cornerWidth="20"> + <graphicsAlgorithmChildren xsi:type="al:RoundedRectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="15" height="8" x="35" y="3" cornerHeight="5" cornerWidth="5"/> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-3" y="-3"/> + <points x="-3" y="3"/> + <points x="-11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="3" y="-3"/> + <points x="3" y="3"/> + <points x="11" y="3"/> + </graphicsAlgorithmChildren> + <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" x="30" y="24"> + <points x="-2" y="-3"/> + <points x="-2" y="3"/> + <points x="2" y="3"/> + <points x="2" y="-3"/> + </graphicsAlgorithmChildren> + </graphicsAlgorithmChildren> + </graphicsAlgorithm> + <link> + <businessObjects href="../semantics_basic.room#SimpleState:TransitionsPoint_ac$state2"/> + </link> + <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.3" incomingConnections="//@connections.2" referencedGraphicsAlgorithm="//@children.0/@children.5/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/> + <children visible="true"> + <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="state2"/> + </children> + </children> + </children> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@anchors.0" end="//@children.0/@children.3/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#InitialTransition:TransitionsPoint_ac$initial"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="init"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.3/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr0"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr0: <in1:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.5/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr1"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr1: <in3:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.5/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr2"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr2: <in1:p0>"/> + </connectionDecorators> + </connections> + <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.2/@anchors.0" end="//@children.0/@children.4/@anchors.0"> + <properties key="obj-type" value="trans"/> + <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/> + <link> + <businessObjects href="../semantics_basic.room#TriggeredTransition:TransitionsPoint_ac$tr3_vtvm"/> + </link> + <connectionDecorators visible="true" locationRelative="true" location="1.0"> + <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" filled="true" transparency="0.0"> + <points x="-15" y="5"/> + <points/> + <points x="-15" y="-5"/> + </graphicsAlgorithm> + </connectionDecorators> + <connectionDecorators visible="true" active="true" locationRelative="true" location="0.5"> + <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="10" font="//@fonts.0" value="tr3_vtvm: <in1:p0>"/> + </connectionDecorators> + </connections> + <colors red="227" green="238" blue="249"/> + <colors red="255" green="255" blue="255"/> + <colors/> + <colors red="200" green="200" blue="200"/> + <fonts name="Arial" size="8"/> + <fonts name="Arial" size="9" bold="true"/> +</pi:Diagram> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/reachability.room b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/reachability.room index c7d2cb995..f7bef546f 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/reachability.room +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/reachability.room @@ -1,302 +1,302 @@ -RoomModel Reachability {
-
- LogicalSystem System_Reachability {
- SubSystemRef subSystem: SubSystem
- }
-
- SubSystemClass SubSystem {
- ActorRef testee1: Testee_Super_ac
- ActorRef testee2: Testee_ac
- LogicalThread dflt_thread
- }
-
- ActorClass Testee_Super_ac {
- Structure {
- Port p: ReachabilityProtocol
- }
- Behavior {
- StateMachine {
- Transition tr0_1: state01_1 -> tp0_1 of state0_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr2_1: state02_1 -> tp1_1 of state0_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr3_0: state03_0 -> tp2_0 of state0_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr0_0: tp7_0 of state0_1 -> state04_0
- Transition tr01_1: tp3_1 of state0_1 -> state07_1
- Transition tr02_1: tp5_1 of state0_1 -> state08_1
- Transition tr03_1: tp4_1 of state0_1 -> state09_1
- Transition init: initial -> state_1 { }
- Transition tr_1: state_1 -> stateA_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr0a_1: stateA_1 -> state01_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr0b_1: stateA_1 -> state02_1 {
- triggers {
- <in2: p>
- }
- }
- Transition tr11_1: state_1 -> state1_1 {
- triggers {
- <in2: p>
- }
- }
- Transition trC_0: state_0 -> state2_1 {
- triggers {
- <in2: p>
- }
- }
- Transition tr20_1: state_1 -> tp0_1 of state2_1 {
- triggers {
- <in3: p>
- }
- }
- Transition tr20_0: tp0_0 of state2_1 -> state20_0
- Transition tr21_0: state2_1 -> state21_0 {
- triggers {
- <in3: p>
- }
- }
- Transition tr22_1: tp1_1 of state2_1 -> state21_1
- Transition trx_0: state_0 -> state03_0 {
- triggers {
- <in1: p>
- }
- }
- Transition tr5_0: tp8_0 of state0_1 -> state04_0
- Transition tr6_0: tp6_0 of state0_1 -> state04_0
- Transition tr30_1: state_1 -> state3_1 {
- triggers {
- <in4: p>
- }
- }
- Transition tr31_0: state_0 -> tp0_0 of state3_1 {
- triggers {
- <in3: p>
- }
- }
- Transition tr31_1: state3_1 -> state1_1 {
- triggers {
- <in4: p>
- }
- }
- State state0_1 {
- subgraph {
- Transition tr0_1: my tp0_1 -> state00_1
- Transition tr1_1: my tp1_1 -> state01_1
- Transition tr2_0: my tp2_0 -> state03_0
- Transition tr6_1: state00_1 -> my tp3_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr3_0: state03_0 -> my tp6_0 {
- triggers {
- <in1: p>
- }
- }
- Transition tr4zzz_0: state02_0 -> my tp7_0 {
- triggers {
- <in1: p>
- }
- }
- Transition tr5_0: state02_0 -> my tp5_1 {
- triggers {
- <in2: p>
- }
- }
- Transition tr4_1: tp0_1 of state01_1 -> my tp4_1
- Transition tr2_1: state01_1 -> my tp5_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr8_0: state01_1 -> my tp8_0 {
- triggers {
- <in2: p>
- }
- }
- EntryPoint tp0_1
- EntryPoint tp1_1
- EntryPoint tp2_0
- ExitPoint tp3_1
- ExitPoint tp4_1
- ExitPoint tp5_1
- ExitPoint tp6_0
- ExitPoint tp7_0
- ExitPoint tp8_0
- State state00_1 {
- subgraph {
- Transition init: initial -> state0_1 { }
- State state0_1
- }
- }
- State state01_1 {
- subgraph {
- Transition init: initial -> tp0_1 of state0_1 { }
- Transition tr0_1: tp1_1 of state0_1 -> my tp0_1
- Transition tr2_1: state0_1 -> state0_1 {
- triggers {
- <in2: p>
- }
- }
- ExitPoint tp0_1
- State state0_1 {
- subgraph {
- Transition tr0_1: my tp0_1 -> cp cp0_1
- Transition tr3_1: cp cp0_1 -> state0_1
- Transition tr4_1: cp cp0_1 -> state1_1 {
- cond {
- "true"
- }
- }
- Transition tr2_1: state1_1 -> my tp1_1 {
- triggers {
- <in1: p>
- }
- }
- Transition tr1_1: state0_1 -> my tp1_1 {
- triggers {
- <in2: p>
- }
- }
- ChoicePoint cp0_1
- EntryPoint tp0_1
- ExitPoint tp1_1
- State state0_1
- State state1_1
- }
- }
- }
- }
- State state03_0
- State state02_0
- }
- }
- State state01_1
- State state02_1
- State state03_0
- State state04_0
- State state07_1
- State state08_1
- State state09_1
- State state_1
- State stateA_1
- State state1_1
- State state_0
- State state2_1 {
- subgraph {
- Transition init_0: initial -> state0_0 { }
- Transition tr0_1: my tp0_1 -> state0_1
- Transition tr1_1: state0_1 -> my tp1_1 {
- triggers {
- <in3: p>
- }
- }
- Transition tr1_0: state0_0 -> my tp0_0 {
- triggers {
- <in1: p>
- }
- }
- ExitPoint tp0_0
- EntryPoint tp0_1
- ExitPoint tp1_1
- State state0_0
- State state0_1
- }
- }
- State state20_0
- State state21_0
- State state21_1
- State state3_1 {
- subgraph {
- Transition init: initial -> state30_1 { }
- Transition tr30_0: my tp0_0 -> state32_0
- Transition tr0_1: state31_1 -> state31_1 {
- triggers {
- <in2: p>
- }
- }
- Transition tr1_1: state30_1 -> state30_1 {
- triggers {
- <in4: p>
- }
- }
- Transition tr2_1: state30_1 -> tp0_1 of state31_1 {
- triggers {
- <in1: p>
- }
- }
- EntryPoint tp0_0
- State state30_1
- State state31_1 {
- subgraph {
- Transition tr0_1: my tp0_1 -> state300_1
- Transition init: initial -> state301_1 { }
- EntryPoint tp0_1
- State state300_1
- State state301_1
- }
- }
- State state32_0
- }
- }
- }
- }
- }
-
- ActorClass Testee_ac extends Testee_Super_ac {
- Structure { }
- Behavior {
- StateMachine {
- RefinedTransition tr4zzz_0 {
- action {
- ""
- }
- }
- Transition tr_new_0: state_new1_0 -> state_new2_0 {
- triggers {
- <in1: p>
- }
- }
- State state_new1_0
- State state_new2_0
- RefinedState state0_1 {
- subgraph {
- State state0_new_0
- }
- }
- }
- }
- }
-
- ProtocolClass ReachabilityProtocol {
- incoming {
- Message in1()
- Message in2()
- Message in3()
- Message in4()
- }
- outgoing {
- Message out1()
- Message out2()
- Message out3()
- }
- }
-
+RoomModel Reachability { + + LogicalSystem System_Reachability { + SubSystemRef subSystem: SubSystem + } + + SubSystemClass SubSystem { + ActorRef testee1: Testee_Super_ac + ActorRef testee2: Testee_ac + LogicalThread dflt_thread + } + + ActorClass Testee_Super_ac { + Structure { + Port p: ReachabilityProtocol + } + Behavior { + StateMachine { + Transition tr0_1: state01_1 -> tp0_1 of state0_1 { + triggers { + <in1: p> + } + } + Transition tr2_1: state02_1 -> tp1_1 of state0_1 { + triggers { + <in1: p> + } + } + Transition tr3_0: state03_0 -> tp2_0 of state0_1 { + triggers { + <in1: p> + } + } + Transition tr0_0: tp7_0 of state0_1 -> state04_0 + Transition tr01_1: tp3_1 of state0_1 -> state07_1 + Transition tr02_1: tp5_1 of state0_1 -> state08_1 + Transition tr03_1: tp4_1 of state0_1 -> state09_1 + Transition init: initial -> state_1 { } + Transition tr_1: state_1 -> stateA_1 { + triggers { + <in1: p> + } + } + Transition tr0a_1: stateA_1 -> state01_1 { + triggers { + <in1: p> + } + } + Transition tr0b_1: stateA_1 -> state02_1 { + triggers { + <in2: p> + } + } + Transition tr11_1: state_1 -> state1_1 { + triggers { + <in2: p> + } + } + Transition trC_0: state_0 -> state2_1 { + triggers { + <in2: p> + } + } + Transition tr20_1: state_1 -> tp0_1 of state2_1 { + triggers { + <in3: p> + } + } + Transition tr20_0: tp0_0 of state2_1 -> state20_0 + Transition tr21_0: state2_1 -> state21_0 { + triggers { + <in3: p> + } + } + Transition tr22_1: tp1_1 of state2_1 -> state21_1 + Transition trx_0: state_0 -> state03_0 { + triggers { + <in1: p> + } + } + Transition tr5_0: tp8_0 of state0_1 -> state04_0 + Transition tr6_0: tp6_0 of state0_1 -> state04_0 + Transition tr30_1: state_1 -> state3_1 { + triggers { + <in4: p> + } + } + Transition tr31_0: state_0 -> tp0_0 of state3_1 { + triggers { + <in3: p> + } + } + Transition tr31_1: state3_1 -> state1_1 { + triggers { + <in4: p> + } + } + State state0_1 { + subgraph { + Transition tr0_1: my tp0_1 -> state00_1 + Transition tr1_1: my tp1_1 -> state01_1 + Transition tr2_0: my tp2_0 -> state03_0 + Transition tr6_1: state00_1 -> my tp3_1 { + triggers { + <in1: p> + } + } + Transition tr3_0: state03_0 -> my tp6_0 { + triggers { + <in1: p> + } + } + Transition tr4zzz_0: state02_0 -> my tp7_0 { + triggers { + <in1: p> + } + } + Transition tr5_0: state02_0 -> my tp5_1 { + triggers { + <in2: p> + } + } + Transition tr4_1: tp0_1 of state01_1 -> my tp4_1 + Transition tr2_1: state01_1 -> my tp5_1 { + triggers { + <in1: p> + } + } + Transition tr8_0: state01_1 -> my tp8_0 { + triggers { + <in2: p> + } + } + EntryPoint tp0_1 + EntryPoint tp1_1 + EntryPoint tp2_0 + ExitPoint tp3_1 + ExitPoint tp4_1 + ExitPoint tp5_1 + ExitPoint tp6_0 + ExitPoint tp7_0 + ExitPoint tp8_0 + State state00_1 { + subgraph { + Transition init: initial -> state0_1 { } + State state0_1 + } + } + State state01_1 { + subgraph { + Transition init: initial -> tp0_1 of state0_1 { } + Transition tr0_1: tp1_1 of state0_1 -> my tp0_1 + Transition tr2_1: state0_1 -> state0_1 { + triggers { + <in2: p> + } + } + ExitPoint tp0_1 + State state0_1 { + subgraph { + Transition tr0_1: my tp0_1 -> cp cp0_1 + Transition tr3_1: cp cp0_1 -> state0_1 + Transition tr4_1: cp cp0_1 -> state1_1 { + cond { + "true" + } + } + Transition tr2_1: state1_1 -> my tp1_1 { + triggers { + <in1: p> + } + } + Transition tr1_1: state0_1 -> my tp1_1 { + triggers { + <in2: p> + } + } + ChoicePoint cp0_1 + EntryPoint tp0_1 + ExitPoint tp1_1 + State state0_1 + State state1_1 + } + } + } + } + State state03_0 + State state02_0 + } + } + State state01_1 + State state02_1 + State state03_0 + State state04_0 + State state07_1 + State state08_1 + State state09_1 + State state_1 + State stateA_1 + State state1_1 + State state_0 + State state2_1 { + subgraph { + Transition init_0: initial -> state0_0 { } + Transition tr0_1: my tp0_1 -> state0_1 + Transition tr1_1: state0_1 -> my tp1_1 { + triggers { + <in3: p> + } + } + Transition tr1_0: state0_0 -> my tp0_0 { + triggers { + <in1: p> + } + } + ExitPoint tp0_0 + EntryPoint tp0_1 + ExitPoint tp1_1 + State state0_0 + State state0_1 + } + } + State state20_0 + State state21_0 + State state21_1 + State state3_1 { + subgraph { + Transition init: initial -> state30_1 { } + Transition tr30_0: my tp0_0 -> state32_0 + Transition tr0_1: state31_1 -> state31_1 { + triggers { + <in2: p> + } + } + Transition tr1_1: state30_1 -> state30_1 { + triggers { + <in4: p> + } + } + Transition tr2_1: state30_1 -> tp0_1 of state31_1 { + triggers { + <in1: p> + } + } + EntryPoint tp0_0 + State state30_1 + State state31_1 { + subgraph { + Transition tr0_1: my tp0_1 -> state300_1 + Transition init: initial -> state301_1 { } + EntryPoint tp0_1 + State state300_1 + State state301_1 + } + } + State state32_0 + } + } + } + } + } + + ActorClass Testee_ac extends Testee_Super_ac { + Structure { } + Behavior { + StateMachine { + RefinedTransition tr4zzz_0 { + action { + "" + } + } + Transition tr_new_0: state_new1_0 -> state_new2_0 { + triggers { + <in1: p> + } + } + State state_new1_0 + State state_new2_0 + RefinedState state0_1 { + subgraph { + State state0_new_0 + } + } + } + } + } + + ProtocolClass ReachabilityProtocol { + incoming { + Message in1() + Message in2() + Message in3() + Message in4() + } + outgoing { + Message out1() + Message out2() + Message out3() + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics.room b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics.room index f05f40719..85c0eebd3 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics.room +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics.room @@ -1,279 +1,279 @@ -RoomModel Semantics {
-
- // simple cascade
- ActorClass AETest1 {
- Interface {
- Port p0: PC1
- }
- Structure {
- external Port p0
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 { }
- Transition tr0: state0 -> state1 {
- triggers {
- <in1: p0>
- }
- action {
- "p0.out1();"
- }
- }
- Transition tr1: state1 -> state2 {
- triggers {
- <in2: p0>
- }
- action {
- "p0.out2();"
- }
- }
- Transition tr2: state2 -> state3 {
- triggers {
- <in3: p0>
- }
- action {
- "p0.out3();"
- }
- }
- Transition tr3: state3 -> state4 {
- triggers {
- <in4: p0>
- }
- action {
- "p0.out4();"
- }
- }
- Transition tr4: state1 -> wrong {
- triggers {
- // this trigger receives a warning
- <in1: p0>
- }
- }
- State state0
- State state1
- State state2
- State state3
- State state4
- State wrong
- }
- }
- }
-
-
- /*
- * examples from Thomas
- */
-
- // correct client for one motor
- ActorClass AETest2 {
- Interface {
- Port dummy: Dummy
- conjugated Port motor1: PMotor
- }
- Structure {
- external Port dummy
- external Port motor1
- }
- Behavior {
- StateMachine {
- Transition init: initial -> Idle { }
- Transition tr0: Idle -> MotorStarted {
- triggers {
- <someEvent1: dummy>
- }
- action {
- "motor1.start();"
- }
- }
- Transition tr1: MotorStarted -> Idle {
- triggers {
- <done: motor1>
- }
- action {
- // this action code receives a warning
- "motor1.start();"
- }
- }
- Transition tr2: MotorStarted -> Idle {
- triggers {
- <error: motor1>
- }
- }
- State Idle
- State MotorStarted
- }
- }
- }
-
- // client missing 'done'
- ActorClass AETest3 {
- Interface {
- Port dummy: Dummy
- conjugated Port motor1: PMotor
- }
- Structure {
- external Port dummy
- external Port motor1
- }
- Behavior {
- StateMachine {
- Transition init: initial -> Idle { }
- Transition tr0: Idle -> MotorStarted {
- triggers {
- <someEvent1: dummy>
- }
- action {
- "motor1.start();"
- }
- }
- Transition tr2: MotorStarted -> Idle {
- triggers {
- <error: motor1>
- }
- }
- State Idle
- State MotorStarted
- }
- }
- }
-
- // correct client for two motors
- ActorClass AETest4 {
- Interface {
- Port dummy: Dummy
- conjugated Port motor1: PMotor
- conjugated Port motor2: PMotor
- }
- Structure {
- external Port dummy
- external Port motor1
- external Port motor2
- }
- Behavior {
- StateMachine {
- Transition init: initial -> Idle { }
- Transition tr0: Idle -> MotorStarted {
- triggers {
- <someEvent1: dummy>
- }
- action {
- "motor1.start();"
- "motor2.start();"
- }
- }
- Transition tr1: MotorStarted -> Motor1done {
- triggers {
- <done: motor1>
- }
- }
- Transition tr2: MotorStarted -> SomeMotorError {
- triggers {
- <error: motor1>
- }
- }
- Transition tr3: Motor1done -> Idle {
- triggers {
- <done: motor2>
- }
- }
- Transition tr4: MotorStarted -> Motor2done {
- triggers {
- <done: motor2>
- }
- }
- Transition tr5: Motor2done -> Idle {
- triggers {
- <done: motor1>
- }
- }
- Transition tr6: Motor1done -> SomeMotorError {
- triggers {
- <error: motor2>
- }
- }
- Transition tr7: Motor2done -> SomeMotorError {
- triggers {
- <error: motor1>
- }
- }
- Transition tr8: MotorStarted -> SomeMotorError {
- triggers {
- <error: motor2>
- }
- }
- Transition tr9: SomeMotorError -> SomeMotorError {
- triggers {
- <done: motor1>
- }
- }
- Transition tr10: SomeMotorError -> SomeMotorError {
- triggers {
- <error: motor1>
- }
- }
- Transition tr11: SomeMotorError -> SomeMotorError {
- triggers {
- <done: motor2>
- }
- }
- Transition tr12: SomeMotorError -> SomeMotorError {
- triggers {
- <error: motor2>
- }
- }
- State Idle
- State MotorStarted
- State Motor1done
- State Motor2done
- State SomeMotorError
- }
- }
- }
-
- ProtocolClass PC1 {
- incoming {
- Message in1()
- Message in2()
- Message in3()
- Message in4()
- }
- outgoing {
- Message out1()
- Message out2()
- Message out3()
- Message out4()
- }
-
- semantics {
- in: in1 -> out: out1 -> in: in2 -> out: out2 -> in: in3 -> out: out3 -> in: in4 -> out: out4
- }
- }
-
- ProtocolClass PMotor {
- incoming {
- Message start()
- }
- outgoing {
- Message done()
- Message error()
- }
-
- semantics {
- in: start -> (out: done, out: error)
- }
- }
-
- ProtocolClass Dummy {
- incoming {
- Message someEvent1()
- Message someEvent2()
- Message someEvent3()
- }
- outgoing {
- Message someEvent1()
- Message someEvent2()
- Message someEvent3()
- }
- }
-
-}
+RoomModel Semantics { + + // simple cascade + ActorClass AETest1 { + Interface { + Port p0: PC1 + } + Structure { + external Port p0 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { } + Transition tr0: state0 -> state1 { + triggers { + <in1: p0> + } + action { + "p0.out1();" + } + } + Transition tr1: state1 -> state2 { + triggers { + <in2: p0> + } + action { + "p0.out2();" + } + } + Transition tr2: state2 -> state3 { + triggers { + <in3: p0> + } + action { + "p0.out3();" + } + } + Transition tr3: state3 -> state4 { + triggers { + <in4: p0> + } + action { + "p0.out4();" + } + } + Transition tr4: state1 -> wrong { + triggers { + // this trigger receives a warning + <in1: p0> + } + } + State state0 + State state1 + State state2 + State state3 + State state4 + State wrong + } + } + } + + + /* + * examples from Thomas + */ + + // correct client for one motor + ActorClass AETest2 { + Interface { + Port dummy: Dummy + conjugated Port motor1: PMotor + } + Structure { + external Port dummy + external Port motor1 + } + Behavior { + StateMachine { + Transition init: initial -> Idle { } + Transition tr0: Idle -> MotorStarted { + triggers { + <someEvent1: dummy> + } + action { + "motor1.start();" + } + } + Transition tr1: MotorStarted -> Idle { + triggers { + <done: motor1> + } + action { + // this action code receives a warning + "motor1.start();" + } + } + Transition tr2: MotorStarted -> Idle { + triggers { + <error: motor1> + } + } + State Idle + State MotorStarted + } + } + } + + // client missing 'done' + ActorClass AETest3 { + Interface { + Port dummy: Dummy + conjugated Port motor1: PMotor + } + Structure { + external Port dummy + external Port motor1 + } + Behavior { + StateMachine { + Transition init: initial -> Idle { } + Transition tr0: Idle -> MotorStarted { + triggers { + <someEvent1: dummy> + } + action { + "motor1.start();" + } + } + Transition tr2: MotorStarted -> Idle { + triggers { + <error: motor1> + } + } + State Idle + State MotorStarted + } + } + } + + // correct client for two motors + ActorClass AETest4 { + Interface { + Port dummy: Dummy + conjugated Port motor1: PMotor + conjugated Port motor2: PMotor + } + Structure { + external Port dummy + external Port motor1 + external Port motor2 + } + Behavior { + StateMachine { + Transition init: initial -> Idle { } + Transition tr0: Idle -> MotorStarted { + triggers { + <someEvent1: dummy> + } + action { + "motor1.start();" + "motor2.start();" + } + } + Transition tr1: MotorStarted -> Motor1done { + triggers { + <done: motor1> + } + } + Transition tr2: MotorStarted -> SomeMotorError { + triggers { + <error: motor1> + } + } + Transition tr3: Motor1done -> Idle { + triggers { + <done: motor2> + } + } + Transition tr4: MotorStarted -> Motor2done { + triggers { + <done: motor2> + } + } + Transition tr5: Motor2done -> Idle { + triggers { + <done: motor1> + } + } + Transition tr6: Motor1done -> SomeMotorError { + triggers { + <error: motor2> + } + } + Transition tr7: Motor2done -> SomeMotorError { + triggers { + <error: motor1> + } + } + Transition tr8: MotorStarted -> SomeMotorError { + triggers { + <error: motor2> + } + } + Transition tr9: SomeMotorError -> SomeMotorError { + triggers { + <done: motor1> + } + } + Transition tr10: SomeMotorError -> SomeMotorError { + triggers { + <error: motor1> + } + } + Transition tr11: SomeMotorError -> SomeMotorError { + triggers { + <done: motor2> + } + } + Transition tr12: SomeMotorError -> SomeMotorError { + triggers { + <error: motor2> + } + } + State Idle + State MotorStarted + State Motor1done + State Motor2done + State SomeMotorError + } + } + } + + ProtocolClass PC1 { + incoming { + Message in1() + Message in2() + Message in3() + Message in4() + } + outgoing { + Message out1() + Message out2() + Message out3() + Message out4() + } + + semantics { + in: in1 -> out: out1 -> in: in2 -> out: out2 -> in: in3 -> out: out3 -> in: in4 -> out: out4 + } + } + + ProtocolClass PMotor { + incoming { + Message start() + } + outgoing { + Message done() + Message error() + } + + semantics { + in: start -> (out: done, out: error) + } + } + + ProtocolClass Dummy { + incoming { + Message someEvent1() + Message someEvent2() + Message someEvent3() + } + outgoing { + Message someEvent1() + Message someEvent2() + Message someEvent3() + } + } + +} diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics_basic.room b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics_basic.room index b9c29813a..d34ee1da4 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics_basic.room +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/models/semantics_basic.room @@ -1,329 +1,329 @@ -RoomModel Semantics_basic {
-
- ActorClass GroupTransition_ac {
- Structure {
- Port p0 : Sem_Protocol2
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "p0.out3();"
- }
- }
- Transition tr0: state0 -> state1 {
- triggers {
- <in1: p0>
- }
- }
- Transition tr1: state1 -> state0 {
- triggers {
- <in2: p0>
- }
- }
- Transition tr2: state0 -> tp0 of state2 {
- triggers {
- <in1: p0 guard {
- "if(true)"
- }>
- }
- }
- Transition tr3: tp1 of state2 -> state0
- Transition tr4: state2 -> state0 {
- triggers {
- <in2: p0>
- }
- }
- Transition tr5_vt: state2 -> state1 {
- triggers {
- <wrong1: p0>
- }
- }
- State state0
- State state1 {
- subgraph {
- Transition init: initial -> state1_0 { }
- State state1_0 {
- subgraph {
- Transition init: initial -> state1_0_0_vm { }
- State state1_0_0_vm {
- entry {
- "p0.out2();"
- }
- }
- }
- }
- }
- }
- State state2 {
- subgraph {
- Transition tr0: my tp0 -> state0
- Transition tr1: state0 -> my tp1 {
- triggers {
- <in2: p0 guard {
- "if(true)"
- }>
- }
- }
- EntryPoint tp0
- ExitPoint tp1
- State state0
- }
- }
- }
- }
- }
-
- ActorClass SimpleAlternative_ac {
- Structure {
- Port p0 : Sem_Protocol2
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 { }
- Transition tr0: state0 -> state1 {
- triggers {
- <in1: p0>
- }
- }
- Transition tr1: state0 -> state2 {
- triggers {
- <in2: p0>
- }
- }
- Transition tr2: state2 -> state3 {
- triggers {
- <in3: p0 guard {
- "if(true)"
- }>
- }
- }
- Transition tr3: state1 -> state3 {
- triggers {
- <in3: p0>
- }
- }
- Transition tr4: state3 -> state5 {
- triggers {
- <in1: p0>
- }
- }
- Transition tr5: state3 -> state4 {
- triggers {
- <in2: p0>
- }
- }
- Transition tr6_vt: state3 -> state6_rm {
- triggers {
- <in3: p0>
- }
- }
- State state0 {
- entry {
- "p0.out1();"
- }
- }
- State state1
- State state2
- State state3
- State state4
- State state5
- State state6_rm
- }
- }
- }
-
- ActorClass TransitionsPoint_ac{
- Structure {
- Port p0 : Sem_Protocol2
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "p0.out2();"
- }
- }
- Transition tr0: state0 -> state1 {
- triggers {
- <in1: p0>
- }
- }
- Transition tr1: my tp0 -> state2 {
- triggers {
- <in3: p0>
- }
- }
- Transition tr2: state2 -> state1 {
- triggers {
- <in1: p0>
- }
- }
- Transition tr3_vtvm: my tp0 -> state1 {
- triggers {
- <in1: p0>
- }
- action {
- "p0.out1();"
- }
- }
- TransitionPoint tp0
- State state0
- State state1
- State state2
- }
- }
- }
-
- ActorClass NoSemantics_ac{
- Structure {
- Port p0 : Sem_ProtocolA
- Port p1: Dummy
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0_rm { }
- Transition tr0: state0_rm -> state1_rm {
- triggers {
- <someEvent1: p1>
- }
- }
- Transition tr1: state1_rm -> state0_rm {
- triggers {
- <someEvent2: p1>
- }
- }
- State state0_rm
- State state1_rm
- }
- }
- }
-
- ActorClass DualSemantics_ac{
- Structure {
- Port a: Sem_ProtocolA
- Port b: Sem_ProtocolB
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "b.outB1();"
- }
- }
- Transition tr0: state0 -> state1 {
- triggers {
- <inA1: a>
- }
- }
- Transition tr1: state0 -> state2_sm {
- triggers {
- <inA1: a guard {
- "if(true)"
- }>
- }
- }
- Transition tr3: state1 -> state3 {
- triggers {
- <inB1: b>
- }
- }
- Transition tr4: state2_sm -> state3 {
- triggers {
- <inB1: b>
- }
- }
- Transition tr2: state0 -> state0 {
- triggers {
- <inB1: b>
- }
- }
- Transition tr5_vm: state2_sm -> state4 {
- triggers {
- <inB1: b guard {
- "if(true)"
- }>
- }
- action {
- "a.outA1();"
- }
- }
- State state0
- State state1 {
- entry {
- "a.outA1();"
- }
- }
- State state2_sm {
- exit {
- "a.outA1();"
- }
- }
- State state3
- State state4
- }
- }
- }
-
- ProtocolClass Sem_Protocol2 {
- incoming {
- Message in1()
- Message in2()
- Message in3()
- Message wrong1()
- }
- outgoing {
- Message out1()
- Message out2()
- Message out3()
- Message wrong1()
- }
- semantics {
- // TransitionPoint
- out:out1->(in:in2->in:in3->in:in2, in:in1->in:in3->in:in1)
- // SimpleAlternative
- out:out2->(in:in1->in:in3->in:in1, in:in3->(in:in1, in:in3))
- // GroupTransition
- out:out3->in:in1->in:in2
-
- }
- }
-
- ProtocolClass Sem_ProtocolA {
- incoming {
- Message inA1()
- }
- outgoing {
- Message outA1()
- }
- semantics {
- in: inA1 -> out: outA1
- }
- }
-
- ProtocolClass Sem_ProtocolB {
- incoming {
- Message inB1()
- }
- outgoing {
- Message outB1()
- }
- semantics {
- out: outB1 -> in: inB1
- }
- }
-
- ProtocolClass Dummy {
- incoming {
- Message someEvent1()
- Message someEvent2()
- Message someEvent3()
- }
- outgoing {
- Message someEvent1()
- Message someEvent2()
- Message someEvent3()
- }
- }
-
+RoomModel Semantics_basic { + + ActorClass GroupTransition_ac { + Structure { + Port p0 : Sem_Protocol2 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { + action { + "p0.out3();" + } + } + Transition tr0: state0 -> state1 { + triggers { + <in1: p0> + } + } + Transition tr1: state1 -> state0 { + triggers { + <in2: p0> + } + } + Transition tr2: state0 -> tp0 of state2 { + triggers { + <in1: p0 guard { + "if(true)" + }> + } + } + Transition tr3: tp1 of state2 -> state0 + Transition tr4: state2 -> state0 { + triggers { + <in2: p0> + } + } + Transition tr5_vt: state2 -> state1 { + triggers { + <wrong1: p0> + } + } + State state0 + State state1 { + subgraph { + Transition init: initial -> state1_0 { } + State state1_0 { + subgraph { + Transition init: initial -> state1_0_0_vm { } + State state1_0_0_vm { + entry { + "p0.out2();" + } + } + } + } + } + } + State state2 { + subgraph { + Transition tr0: my tp0 -> state0 + Transition tr1: state0 -> my tp1 { + triggers { + <in2: p0 guard { + "if(true)" + }> + } + } + EntryPoint tp0 + ExitPoint tp1 + State state0 + } + } + } + } + } + + ActorClass SimpleAlternative_ac { + Structure { + Port p0 : Sem_Protocol2 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { } + Transition tr0: state0 -> state1 { + triggers { + <in1: p0> + } + } + Transition tr1: state0 -> state2 { + triggers { + <in2: p0> + } + } + Transition tr2: state2 -> state3 { + triggers { + <in3: p0 guard { + "if(true)" + }> + } + } + Transition tr3: state1 -> state3 { + triggers { + <in3: p0> + } + } + Transition tr4: state3 -> state5 { + triggers { + <in1: p0> + } + } + Transition tr5: state3 -> state4 { + triggers { + <in2: p0> + } + } + Transition tr6_vt: state3 -> state6_rm { + triggers { + <in3: p0> + } + } + State state0 { + entry { + "p0.out1();" + } + } + State state1 + State state2 + State state3 + State state4 + State state5 + State state6_rm + } + } + } + + ActorClass TransitionsPoint_ac{ + Structure { + Port p0 : Sem_Protocol2 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { + action { + "p0.out2();" + } + } + Transition tr0: state0 -> state1 { + triggers { + <in1: p0> + } + } + Transition tr1: my tp0 -> state2 { + triggers { + <in3: p0> + } + } + Transition tr2: state2 -> state1 { + triggers { + <in1: p0> + } + } + Transition tr3_vtvm: my tp0 -> state1 { + triggers { + <in1: p0> + } + action { + "p0.out1();" + } + } + TransitionPoint tp0 + State state0 + State state1 + State state2 + } + } + } + + ActorClass NoSemantics_ac{ + Structure { + Port p0 : Sem_ProtocolA + Port p1: Dummy + } + Behavior { + StateMachine { + Transition init: initial -> state0_rm { } + Transition tr0: state0_rm -> state1_rm { + triggers { + <someEvent1: p1> + } + } + Transition tr1: state1_rm -> state0_rm { + triggers { + <someEvent2: p1> + } + } + State state0_rm + State state1_rm + } + } + } + + ActorClass DualSemantics_ac{ + Structure { + Port a: Sem_ProtocolA + Port b: Sem_ProtocolB + } + Behavior { + StateMachine { + Transition init: initial -> state0 { + action { + "b.outB1();" + } + } + Transition tr0: state0 -> state1 { + triggers { + <inA1: a> + } + } + Transition tr1: state0 -> state2_sm { + triggers { + <inA1: a guard { + "if(true)" + }> + } + } + Transition tr3: state1 -> state3 { + triggers { + <inB1: b> + } + } + Transition tr4: state2_sm -> state3 { + triggers { + <inB1: b> + } + } + Transition tr2: state0 -> state0 { + triggers { + <inB1: b> + } + } + Transition tr5_vm: state2_sm -> state4 { + triggers { + <inB1: b guard { + "if(true)" + }> + } + action { + "a.outA1();" + } + } + State state0 + State state1 { + entry { + "a.outA1();" + } + } + State state2_sm { + exit { + "a.outA1();" + } + } + State state3 + State state4 + } + } + } + + ProtocolClass Sem_Protocol2 { + incoming { + Message in1() + Message in2() + Message in3() + Message wrong1() + } + outgoing { + Message out1() + Message out2() + Message out3() + Message wrong1() + } + semantics { + // TransitionPoint + out:out1->(in:in2->in:in3->in:in2, in:in1->in:in3->in:in1) + // SimpleAlternative + out:out2->(in:in1->in:in3->in:in1, in:in3->(in:in1, in:in3)) + // GroupTransition + out:out3->in:in1->in:in2 + + } + } + + ProtocolClass Sem_ProtocolA { + incoming { + Message inA1() + } + outgoing { + Message outA1() + } + semantics { + in: inA1 -> out: outA1 + } + } + + ProtocolClass Sem_ProtocolB { + incoming { + Message inB1() + } + outgoing { + Message outB1() + } + semantics { + out: outB1 -> in: inB1 + } + } + + ProtocolClass Dummy { + incoming { + Message someEvent1() + Message someEvent2() + Message someEvent3() + } + outgoing { + Message someEvent1() + Message someEvent2() + Message someEvent3() + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/org.eclipse.etrice.abstractexec.behavior.tests.launch b/tests/org.eclipse.etrice.abstractexec.behavior.tests/org.eclipse.etrice.abstractexec.behavior.tests.launch index 56c6e2588..18252aec4 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/org.eclipse.etrice.abstractexec.behavior.tests.launch +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/org.eclipse.etrice.abstractexec.behavior.tests.launch @@ -1,46 +1,46 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior,org.eclipse.etrice.abstractexec.behavior.tests,org.eclipse.etrice.core.config,org.eclipse.etrice.core.config.tests,org.eclipse.etrice.core.config.ui,org.eclipse.etrice.core.etmap,org.eclipse.etrice.core.etmap.tests,org.eclipse.etrice.core.etmap.ui,org.eclipse.etrice.core.etphys,org.eclipse.etrice.core.etphys.tests,org.eclipse.etrice.core.etphys.ui,org.eclipse.etrice.core.genmodel,org.eclipse.etrice.core.genmodel.tests,org.eclipse.etrice.core.room,org.eclipse.etrice.core.room.tests,org.eclipse.etrice.core.room.ui,org.eclipse.etrice.doc,org.eclipse.etrice.etunit.converter,org.eclipse.etrice.etunit.converter.tests,org.eclipse.etrice.generator,org.eclipse.etrice.generator.c,org.eclipse.etrice.generator.config,org.eclipse.etrice.generator.cpp,org.eclipse.etrice.generator.doc,org.eclipse.etrice.generator.fsmtest,org.eclipse.etrice.generator.fsmtest.tests,org.eclipse.etrice.generator.fsmtest.ui,org.eclipse.etrice.generator.java,org.eclipse.etrice.generator.launch,org.eclipse.etrice.generator.launch.c,org.eclipse.etrice.generator.launch.cpp,org.eclipse.etrice.generator.launch.java,org.eclipse.etrice.generator.tests,org.eclipse.etrice.logging,org.eclipse.etrice.ui.behavior,org.eclipse.etrice.ui.behavior.tests,org.eclipse.etrice.ui.commands,org.eclipse.etrice.ui.common,org.eclipse.etrice.ui.runtime,org.eclipse.etrice.ui.structure,org.eclipse.etrice.ui.structure.tests,org.eclipse.etrice.ui.tests.base"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.abstractexec.behavior.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.abstractexec.behavior.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.abstractexec.behavior.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx512m"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.platform.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<stringAttribute key="selected_target_plugins" value="com.google.guava@default:default,com.google.inject@default:default,com.ibm.icu@default:default,javax.annotation@default:default,javax.inject@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util.gui@default:default,org.apache.batik.util@default:default,org.apache.commons.cli@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging*1.1.1.v201101211721@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help@default:default,org.eclipse.jdt.annotation@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jetty.continuation@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.platform@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86_64@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xtend.lib@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.edit@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit4@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.smap@default:default,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.junit@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit*4.10.0.v4_10_0_v20120426-0900@default:default,org.junit4@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil*1.0.1.v200903091627@default:default,org.w3c.dom.svg@default:default"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior,org.eclipse.etrice.abstractexec.behavior.tests,org.eclipse.etrice.core.config,org.eclipse.etrice.core.config.tests,org.eclipse.etrice.core.config.ui,org.eclipse.etrice.core.etmap,org.eclipse.etrice.core.etmap.tests,org.eclipse.etrice.core.etmap.ui,org.eclipse.etrice.core.etphys,org.eclipse.etrice.core.etphys.tests,org.eclipse.etrice.core.etphys.ui,org.eclipse.etrice.core.genmodel,org.eclipse.etrice.core.genmodel.tests,org.eclipse.etrice.core.room,org.eclipse.etrice.core.room.tests,org.eclipse.etrice.core.room.ui,org.eclipse.etrice.doc,org.eclipse.etrice.etunit.converter,org.eclipse.etrice.etunit.converter.tests,org.eclipse.etrice.generator,org.eclipse.etrice.generator.c,org.eclipse.etrice.generator.config,org.eclipse.etrice.generator.cpp,org.eclipse.etrice.generator.doc,org.eclipse.etrice.generator.fsmtest,org.eclipse.etrice.generator.fsmtest.tests,org.eclipse.etrice.generator.fsmtest.ui,org.eclipse.etrice.generator.java,org.eclipse.etrice.generator.launch,org.eclipse.etrice.generator.launch.c,org.eclipse.etrice.generator.launch.cpp,org.eclipse.etrice.generator.launch.java,org.eclipse.etrice.generator.tests,org.eclipse.etrice.logging,org.eclipse.etrice.ui.behavior,org.eclipse.etrice.ui.behavior.tests,org.eclipse.etrice.ui.commands,org.eclipse.etrice.ui.common,org.eclipse.etrice.ui.runtime,org.eclipse.etrice.ui.structure,org.eclipse.etrice.ui.structure.tests,org.eclipse.etrice.ui.tests.base"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.abstractexec.behavior.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.abstractexec.behavior.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.abstractexec.behavior.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx512m"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.platform.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<stringAttribute key="selected_target_plugins" value="com.google.guava@default:default,com.google.inject@default:default,com.ibm.icu@default:default,javax.annotation@default:default,javax.inject@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util.gui@default:default,org.apache.batik.util@default:default,org.apache.commons.cli@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging*1.1.1.v201101211721@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help@default:default,org.eclipse.jdt.annotation@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jetty.continuation@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.platform@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86_64@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xtend.lib@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.edit@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit4@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.smap@default:default,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.junit@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit*4.10.0.v4_10_0_v20120426-0900@default:default,org.junit4@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil*1.0.1.v200903091627@default:default,org.w3c.dom.svg@default:default"/> +<booleanAttribute key="show_selected_only" value="false"/> +<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/Activator.java b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/Activator.java index 543059c24..be43d5b54 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/Activator.java +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/Activator.java @@ -1,49 +1,49 @@ -package org.eclipse.etrice.abstractexec.behavior.tests;
-
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.emf.ecore.util.Diagnostician;
-import org.eclipse.etrice.core.ui.RoomUiModule;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-import com.google.inject.Inject;
-import com.google.inject.Injector;
-
-public class Activator extends Plugin implements BundleActivator {
-
- private static Activator instance = null;
-
- @Inject
- private Diagnostician diagnostician;
-
- public static Activator getInstance() {
- return instance;
- }
-
- /*
- * (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext bundleContext) throws Exception {
- super.start(bundleContext);
-
- instance = this;
-
- Injector injector = RoomUiModule.getInjector();
- injector.injectMembers(this);
- }
-
- /*
- * (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext bundleContext) throws Exception {
- instance = null;
- super.stop(bundleContext);
- }
-
- public Diagnostician getDiagnostician() {
- return diagnostician;
- }
-
-}
+package org.eclipse.etrice.abstractexec.behavior.tests; + +import org.eclipse.core.runtime.Plugin; +import org.eclipse.emf.ecore.util.Diagnostician; +import org.eclipse.etrice.core.ui.RoomUiModule; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +import com.google.inject.Inject; +import com.google.inject.Injector; + +public class Activator extends Plugin implements BundleActivator { + + private static Activator instance = null; + + @Inject + private Diagnostician diagnostician; + + public static Activator getInstance() { + return instance; + } + + /* + * (non-Javadoc) + * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext) + */ + public void start(BundleContext bundleContext) throws Exception { + super.start(bundleContext); + + instance = this; + + Injector injector = RoomUiModule.getInjector(); + injector.injectMembers(this); + } + + /* + * (non-Javadoc) + * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext) + */ + public void stop(BundleContext bundleContext) throws Exception { + instance = null; + super.stop(bundleContext); + } + + public Diagnostician getDiagnostician() { + return diagnostician; + } + +} diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestBase.java b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestBase.java index da9f89bb9..acef4ff1a 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestBase.java +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestBase.java @@ -1,160 +1,160 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.abstractexec.behavior.tests;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EValidator;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-import org.eclipse.xtext.util.CancelIndicator;
-import org.eclipse.xtext.validation.AbstractValidationDiagnostic;
-import org.eclipse.xtext.validation.CancelableDiagnostician;
-import org.eclipse.xtext.validation.CheckMode;
-import org.eclipse.xtext.validation.impl.ConcreteSyntaxEValidator;
-
-import com.google.common.collect.Maps;
-
-/**
- * Base class for tests helps with getting diagnostics from a model.
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestBase {
-
- private Resource resource;
- private String basePath;
- private HashMap<String, Diagnostic> infoMsg2diagnostic = new HashMap<String, Diagnostic>();
- private HashMap<String, Diagnostic> warnMsg2diagnostic = new HashMap<String, Diagnostic>();
- private HashMap<String, Diagnostic> errorMsg2diagnostic = new HashMap<String, Diagnostic>();
- private HashMap<String, List<AbstractValidationDiagnostic>> issueCode2diagnostic = new HashMap<String, List<AbstractValidationDiagnostic>>();
-
- protected void prepare(String modelFile) {
- try {
- URL modelsDir = Activator.getInstance().getBundle()
- .getEntry("models");
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- resource = getResource(modelFile);
-
- Diagnostic diag = getDiag(resource.getContents().get(0));
- createMappedDiagnostics(diag);
- }
-
- protected RoomModel getRoomModel() {
- return (RoomModel) resource.getContents().get(0);
- }
-
- /**
- * @return a map from message text to Diagnostic object
- */
- protected HashMap<String, Diagnostic> getInfoMsgToDiagnostic() {
- return infoMsg2diagnostic;
- }
-
- /**
- * @return a map from message text to Diagnostic object
- */
- protected HashMap<String, Diagnostic> getWarningMsgToDiagnostic() {
- return warnMsg2diagnostic;
- }
-
- /**
- * @return a map from message text to Diagnostic object
- */
- protected HashMap<String, Diagnostic> getErrorMsgToDiagnostic() {
- return errorMsg2diagnostic;
- }
-
- /**
- *
- * @return a map from issueCode to Diagnostic object
- */
- protected HashMap<String, List<AbstractValidationDiagnostic>> getIssueCode2diagnostic() {
- return issueCode2diagnostic;
- }
-
- protected Resource getResource(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- return rs.getResource(uri, true);
- }
-
- protected Diagnostic getDiag(EObject ele) {
- Map<Object, Object> options = Maps.newHashMap();
- options.put(CheckMode.KEY, CheckMode.ALL);
- options.put(CancelableDiagnostician.CANCEL_INDICATOR,
- CancelIndicator.NullImpl);
- // disable concrete syntax validation, since a semantic model that has
- // been parsed
- // from the concrete syntax always complies with it - otherwise there
- // are parse errors.
- options.put(
- ConcreteSyntaxEValidator.DISABLE_CONCRETE_SYNTAX_EVALIDATOR,
- Boolean.TRUE);
- // see EObjectValidator.getRootEValidator(Map<Object, Object>)
- options.put(EValidator.class, Activator.getInstance()
- .getDiagnostician());
- return Activator.getInstance().getDiagnostician()
- .validate(ele, options);
- }
-
- /**
- * @param diag
- * @param errorMsg2diagnostic
- */
- private void createMappedDiagnostics(Diagnostic diag) {
- for (Diagnostic d : diag.getChildren()) {
- if ((d.getSeverity() & Diagnostic.INFO) != 0) {
- infoMsg2diagnostic.put(d.getMessage(), d);
- } else if ((d.getSeverity() & Diagnostic.WARNING) != 0) {
- warnMsg2diagnostic.put(d.getMessage(), d);
- } else if ((d.getSeverity() & Diagnostic.ERROR) != 0) {
- errorMsg2diagnostic.put(d.getMessage(), d);
- }
- if (d instanceof AbstractValidationDiagnostic) {
- AbstractValidationDiagnostic dx = (AbstractValidationDiagnostic) d;
- List<AbstractValidationDiagnostic> list = issueCode2diagnostic
- .get(dx.getIssueCode());
- if (list == null) {
- list = new ArrayList<AbstractValidationDiagnostic>();
- issueCode2diagnostic.put(dx.getIssueCode(), list);
- }
- list.add(dx);
- }
-
- }
- for (Diagnostic d : diag.getChildren()) {
- if (!d.getChildren().isEmpty())
- createMappedDiagnostics(d);
- }
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.abstractexec.behavior.tests; + +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.common.util.Diagnostic; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EValidator; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.resource.XtextResourceSet; +import org.eclipse.xtext.util.CancelIndicator; +import org.eclipse.xtext.validation.AbstractValidationDiagnostic; +import org.eclipse.xtext.validation.CancelableDiagnostician; +import org.eclipse.xtext.validation.CheckMode; +import org.eclipse.xtext.validation.impl.ConcreteSyntaxEValidator; + +import com.google.common.collect.Maps; + +/** + * Base class for tests helps with getting diagnostics from a model. + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestBase { + + private Resource resource; + private String basePath; + private HashMap<String, Diagnostic> infoMsg2diagnostic = new HashMap<String, Diagnostic>(); + private HashMap<String, Diagnostic> warnMsg2diagnostic = new HashMap<String, Diagnostic>(); + private HashMap<String, Diagnostic> errorMsg2diagnostic = new HashMap<String, Diagnostic>(); + private HashMap<String, List<AbstractValidationDiagnostic>> issueCode2diagnostic = new HashMap<String, List<AbstractValidationDiagnostic>>(); + + protected void prepare(String modelFile) { + try { + URL modelsDir = Activator.getInstance().getBundle() + .getEntry("models"); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + + resource = getResource(modelFile); + + Diagnostic diag = getDiag(resource.getContents().get(0)); + createMappedDiagnostics(diag); + } + + protected RoomModel getRoomModel() { + return (RoomModel) resource.getContents().get(0); + } + + /** + * @return a map from message text to Diagnostic object + */ + protected HashMap<String, Diagnostic> getInfoMsgToDiagnostic() { + return infoMsg2diagnostic; + } + + /** + * @return a map from message text to Diagnostic object + */ + protected HashMap<String, Diagnostic> getWarningMsgToDiagnostic() { + return warnMsg2diagnostic; + } + + /** + * @return a map from message text to Diagnostic object + */ + protected HashMap<String, Diagnostic> getErrorMsgToDiagnostic() { + return errorMsg2diagnostic; + } + + /** + * + * @return a map from issueCode to Diagnostic object + */ + protected HashMap<String, List<AbstractValidationDiagnostic>> getIssueCode2diagnostic() { + return issueCode2diagnostic; + } + + protected Resource getResource(String modelName) { + XtextResourceSet rs = new XtextResourceSet(); + rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE); + String path = basePath + modelName; + URI uri = URI.createFileURI(path); + return rs.getResource(uri, true); + } + + protected Diagnostic getDiag(EObject ele) { + Map<Object, Object> options = Maps.newHashMap(); + options.put(CheckMode.KEY, CheckMode.ALL); + options.put(CancelableDiagnostician.CANCEL_INDICATOR, + CancelIndicator.NullImpl); + // disable concrete syntax validation, since a semantic model that has + // been parsed + // from the concrete syntax always complies with it - otherwise there + // are parse errors. + options.put( + ConcreteSyntaxEValidator.DISABLE_CONCRETE_SYNTAX_EVALIDATOR, + Boolean.TRUE); + // see EObjectValidator.getRootEValidator(Map<Object, Object>) + options.put(EValidator.class, Activator.getInstance() + .getDiagnostician()); + return Activator.getInstance().getDiagnostician() + .validate(ele, options); + } + + /** + * @param diag + * @param errorMsg2diagnostic + */ + private void createMappedDiagnostics(Diagnostic diag) { + for (Diagnostic d : diag.getChildren()) { + if ((d.getSeverity() & Diagnostic.INFO) != 0) { + infoMsg2diagnostic.put(d.getMessage(), d); + } else if ((d.getSeverity() & Diagnostic.WARNING) != 0) { + warnMsg2diagnostic.put(d.getMessage(), d); + } else if ((d.getSeverity() & Diagnostic.ERROR) != 0) { + errorMsg2diagnostic.put(d.getMessage(), d); + } + if (d instanceof AbstractValidationDiagnostic) { + AbstractValidationDiagnostic dx = (AbstractValidationDiagnostic) d; + List<AbstractValidationDiagnostic> list = issueCode2diagnostic + .get(dx.getIssueCode()); + if (list == null) { + list = new ArrayList<AbstractValidationDiagnostic>(); + issueCode2diagnostic.put(dx.getIssueCode(), list); + } + list.add(dx); + } + + } + for (Diagnostic d : diag.getChildren()) { + if (!d.getChildren().isEmpty()) + createMappedDiagnostics(d); + } + } +} diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestReachability.java b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestReachability.java index 495062da9..5453346f0 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestReachability.java +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestReachability.java @@ -1,104 +1,104 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Juergen Haug
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.abstractexec.behavior.tests;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.abstractexec.behavior.ReachabilityValidator;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.InitialTransition;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.StateGraphItem;
-import org.eclipse.xtext.validation.AbstractValidationDiagnostic;
-import org.eclipse.xtext.validation.FeatureBasedDiagnostic;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-public class TestReachability extends TestBase {
-
- private RoomModel model = null;
-
- @Before
- public void setUp() {
- prepare("reachability.room");
- model = getRoomModel();
- }
-
- @Test
- public void test() {
- if (model == null)
- Assert.fail("could not find model");
-
- Set<StateGraphItem> items = new HashSet<StateGraphItem>();
- for (ActorClass ac : model.getActorClasses()) {
- if (ac.getStateMachine() == null)
- continue;
- TreeIterator<EObject> iter = ac.getStateMachine().eAllContents();
- while (iter.hasNext()) {
- EObject obj = iter.next();
- if (obj instanceof StateGraphItem)
- items.add((StateGraphItem) obj);
- }
- }
-
- for (AbstractValidationDiagnostic d : getIssueCode2diagnostic().get(
- ReachabilityValidator.DIAG_CODE_UNREACHABLE)) {
- if (d instanceof FeatureBasedDiagnostic) {
- FeatureBasedDiagnostic dx = (FeatureBasedDiagnostic) d;
- StateGraph graph = (StateGraph) dx.getSourceEObject();
- Object feature = graph.eGet(dx.getFeature());
- if (feature instanceof EList) {
- EList<?> list = (EList<?>) feature;
- Object source = list.get(dx.getIndex());
- if (source instanceof StateGraphItem) {
- checkUnreachable((StateGraphItem) source);
- items.remove(source);
- } else
- Assert.fail("unexpected test item:" + source);
- }
- }
- }
-
- for (StateGraphItem item : items) {
- if (item instanceof InitialTransition) {
- if (item.eContainer().eContainer() instanceof ActorClass)
- continue;
- State container = (State) item.eContainer().eContainer();
- Assert.assertTrue(
- item + " is NOT marked Unreachable (or name doesn't end with '_1' ?)",
- container.getName().endsWith("_1"));
- } else
- Assert.assertTrue(
- item + " is NOT marked Unreachable (or name doesn't end with '_1' ?)",
- item.getName().endsWith("_1"));
- }
- }
-
- private void checkUnreachable(StateGraphItem item) {
- if (item instanceof InitialTransition) {
- Assert.assertTrue(
- item + " is incorrectly marked UNreachable (or name doesn't end with '_0' ?)",
- item.getName().endsWith("_0"));
- } else
- Assert.assertTrue(
- item + " is incorrectly marked UNreachable (or name doesn't end with '_0' ?)",
- item.getName().endsWith("_0"));
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Juergen Haug + * + *******************************************************************************/ + +package org.eclipse.etrice.abstractexec.behavior.tests; + +import java.util.HashSet; +import java.util.Set; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.abstractexec.behavior.ReachabilityValidator; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.InitialTransition; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.core.room.StateGraphItem; +import org.eclipse.xtext.validation.AbstractValidationDiagnostic; +import org.eclipse.xtext.validation.FeatureBasedDiagnostic; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +public class TestReachability extends TestBase { + + private RoomModel model = null; + + @Before + public void setUp() { + prepare("reachability.room"); + model = getRoomModel(); + } + + @Test + public void test() { + if (model == null) + Assert.fail("could not find model"); + + Set<StateGraphItem> items = new HashSet<StateGraphItem>(); + for (ActorClass ac : model.getActorClasses()) { + if (ac.getStateMachine() == null) + continue; + TreeIterator<EObject> iter = ac.getStateMachine().eAllContents(); + while (iter.hasNext()) { + EObject obj = iter.next(); + if (obj instanceof StateGraphItem) + items.add((StateGraphItem) obj); + } + } + + for (AbstractValidationDiagnostic d : getIssueCode2diagnostic().get( + ReachabilityValidator.DIAG_CODE_UNREACHABLE)) { + if (d instanceof FeatureBasedDiagnostic) { + FeatureBasedDiagnostic dx = (FeatureBasedDiagnostic) d; + StateGraph graph = (StateGraph) dx.getSourceEObject(); + Object feature = graph.eGet(dx.getFeature()); + if (feature instanceof EList) { + EList<?> list = (EList<?>) feature; + Object source = list.get(dx.getIndex()); + if (source instanceof StateGraphItem) { + checkUnreachable((StateGraphItem) source); + items.remove(source); + } else + Assert.fail("unexpected test item:" + source); + } + } + } + + for (StateGraphItem item : items) { + if (item instanceof InitialTransition) { + if (item.eContainer().eContainer() instanceof ActorClass) + continue; + State container = (State) item.eContainer().eContainer(); + Assert.assertTrue( + item + " is NOT marked Unreachable (or name doesn't end with '_1' ?)", + container.getName().endsWith("_1")); + } else + Assert.assertTrue( + item + " is NOT marked Unreachable (or name doesn't end with '_1' ?)", + item.getName().endsWith("_1")); + } + } + + private void checkUnreachable(StateGraphItem item) { + if (item instanceof InitialTransition) { + Assert.assertTrue( + item + " is incorrectly marked UNreachable (or name doesn't end with '_0' ?)", + item.getName().endsWith("_0")); + } else + Assert.assertTrue( + item + " is incorrectly marked UNreachable (or name doesn't end with '_0' ?)", + item.getName().endsWith("_0")); + } +} diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemanticValidation.java b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemanticValidation.java index 4019deb05..ee6a88048 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemanticValidation.java +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemanticValidation.java @@ -1,41 +1,41 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.abstractexec.behavior.tests;
-
-import static org.junit.Assert.assertEquals;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert (initial contribution)
- *
- */
-public class TestSemanticValidation extends TestBase {
-
- @SuppressWarnings("unused")
- private static final String MSG1 = "replace this with the expected error/Warning message";
-
- @Before
- public void setUp() {
- prepare("semantics.room");
- }
-
- @Test
- public void testSomething() {
- assertEquals("number of infos", 2, getInfoMsgToDiagnostic().size());
- assertEquals("number of warnings", 3, getWarningMsgToDiagnostic().size());
-// assertEquals("number of errors", 1, getErrorMsgToDiagnostic().size());
-// assertNotNull(MSG1, getErrorMsgToDiagnostic().get(MSG1));
- // further checks for all other messages...
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.abstractexec.behavior.tests; + +import static org.junit.Assert.assertEquals; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert (initial contribution) + * + */ +public class TestSemanticValidation extends TestBase { + + @SuppressWarnings("unused") + private static final String MSG1 = "replace this with the expected error/Warning message"; + + @Before + public void setUp() { + prepare("semantics.room"); + } + + @Test + public void testSomething() { + assertEquals("number of infos", 2, getInfoMsgToDiagnostic().size()); + assertEquals("number of warnings", 3, getWarningMsgToDiagnostic().size()); +// assertEquals("number of errors", 1, getErrorMsgToDiagnostic().size()); +// assertNotNull(MSG1, getErrorMsgToDiagnostic().get(MSG1)); + // further checks for all other messages... + } +} diff --git a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemantics.java b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemantics.java index b7d6e8603..c35d4a99d 100644 --- a/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemantics.java +++ b/tests/org.eclipse.etrice.abstractexec.behavior.tests/src/org/eclipse/etrice/abstractexec/behavior/tests/TestSemantics.java @@ -1,143 +1,143 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Juergen Haug
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.abstractexec.behavior.tests;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.abstractexec.behavior.AbstractExecutionValidator;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.StateGraphItem;
-import org.eclipse.etrice.core.room.Transition;
-import org.eclipse.etrice.core.room.Trigger;
-import org.eclipse.xtext.validation.AbstractValidationDiagnostic;
-import org.eclipse.xtext.validation.FeatureBasedDiagnostic;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-public class TestSemantics {
-
- public enum DiagCode {
- DIAG_CODE_VIOLATION_TRIGGER(
- AbstractExecutionValidator.DIAG_CODE_VIOLATION_TRIGGER, "vt"), DIAG_CODE_VIOLATION_MESSAGESEND(
- AbstractExecutionValidator.DIAG_CODE_VIOLATION_MESSAGESEND,
- "vm"), DIAG_CODE_MISSING_TRIGGER(
- AbstractExecutionValidator.DIAG_CODE_MISSING_TRIGGER, "rm"), DIAG_CODE_MISSING_MESSAGESEND(
- AbstractExecutionValidator.DIAG_CODE_MISSING_MESSAGESEND, "sm");
-
- public String diagCode, shortCut;
-
- DiagCode(String diagCode, String shortcut) {
- this.diagCode = diagCode;
- this.shortCut = shortcut;
- }
- }
-
- String PATTERN = ".*_("
- + DiagCode.DIAG_CODE_VIOLATION_TRIGGER.shortCut + "|"
- + DiagCode.DIAG_CODE_VIOLATION_MESSAGESEND.shortCut + "|"
- + DiagCode.DIAG_CODE_MISSING_MESSAGESEND.shortCut + "|"
- + DiagCode.DIAG_CODE_MISSING_TRIGGER.shortCut + ")+";
-
- TestBase basic, cashTerminal, current = null;
-
- @Before
- public void setUp() {
- basic = new TestBase();
- basic.prepare("semantics_basic.room");
- cashTerminal = new TestBase();
- cashTerminal.prepare("cashTerminal.room");
-
- }
-
- @Test
- public void test() {
- for (TestBase test : new TestBase[] { basic, cashTerminal }) {
- current = test;
-
- Set<StateGraphItem> items = new HashSet<StateGraphItem>();
- for (ActorClass ac : current.getRoomModel().getActorClasses()) {
- if (ac.getStateMachine() == null)
- continue;
- TreeIterator<EObject> iter = ac.getStateMachine()
- .eAllContents();
- while (iter.hasNext()) {
- EObject obj = iter.next();
- if (obj instanceof StateGraphItem)
- items.add((StateGraphItem) obj);
- }
- }
-
- for (DiagCode marker : DiagCode.values())
- if (test.getIssueCode2diagnostic().containsKey(marker.diagCode))
- for (AbstractValidationDiagnostic d : test
- .getIssueCode2diagnostic().get(marker.diagCode))
- if (d instanceof FeatureBasedDiagnostic)
- checkDiagnostic((FeatureBasedDiagnostic) d, marker,
- items);
-
- for (StateGraphItem item : items) {
- Assert.assertTrue(item + " does not have warnings", !item
- .getName().matches(".*_(vt|vm|rm|sm)+"));
- }
- }
-
- }
-
- private void checkDiagnostic(FeatureBasedDiagnostic d, DiagCode marker,
- Set<StateGraphItem> items) {
- EObject container = d.getSourceEObject();
- if (container instanceof StateGraph) {
- Object feature = container.eGet(d.getFeature());
- if (feature instanceof EList) {
- EList<?> list = (EList<?>) feature;
- Object source = list.get(d.getIndex());
- if (source instanceof StateGraphItem) {
- checkItem(((StateGraphItem) source).getName(), marker);
- items.remove(source);
- }
- }
- } else if (container instanceof Trigger) {
- if (container.eContainer() instanceof Transition) {
- checkItem(((Transition) container.eContainer()).getName(),
- marker);
- items.remove(container.eContainer());
- } else
- Assert.fail("unexpected test object: " + container.eContainer());
- } else if (container instanceof Transition) {
- checkItem(((Transition) container).getName(), marker);
- items.remove(container);
- } else if (container instanceof State) {
- checkItem(((State) container).getName(), marker);
- items.remove(container);
- } else
- Assert.fail("unexpected test object: " + container);
- }
-
- private void checkItem(String name, DiagCode diagCode) {
- int begin = name.lastIndexOf("_");
- String errorCodes = "";
- if (begin != -1)
- errorCodes = name.substring(begin);
- Assert.assertTrue("Missing warning (" + diagCode.diagCode
- + ") for item " + name + " ("
- + current.getRoomModel().getName() + ")",
- errorCodes.contains(diagCode.shortCut));
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Juergen Haug + * + *******************************************************************************/ + +package org.eclipse.etrice.abstractexec.behavior.tests; + +import java.util.HashSet; +import java.util.Set; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.abstractexec.behavior.AbstractExecutionValidator; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.core.room.StateGraphItem; +import org.eclipse.etrice.core.room.Transition; +import org.eclipse.etrice.core.room.Trigger; +import org.eclipse.xtext.validation.AbstractValidationDiagnostic; +import org.eclipse.xtext.validation.FeatureBasedDiagnostic; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +public class TestSemantics { + + public enum DiagCode { + DIAG_CODE_VIOLATION_TRIGGER( + AbstractExecutionValidator.DIAG_CODE_VIOLATION_TRIGGER, "vt"), DIAG_CODE_VIOLATION_MESSAGESEND( + AbstractExecutionValidator.DIAG_CODE_VIOLATION_MESSAGESEND, + "vm"), DIAG_CODE_MISSING_TRIGGER( + AbstractExecutionValidator.DIAG_CODE_MISSING_TRIGGER, "rm"), DIAG_CODE_MISSING_MESSAGESEND( + AbstractExecutionValidator.DIAG_CODE_MISSING_MESSAGESEND, "sm"); + + public String diagCode, shortCut; + + DiagCode(String diagCode, String shortcut) { + this.diagCode = diagCode; + this.shortCut = shortcut; + } + } + + String PATTERN = ".*_(" + + DiagCode.DIAG_CODE_VIOLATION_TRIGGER.shortCut + "|" + + DiagCode.DIAG_CODE_VIOLATION_MESSAGESEND.shortCut + "|" + + DiagCode.DIAG_CODE_MISSING_MESSAGESEND.shortCut + "|" + + DiagCode.DIAG_CODE_MISSING_TRIGGER.shortCut + ")+"; + + TestBase basic, cashTerminal, current = null; + + @Before + public void setUp() { + basic = new TestBase(); + basic.prepare("semantics_basic.room"); + cashTerminal = new TestBase(); + cashTerminal.prepare("cashTerminal.room"); + + } + + @Test + public void test() { + for (TestBase test : new TestBase[] { basic, cashTerminal }) { + current = test; + + Set<StateGraphItem> items = new HashSet<StateGraphItem>(); + for (ActorClass ac : current.getRoomModel().getActorClasses()) { + if (ac.getStateMachine() == null) + continue; + TreeIterator<EObject> iter = ac.getStateMachine() + .eAllContents(); + while (iter.hasNext()) { + EObject obj = iter.next(); + if (obj instanceof StateGraphItem) + items.add((StateGraphItem) obj); + } + } + + for (DiagCode marker : DiagCode.values()) + if (test.getIssueCode2diagnostic().containsKey(marker.diagCode)) + for (AbstractValidationDiagnostic d : test + .getIssueCode2diagnostic().get(marker.diagCode)) + if (d instanceof FeatureBasedDiagnostic) + checkDiagnostic((FeatureBasedDiagnostic) d, marker, + items); + + for (StateGraphItem item : items) { + Assert.assertTrue(item + " does not have warnings", !item + .getName().matches(".*_(vt|vm|rm|sm)+")); + } + } + + } + + private void checkDiagnostic(FeatureBasedDiagnostic d, DiagCode marker, + Set<StateGraphItem> items) { + EObject container = d.getSourceEObject(); + if (container instanceof StateGraph) { + Object feature = container.eGet(d.getFeature()); + if (feature instanceof EList) { + EList<?> list = (EList<?>) feature; + Object source = list.get(d.getIndex()); + if (source instanceof StateGraphItem) { + checkItem(((StateGraphItem) source).getName(), marker); + items.remove(source); + } + } + } else if (container instanceof Trigger) { + if (container.eContainer() instanceof Transition) { + checkItem(((Transition) container.eContainer()).getName(), + marker); + items.remove(container.eContainer()); + } else + Assert.fail("unexpected test object: " + container.eContainer()); + } else if (container instanceof Transition) { + checkItem(((Transition) container).getName(), marker); + items.remove(container); + } else if (container instanceof State) { + checkItem(((State) container).getName(), marker); + items.remove(container); + } else + Assert.fail("unexpected test object: " + container); + } + + private void checkItem(String name, DiagCode diagCode) { + int begin = name.lastIndexOf("_"); + String errorCodes = ""; + if (begin != -1) + errorCodes = name.substring(begin); + Assert.assertTrue("Missing warning (" + diagCode.diagCode + + ") for item " + name + " (" + + current.getRoomModel().getName() + ")", + errorCodes.contains(diagCode.shortCut)); + } +} diff --git a/tests/org.eclipse.etrice.core.config.tests/.classpath b/tests/org.eclipse.etrice.core.config.tests/.classpath index 26834e72e..dcc478748 100644 --- a/tests/org.eclipse.etrice.core.config.tests/.classpath +++ b/tests/org.eclipse.etrice.core.config.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.core.config.tests/.gitignore b/tests/org.eclipse.etrice.core.config.tests/.gitignore index 6d206a68e..1ca108d58 100644 --- a/tests/org.eclipse.etrice.core.config.tests/.gitignore +++ b/tests/org.eclipse.etrice.core.config.tests/.gitignore @@ -1,3 +1,3 @@ -bin
-gerritKeys
+bin +gerritKeys gerritKeys.pub
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.config.tests/.project b/tests/org.eclipse.etrice.core.config.tests/.project index 222434a1c..63e34047b 100644 --- a/tests/org.eclipse.etrice.core.config.tests/.project +++ b/tests/org.eclipse.etrice.core.config.tests/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.core.config.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.core.config.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.core.config.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.core.config.tests/.settings/org.eclipse.jdt.core.prefs index f287d53cf..c537b6306 100644 --- a/tests/org.eclipse.etrice.core.config.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.core.config.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,7 @@ -eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.core.config.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.core.config.tests/META-INF/MANIFEST.MF index 112634468..5c24d5979 100644 --- a/tests/org.eclipse.etrice.core.config.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.core.config.tests/META-INF/MANIFEST.MF @@ -1,25 +1,25 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Config DSL Tests
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-Version: 0.3.0.qualifier
-Bundle-SymbolicName: org.eclipse.etrice.core.config.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.etrice.core.config;bundle-version="0.3.0",
- org.eclipse.etrice.core.config.ui;bundle-version="0.3.0",
- org.eclipse.core.runtime,
- org.eclipse.xtext,
- org.eclipse.xtext.junit4,
- org.eclipse.xtext.ui.junit,
- org.junit,
- org.eclipse.ui.workbench;resolution:=optional
-Import-Package: org.apache.log4j,
- org.apache.commons.logging,
- org.junit.runner;version="4.5.0",
- org.junit.runner.manipulation;version="4.5.0",
- org.junit.runner.notification;version="4.5.0",
- org.junit.runners;version="4.5.0",
- org.junit.runners.model;version="4.5.0",
- org.hamcrest.core
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.core
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Config DSL Tests +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-Version: 0.3.0.qualifier +Bundle-SymbolicName: org.eclipse.etrice.core.config.tests; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: org.eclipse.etrice.core.config;bundle-version="0.3.0", + org.eclipse.etrice.core.config.ui;bundle-version="0.3.0", + org.eclipse.core.runtime, + org.eclipse.xtext, + org.eclipse.xtext.junit4, + org.eclipse.xtext.ui.junit, + org.junit, + org.eclipse.ui.workbench;resolution:=optional +Import-Package: org.apache.log4j, + org.apache.commons.logging, + org.junit.runner;version="4.5.0", + org.junit.runner.manipulation;version="4.5.0", + org.junit.runner.notification;version="4.5.0", + org.junit.runners;version="4.5.0", + org.junit.runners.model;version="4.5.0", + org.hamcrest.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.etrice.core diff --git a/tests/org.eclipse.etrice.core.config.tests/about.html b/tests/org.eclipse.etrice.core.config.tests/about.html index 82d49bf5f..d35d5aed6 100644 --- a/tests/org.eclipse.etrice.core.config.tests/about.html +++ b/tests/org.eclipse.etrice.core.config.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/org.eclipse.etrice.core.config.tests/build.properties b/tests/org.eclipse.etrice.core.config.tests/build.properties index 6ff55e9c6..82a84700f 100644 --- a/tests/org.eclipse.etrice.core.config.tests/build.properties +++ b/tests/org.eclipse.etrice.core.config.tests/build.properties @@ -1,3 +1,3 @@ -source.. = src-gen/
-bin.includes = META-INF/,\
- .
+source.. = src-gen/ +bin.includes = META-INF/,\ + . diff --git a/tests/org.eclipse.etrice.core.etmap.tests/.classpath b/tests/org.eclipse.etrice.core.etmap.tests/.classpath index 9a39368d9..0c22b5d7e 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/.classpath +++ b/tests/org.eclipse.etrice.core.etmap.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.core.etmap.tests/.gitignore b/tests/org.eclipse.etrice.core.etmap.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/.gitignore +++ b/tests/org.eclipse.etrice.core.etmap.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.core.etmap.tests/.project b/tests/org.eclipse.etrice.core.etmap.tests/.project index 05fc27921..864ae73df 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/.project +++ b/tests/org.eclipse.etrice.core.etmap.tests/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.core.etmap.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.core.etmap.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.core.etmap.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.core.etmap.tests/META-INF/MANIFEST.MF index 1e52bd800..5e179adf0 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.core.etmap.tests/META-INF/MANIFEST.MF @@ -1,22 +1,22 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.etrice.core.etmap.tests
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-Version: 0.3.0.qualifier
-Bundle-SymbolicName: org.eclipse.etrice.core.etmap.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.etrice.core.etmap;bundle-version="0.3.0",
- org.eclipse.etrice.core.etmap.ui;bundle-version="0.3.0",
- org.eclipse.core.runtime,
- org.eclipse.xtext.junit4,
- org.eclipse.ui.workbench;resolution:=optional
-Import-Package: org.apache.log4j,
- org.junit;version="4.5.0",
- org.junit.runner;version="4.5.0",
- org.junit.runner.manipulation;version="4.5.0",
- org.junit.runner.notification;version="4.5.0",
- org.junit.runners;version="4.5.0",
- org.junit.runners.model;version="4.5.0",
- org.hamcrest.core
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.core.etmap
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: org.eclipse.etrice.core.etmap.tests +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-Version: 0.3.0.qualifier +Bundle-SymbolicName: org.eclipse.etrice.core.etmap.tests; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: org.eclipse.etrice.core.etmap;bundle-version="0.3.0", + org.eclipse.etrice.core.etmap.ui;bundle-version="0.3.0", + org.eclipse.core.runtime, + org.eclipse.xtext.junit4, + org.eclipse.ui.workbench;resolution:=optional +Import-Package: org.apache.log4j, + org.junit;version="4.5.0", + org.junit.runner;version="4.5.0", + org.junit.runner.manipulation;version="4.5.0", + org.junit.runner.notification;version="4.5.0", + org.junit.runners;version="4.5.0", + org.junit.runners.model;version="4.5.0", + org.hamcrest.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.etrice.core.etmap diff --git a/tests/org.eclipse.etrice.core.etmap.tests/about.html b/tests/org.eclipse.etrice.core.etmap.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/about.html +++ b/tests/org.eclipse.etrice.core.etmap.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.etmap.tests/org.eclipse.etrice.core.etmap.tests.launch b/tests/org.eclipse.etrice.core.etmap.tests/org.eclipse.etrice.core.etmap.tests.launch index dba7d060e..99cb72aa4 100644 --- a/tests/org.eclipse.etrice.core.etmap.tests/org.eclipse.etrice.core.etmap.tests.launch +++ b/tests/org.eclipse.etrice.core.etmap.tests/org.eclipse.etrice.core.etmap.tests.launch @@ -1,13 +1,13 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.core.etmap.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.etmap.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.etmap.tests"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.core.etmap.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.etmap.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.etmap.tests"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.core.etphys.tests/.classpath b/tests/org.eclipse.etrice.core.etphys.tests/.classpath index 9a39368d9..0c22b5d7e 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/.classpath +++ b/tests/org.eclipse.etrice.core.etphys.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.core.etphys.tests/.gitignore b/tests/org.eclipse.etrice.core.etphys.tests/.gitignore index 079929515..d7b296e23 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/.gitignore +++ b/tests/org.eclipse.etrice.core.etphys.tests/.gitignore @@ -1,3 +1,3 @@ -bin
-*._trace
-*.smap
+bin +*._trace +*.smap diff --git a/tests/org.eclipse.etrice.core.etphys.tests/.project b/tests/org.eclipse.etrice.core.etphys.tests/.project index ac112f1ea..da2aaf01f 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/.project +++ b/tests/org.eclipse.etrice.core.etphys.tests/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.core.etphys.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.core.etphys.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.core.etphys.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.core.etphys.tests/META-INF/MANIFEST.MF index 90a08db20..46753a07d 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.core.etphys.tests/META-INF/MANIFEST.MF @@ -1,22 +1,22 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.etrice.core.etphys.tests
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-Version: 0.3.0.qualifier
-Bundle-SymbolicName: org.eclipse.etrice.core.etphys.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.etrice.core.etphys;bundle-version="0.3.0",
- org.eclipse.etrice.core.etphys.ui,
- org.eclipse.core.runtime,
- org.eclipse.xtext.junit4,
- org.eclipse.ui.workbench;resolution:=optional
-Import-Package: org.apache.log4j,
- org.junit;version="4.5.0",
- org.junit.runner;version="4.5.0",
- org.junit.runner.manipulation;version="4.5.0",
- org.junit.runner.notification;version="4.5.0",
- org.junit.runners;version="4.5.0",
- org.junit.runners.model;version="4.5.0",
- org.hamcrest.core
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.core.etphys
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: org.eclipse.etrice.core.etphys.tests +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-Version: 0.3.0.qualifier +Bundle-SymbolicName: org.eclipse.etrice.core.etphys.tests; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: org.eclipse.etrice.core.etphys;bundle-version="0.3.0", + org.eclipse.etrice.core.etphys.ui, + org.eclipse.core.runtime, + org.eclipse.xtext.junit4, + org.eclipse.ui.workbench;resolution:=optional +Import-Package: org.apache.log4j, + org.junit;version="4.5.0", + org.junit.runner;version="4.5.0", + org.junit.runner.manipulation;version="4.5.0", + org.junit.runner.notification;version="4.5.0", + org.junit.runners;version="4.5.0", + org.junit.runners.model;version="4.5.0", + org.hamcrest.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.etrice.core.etphys diff --git a/tests/org.eclipse.etrice.core.etphys.tests/about.html b/tests/org.eclipse.etrice.core.etphys.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/about.html +++ b/tests/org.eclipse.etrice.core.etphys.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.etphys.tests/org.eclipse.etrice.core.etphys.tests.launch b/tests/org.eclipse.etrice.core.etphys.tests/org.eclipse.etrice.core.etphys.tests.launch index 253b6977a..8a2b89ec7 100644 --- a/tests/org.eclipse.etrice.core.etphys.tests/org.eclipse.etrice.core.etphys.tests.launch +++ b/tests/org.eclipse.etrice.core.etphys.tests/org.eclipse.etrice.core.etphys.tests.launch @@ -1,13 +1,13 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.core.etphys.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.etphys.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.etphys.tests"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.core.etphys.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.etphys.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.etphys.tests"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/.classpath b/tests/org.eclipse.etrice.core.genmodel.tests/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/.classpath +++ b/tests/org.eclipse.etrice.core.genmodel.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/.gitignore b/tests/org.eclipse.etrice.core.genmodel.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/.gitignore +++ b/tests/org.eclipse.etrice.core.genmodel.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/.project b/tests/org.eclipse.etrice.core.genmodel.tests/.project index 18f8f7647..7f7ca4f3c 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/.project +++ b/tests/org.eclipse.etrice.core.genmodel.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.core.genmodel.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.core.genmodel.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.core.genmodel.tests/.settings/org.eclipse.jdt.core.prefs index f4c6d898b..58a8efbec 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.core.genmodel.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Tue May 22 09:38:05 CEST 2012
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Tue May 22 09:38:05 CEST 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.core.genmodel.tests/META-INF/MANIFEST.MF index 9470db1c8..5db644ff6 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.core.genmodel.tests/META-INF/MANIFEST.MF @@ -1,14 +1,14 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Tests
-Bundle-SymbolicName: org.eclipse.etrice.core.genmodel.tests
-Bundle-Version: 0.3.0.qualifier
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0",
- org.eclipse.etrice.core.genmodel;bundle-version="0.3.0",
- org.junit;bundle-version="4.8.1",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.core.runtime;bundle-version="3.7.0"
-Bundle-Activator: org.eclipse.etrice.core.genmodel.GenmodelTestsActivator
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Tests +Bundle-SymbolicName: org.eclipse.etrice.core.genmodel.tests +Bundle-Version: 0.3.0.qualifier +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0", + org.eclipse.etrice.core.genmodel;bundle-version="0.3.0", + org.junit;bundle-version="4.8.1", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.core.runtime;bundle-version="3.7.0" +Bundle-Activator: org.eclipse.etrice.core.genmodel.GenmodelTestsActivator +Bundle-ActivationPolicy: lazy diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/about.html b/tests/org.eclipse.etrice.core.genmodel.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/about.html +++ b/tests/org.eclipse.etrice.core.genmodel.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/build.properties b/tests/org.eclipse.etrice.core.genmodel.tests/build.properties index b338525ec..0e8e5eda9 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/build.properties +++ b/tests/org.eclipse.etrice.core.genmodel.tests/build.properties @@ -1,5 +1,5 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- models/
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + models/ diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/code_inheritance.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/code_inheritance.room index a76304627..eb4226526 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/code_inheritance.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/code_inheritance.room @@ -1,108 +1,108 @@ -RoomModel code_inheritance {
-
- SubSystemClass Main {
- ActorRef appl: Deriv
- }
-
- ActorClass Deriv extends Base {
- Structure { }
- Behavior {
- StateMachine {
- RefinedState BaseEntryExit {
- entry {
- "// derived entry"
- }
- }
- RefinedState Base {
- exit {
- "// derived exit"
- }
- subgraph {
- Transition init: initial -> state0 { }
- State state0
- }
- }
- RefinedState BaseSub {
- entry {
- "// derived entry"
- }
- }
- }
- }
- }
-
- ActorClass Base {
- Interface {
- Port p0: PC
- }
- Structure {
- external Port p0
- }
- Behavior {
- StateMachine {
- Transition init: initial -> BaseEntryExit {
- action {
- "// base init"
- }
- }
- Transition tr0: BaseEntryExit -> Base {
- triggers {
- <m1: p0>
- }
- action {
- "// base"
- }
- }
- Transition tr1: Base -> BaseSub {
- triggers {
- <m1: p0>
- }
- action {
- "// base"
- }
- }
- Transition tr2: BaseSub -> BaseEntryExitSub {
- triggers {
- <m1: p0>
- }
- action {
- "// base"
- }
- }
- State BaseEntryExit {
- entry {
- "// base entry"
- }
- exit {
- "// base exit"
- }
- }
- State Base
- State BaseSub {
- subgraph {
- Transition init: initial -> state0 { }
- State state0
- }
- }
- State BaseEntryExitSub {
- entry {
- "// base entry"
- }
- exit {
- "// base exit"
- }
- subgraph {
- Transition init: initial -> state0 { }
- State state0
- }
- }
- }
- }
- }
-
- ProtocolClass PC {
- incoming {
- Message m1()
- }
- }
+RoomModel code_inheritance { + + SubSystemClass Main { + ActorRef appl: Deriv + } + + ActorClass Deriv extends Base { + Structure { } + Behavior { + StateMachine { + RefinedState BaseEntryExit { + entry { + "// derived entry" + } + } + RefinedState Base { + exit { + "// derived exit" + } + subgraph { + Transition init: initial -> state0 { } + State state0 + } + } + RefinedState BaseSub { + entry { + "// derived entry" + } + } + } + } + } + + ActorClass Base { + Interface { + Port p0: PC + } + Structure { + external Port p0 + } + Behavior { + StateMachine { + Transition init: initial -> BaseEntryExit { + action { + "// base init" + } + } + Transition tr0: BaseEntryExit -> Base { + triggers { + <m1: p0> + } + action { + "// base" + } + } + Transition tr1: Base -> BaseSub { + triggers { + <m1: p0> + } + action { + "// base" + } + } + Transition tr2: BaseSub -> BaseEntryExitSub { + triggers { + <m1: p0> + } + action { + "// base" + } + } + State BaseEntryExit { + entry { + "// base entry" + } + exit { + "// base exit" + } + } + State Base + State BaseSub { + subgraph { + Transition init: initial -> state0 { } + State state0 + } + } + State BaseEntryExitSub { + entry { + "// base entry" + } + exit { + "// base exit" + } + subgraph { + Transition init: initial -> state0 { } + State state0 + } + } + } + } + } + + ProtocolClass PC { + incoming { + Message m1() + } + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/compound.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/compound.room index 2ce768b05..763c0a958 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/compound.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/compound.room @@ -1,137 +1,137 @@ -RoomModel compound {
-
- SubSystemClass Main {
- ActorRef appl: Appl
- }
-
- ActorClass Appl {
- Structure {
- ActorRef wrap: DeepWrapper
- ActorRef ref0: AC1
- ActorRef reg: Reg
- ActorRef conj: Conj
- Binding wrap.rel sub extra and ref0.extra
- Binding wrap.rel sub suppl and ref0.suppl
- Binding wrap.rel sub red and ref0.red
- Binding wrap.rel sub green and ref0.green
- Binding wrap.rel sub blue and ref0.blue
- Binding reg.p0 and conj.p0
- }
- Behavior { }
- }
-
- ActorClass AC1 {
- Interface {
- conjugated Port red: PC1
- conjugated Port green: PC1
- conjugated Port blue: PC1
- conjugated Port extra: PC2
- conjugated Port suppl: PC3
- }
- Structure {
- external Port red
- external Port green
- external Port blue
- external Port extra
- external Port suppl
- }
- Behavior { }
- }
-
- ActorClass DeepWrapper {
- Interface {
- Port rel: CPC
- }
- Structure {
- ActorRef ref0: Wrapper
- Binding rel and ref0.rel
- }
- Behavior { }
- }
-
-
- ActorClass Wrapper {
- Interface {
- Port rel: CPC
- }
- Structure {
- ActorRef ref0: AC2
- Binding rel sub suppl and ref0.suppl
- Binding rel sub extra and ref0.extra
- Binding rel sub red and ref0.red
- Binding rel sub green and ref0.green
- Binding rel sub blue and ref0.blue
- }
- Behavior { }
- }
-
- ActorClass AC2 {
- Interface {
- Port red: PC1
- Port green: PC1
- Port blue: PC1
- Port extra: PC2
- Port suppl: PC3
- }
- Structure {
- external Port red
- external Port green
- external Port blue
- external Port extra
- external Port suppl
- }
- Behavior { }
- }
-
- ActorClass Reg {
- Interface {
- Port p0: PC1
- }
- Structure {
- external Port p0
- }
- Behavior { }
- }
- ActorClass Conj {
- Interface {
- conjugated Port p0: PC1
- }
- Structure {
- external Port p0
- }
- Behavior { }
- }
-
- ProtocolClass PC1 {
- incoming {
- Message m1()
- }
- }
-
- ProtocolClass PC2 {
- incoming {
- Message m1()
- }
- }
-
- ProtocolClass PC3 {
- incoming {
- Message m1()
- }
- }
-
- CompoundProtocolClass CPC {
- SubProtocol red: PC1
- SubProtocol green: PC1
- SubProtocol blue: PC1
-
- SubProtocol extra: PC2
- SubProtocol suppl: PC3
- }
-
- CompoundProtocolClass CPC3 {
- SubProtocol red: PC1
- SubProtocol green: PC1
- SubProtocol blue: PC1
- }
+RoomModel compound { + + SubSystemClass Main { + ActorRef appl: Appl + } + + ActorClass Appl { + Structure { + ActorRef wrap: DeepWrapper + ActorRef ref0: AC1 + ActorRef reg: Reg + ActorRef conj: Conj + Binding wrap.rel sub extra and ref0.extra + Binding wrap.rel sub suppl and ref0.suppl + Binding wrap.rel sub red and ref0.red + Binding wrap.rel sub green and ref0.green + Binding wrap.rel sub blue and ref0.blue + Binding reg.p0 and conj.p0 + } + Behavior { } + } + + ActorClass AC1 { + Interface { + conjugated Port red: PC1 + conjugated Port green: PC1 + conjugated Port blue: PC1 + conjugated Port extra: PC2 + conjugated Port suppl: PC3 + } + Structure { + external Port red + external Port green + external Port blue + external Port extra + external Port suppl + } + Behavior { } + } + + ActorClass DeepWrapper { + Interface { + Port rel: CPC + } + Structure { + ActorRef ref0: Wrapper + Binding rel and ref0.rel + } + Behavior { } + } + + + ActorClass Wrapper { + Interface { + Port rel: CPC + } + Structure { + ActorRef ref0: AC2 + Binding rel sub suppl and ref0.suppl + Binding rel sub extra and ref0.extra + Binding rel sub red and ref0.red + Binding rel sub green and ref0.green + Binding rel sub blue and ref0.blue + } + Behavior { } + } + + ActorClass AC2 { + Interface { + Port red: PC1 + Port green: PC1 + Port blue: PC1 + Port extra: PC2 + Port suppl: PC3 + } + Structure { + external Port red + external Port green + external Port blue + external Port extra + external Port suppl + } + Behavior { } + } + + ActorClass Reg { + Interface { + Port p0: PC1 + } + Structure { + external Port p0 + } + Behavior { } + } + ActorClass Conj { + Interface { + conjugated Port p0: PC1 + } + Structure { + external Port p0 + } + Behavior { } + } + + ProtocolClass PC1 { + incoming { + Message m1() + } + } + + ProtocolClass PC2 { + incoming { + Message m1() + } + } + + ProtocolClass PC3 { + incoming { + Message m1() + } + } + + CompoundProtocolClass CPC { + SubProtocol red: PC1 + SubProtocol green: PC1 + SubProtocol blue: PC1 + + SubProtocol extra: PC2 + SubProtocol suppl: PC3 + } + + CompoundProtocolClass CPC3 { + SubProtocol red: PC1 + SubProtocol green: PC1 + SubProtocol blue: PC1 + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/connected_ports.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/connected_ports.room index c22a49143..d00db7656 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/connected_ports.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/connected_ports.room @@ -1,80 +1,80 @@ -RoomModel connected_ports {
- ProtocolClass PTest {
- incoming {
- Message in1 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef test_a1 : ATestA
- ActorRef test_a2 : ATestA
- ActorRef test_a3 : ATestA
- ActorRef test_b : ATestB
-
- Binding test_b.plain and test_a1.relay
- Binding test_a1.ext_end and test_b.repl
- Binding test_b.repl and test_a2.ext_end
- Binding test_b.repl and test_a3.ext_end
- Binding test_b.repl_relay and test_a2.relay
- Binding test_b.repl_relay and test_a3.relay
- }
-
- ActorClass ATestA {
- Interface {
- Port relay : PTest
- Port ext_end : PTest
- }
- Structure {
- external Port ext_end
- conjugated Port int_end : PTest
- ActorRef subact : ASub
- Binding subact.p1 and relay
- Binding subact.p2 and int_end
- }
- Behavior {
- }
- }
-
- ActorClass ATestB {
- Interface {
- conjugated Port plain : PTest
- conjugated Port repl [3] : PTest
- conjugated Port repl_relay [3] : PTest
- }
- Structure {
- external Port plain
- external Port repl
- ActorRef sub1 : ASubB
- Binding repl_relay and sub1.p
- }
- Behavior {
- }
- }
-
- ActorClass ASub {
- Interface {
- Port p1 : PTest
- Port p2 : PTest
- }
- Structure {
- external Port p1
- external Port p2
- }
- Behavior {
- }
- }
-
- ActorClass ASubB {
- Interface {
- conjugated Port p [3] : PTest
- }
- Structure {
- external Port p
- }
- Behavior {
- }
- }
-}
+RoomModel connected_ports { + ProtocolClass PTest { + incoming { + Message in1 () + } + outgoing { + Message out1 () + } + } + + SubSystemClass CMain { + ActorRef test_a1 : ATestA + ActorRef test_a2 : ATestA + ActorRef test_a3 : ATestA + ActorRef test_b : ATestB + + Binding test_b.plain and test_a1.relay + Binding test_a1.ext_end and test_b.repl + Binding test_b.repl and test_a2.ext_end + Binding test_b.repl and test_a3.ext_end + Binding test_b.repl_relay and test_a2.relay + Binding test_b.repl_relay and test_a3.relay + } + + ActorClass ATestA { + Interface { + Port relay : PTest + Port ext_end : PTest + } + Structure { + external Port ext_end + conjugated Port int_end : PTest + ActorRef subact : ASub + Binding subact.p1 and relay + Binding subact.p2 and int_end + } + Behavior { + } + } + + ActorClass ATestB { + Interface { + conjugated Port plain : PTest + conjugated Port repl [3] : PTest + conjugated Port repl_relay [3] : PTest + } + Structure { + external Port plain + external Port repl + ActorRef sub1 : ASubB + Binding repl_relay and sub1.p + } + Behavior { + } + } + + ActorClass ASub { + Interface { + Port p1 : PTest + Port p2 : PTest + } + Structure { + external Port p1 + external Port p2 + } + Behavior { + } + } + + ActorClass ASubB { + Interface { + conjugated Port p [3] : PTest + } + Structure { + external Port p + } + Behavior { + } + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/cpmult.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/cpmult.room index 318cd741f..ffbc47c24 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/cpmult.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/cpmult.room @@ -1,122 +1,122 @@ -RoomModel cpmult {
- import room.basic.types.* from "../../org.eclipse.etrice.modellib.java/models/Types.room"
-
- SubSystemClass Main {
- ActorRef appl: CPMult
- }
-
- ActorClass CPMult {
- Interface {
- Port p0: PC
- }
- Structure {
- external Port p0
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 { }
- Transition tr0: state0 -> cp cp0 {
- triggers {
- <m1: p0>
- }
- action {
- "// left"
- }
- }
- Transition tr1: state0 -> tp0 of state1 {
- triggers {
- <m2: p0>
- }
- }
- Transition tr3: cp cp0 -> state2 {
- action {
- "// dflt branch"
- }
- }
- Transition tr4: cp cp0 -> state3 {
- cond {
- "data.x>0"
- }
- action {
- "// false branch"
- }
- }
- Transition tr2: tp1 of state1 -> cp cp0 {
- action {
- "// right"
- }
- }
- ChoicePoint cp0
- State state0
- State state1 {
- subgraph {
- Transition tr0: my tp0 -> state0
- Transition tr1: state0 -> state1 {
- triggers {
- <m0: p0>
- }
- }
- Transition tr2: state0 -> my tp1 {
- triggers {
- <m1: p0>
- }
- action {
- "//state1/tr2"
- }
- }
- Transition tr3: state1 -> my tp1 {
- triggers {
- <m3: p0>
- }
- action {
- "//state1/tr3"
- }
- }
- EntryPoint tp0
- ExitPoint tp1
- State state0
- State state1
- }
- }
- State state2
- State state3
- }
- }
- }
-
- ProtocolClass PC {
- incoming {
- Message m0()
- Message m1(data: DC2)
- Message m2(data: DC3)
- Message m3(data: DC4)
- }
- outgoing {
- Message m1()
- }
- }
-
- DataClass DC {
- Attribute x: int32
- }
-
- DataClass DC1 {
- Attribute a: int32
- Attribute b: int32
- Attribute c: int32
- }
-
- DataClass DC2 extends DC {
- Attribute y: int32
- Attribute r: DC1
- }
-
- DataClass DC3 extends DC {
- Attribute z: int32
- }
-
- DataClass DC4 extends DC3 {
- Attribute w: int32
- }
-
+RoomModel cpmult { + import room.basic.types.* from "../../org.eclipse.etrice.modellib.java/models/Types.room" + + SubSystemClass Main { + ActorRef appl: CPMult + } + + ActorClass CPMult { + Interface { + Port p0: PC + } + Structure { + external Port p0 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { } + Transition tr0: state0 -> cp cp0 { + triggers { + <m1: p0> + } + action { + "// left" + } + } + Transition tr1: state0 -> tp0 of state1 { + triggers { + <m2: p0> + } + } + Transition tr3: cp cp0 -> state2 { + action { + "// dflt branch" + } + } + Transition tr4: cp cp0 -> state3 { + cond { + "data.x>0" + } + action { + "// false branch" + } + } + Transition tr2: tp1 of state1 -> cp cp0 { + action { + "// right" + } + } + ChoicePoint cp0 + State state0 + State state1 { + subgraph { + Transition tr0: my tp0 -> state0 + Transition tr1: state0 -> state1 { + triggers { + <m0: p0> + } + } + Transition tr2: state0 -> my tp1 { + triggers { + <m1: p0> + } + action { + "//state1/tr2" + } + } + Transition tr3: state1 -> my tp1 { + triggers { + <m3: p0> + } + action { + "//state1/tr3" + } + } + EntryPoint tp0 + ExitPoint tp1 + State state0 + State state1 + } + } + State state2 + State state3 + } + } + } + + ProtocolClass PC { + incoming { + Message m0() + Message m1(data: DC2) + Message m2(data: DC3) + Message m3(data: DC4) + } + outgoing { + Message m1() + } + } + + DataClass DC { + Attribute x: int32 + } + + DataClass DC1 { + Attribute a: int32 + Attribute b: int32 + Attribute c: int32 + } + + DataClass DC2 extends DC { + Attribute y: int32 + Attribute r: DC1 + } + + DataClass DC3 extends DC { + Attribute z: int32 + } + + DataClass DC4 extends DC3 { + Attribute w: int32 + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/fanning_relay.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/fanning_relay.room index 774f77923..314f21911 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/fanning_relay.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/fanning_relay.room @@ -1,67 +1,67 @@ -RoomModel relay {
- SubSystemClass Main {
- ActorRef c1: Comp
- ActorRef c2: Comp
- ActorRef cont: Cont
- ActorRef c3: Comp
- ActorRef c4: Comp
- Binding c1.port and cont.port
- Binding c2.port and cont.port
- Binding cont.port and c3.port
- Binding c4.port and cont.port
- }
-
- ActorClass Comp {
- Interface {
- conjugated Port port: PC
- }
- Structure {
- external Port port
- }
- Behavior { }
- }
-
- ActorClass Cont {
- Interface {
- Port port [4]: PC
- }
- Structure {
- ActorRef s1: Sub
- ActorRef s2: Sub
- ActorRef c1: Cont2
- Binding port and s2.port
- Binding port and s1.port
- Binding port and c1.fct
- }
- Behavior { }
- }
-
- ActorClass Cont2 {
- Interface {
- Port fct [*]: PC
- }
- Structure {
- ActorRef ss1: Sub
- ActorRef ss2: Sub
- Binding fct and ss1.port
- Binding fct and ss2.port
- }
- Behavior { }
- }
-
- ActorClass Sub {
- Interface {
- Port port: PC
- }
- Structure {
- external Port port
- }
- Behavior { }
- }
-
- ProtocolClass PC {
- incoming {
- Message in1()
- }
- }
+RoomModel relay { + SubSystemClass Main { + ActorRef c1: Comp + ActorRef c2: Comp + ActorRef cont: Cont + ActorRef c3: Comp + ActorRef c4: Comp + Binding c1.port and cont.port + Binding c2.port and cont.port + Binding cont.port and c3.port + Binding c4.port and cont.port + } + + ActorClass Comp { + Interface { + conjugated Port port: PC + } + Structure { + external Port port + } + Behavior { } + } + + ActorClass Cont { + Interface { + Port port [4]: PC + } + Structure { + ActorRef s1: Sub + ActorRef s2: Sub + ActorRef c1: Cont2 + Binding port and s2.port + Binding port and s1.port + Binding port and c1.fct + } + Behavior { } + } + + ActorClass Cont2 { + Interface { + Port fct [*]: PC + } + Structure { + ActorRef ss1: Sub + ActorRef ss2: Sub + Binding fct and ss1.port + Binding fct and ss2.port + } + Behavior { } + } + + ActorClass Sub { + Interface { + Port port: PC + } + Structure { + external Port port + } + Behavior { } + } + + ProtocolClass PC { + incoming { + Message in1() + } + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/hierarchy.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/hierarchy.room index 0d4bb03c2..6e95e7253 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/hierarchy.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/hierarchy.room @@ -1,25 +1,25 @@ -RoomModel hierarchy {
-
- SubSystemClass CMain {
- ActorRef l1a : ALevel1
- ActorRef l1b : ALevel1
- }
-
- ActorClass ALevel1 {
- Structure {
- ActorRef l2a : ALevel2
- ActorRef l2b : ALevel2
- }
- }
-
- ActorClass ALevel2 {
- Structure {
- ActorRef l3a : ALevel3
- ActorRef l3b : ALevel3
- ActorRef l3c : ALevel3
- }
- }
-
- ActorClass ALevel3 {
- }
-}
+RoomModel hierarchy { + + SubSystemClass CMain { + ActorRef l1a : ALevel1 + ActorRef l1b : ALevel1 + } + + ActorClass ALevel1 { + Structure { + ActorRef l2a : ALevel2 + ActorRef l2b : ALevel2 + } + } + + ActorClass ALevel2 { + Structure { + ActorRef l3a : ALevel3 + ActorRef l3b : ALevel3 + ActorRef l3c : ALevel3 + } + } + + ActorClass ALevel3 { + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/layers.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/layers.room index 900edc528..ad1edc530 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/layers.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/layers.room @@ -1,136 +1,136 @@ -RoomModel layers {
-
- ProtocolClass PServiceA {
- incoming {
- Message in1 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ProtocolClass PServiceB {
- incoming {
- Message in2 ()
- }
- outgoing {
- Message out2 ()
- }
- }
-
- ProtocolClass PServiceC {
- incoming {
- Message in3 ()
- }
- outgoing {
- Message out3 ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef app : AApplication
- ActorRef services : AServices
-
- LayerConnection ref app satisfied_by services.serviceA
- LayerConnection ref app satisfied_by services.serviceB
- }
-
- ActorClass AApplication {
- Structure {
- ActorRef subsysA : ASubSysA
- ActorRef subsysB : ASubSysB
- }
- }
-
- ActorClass ASubSysA {
- Structure {
- ActorRef userX : AServiceUser1
- ActorRef userY : AServiceUser2
- ActorRef userZ : AServiceUser2
- }
- }
-
- ActorClass ASubSysB {
- Interface {
- SPP service : PServiceC
- }
- Structure {
- ActorRef userX : AServiceUser1
- ActorRef userY : AServiceUser1
- ActorRef userZ : AServiceUser3
- ActorRef svcC : AServiceC
-
- LayerConnection relay_sap service satisfied_by svcC.service
- }
- }
-
- ActorClass AServiceUser1 {
- Structure {
- SAP sap : PServiceA
- }
- }
-
- ActorClass AServiceUser2 {
- Structure {
- SAP sap : PServiceB
- }
- }
-
- ActorClass AServiceUser3 {
- Structure {
- SAP sap : PServiceC
- }
- }
-
- ActorClass AServices {
- Interface {
- SPP serviceA : PServiceA
- SPP serviceB : PServiceB
- }
- Structure {
- ActorRef svcA : AServiceA
- ActorRef svcB : AServiceB
-
- LayerConnection relay_sap serviceA satisfied_by svcA.service
- LayerConnection relay_sap serviceB satisfied_by svcB.service
- }
- }
-
- ActorClass AServiceA {
- Interface {
- SPP service : PServiceA
- }
- Structure {
- ServiceImplementation of service
- }
- }
-
- ActorClass AServiceB {
- Interface {
- SPP service : PServiceB
- }
- Structure {
- ActorRef impl : AServiceBImpl
- LayerConnection relay_sap service satisfied_by impl.service
- }
- }
-
- ActorClass AServiceBImpl {
- Interface {
- SPP service : PServiceB
- }
- Structure {
- ServiceImplementation of service
- }
- }
-
- ActorClass AServiceC {
- Interface {
- SPP service : PServiceC
- }
- Structure {
- ServiceImplementation of service
- }
- }
-
-}
+RoomModel layers { + + ProtocolClass PServiceA { + incoming { + Message in1 () + } + outgoing { + Message out1 () + } + } + + ProtocolClass PServiceB { + incoming { + Message in2 () + } + outgoing { + Message out2 () + } + } + + ProtocolClass PServiceC { + incoming { + Message in3 () + } + outgoing { + Message out3 () + } + } + + SubSystemClass CMain { + ActorRef app : AApplication + ActorRef services : AServices + + LayerConnection ref app satisfied_by services.serviceA + LayerConnection ref app satisfied_by services.serviceB + } + + ActorClass AApplication { + Structure { + ActorRef subsysA : ASubSysA + ActorRef subsysB : ASubSysB + } + } + + ActorClass ASubSysA { + Structure { + ActorRef userX : AServiceUser1 + ActorRef userY : AServiceUser2 + ActorRef userZ : AServiceUser2 + } + } + + ActorClass ASubSysB { + Interface { + SPP service : PServiceC + } + Structure { + ActorRef userX : AServiceUser1 + ActorRef userY : AServiceUser1 + ActorRef userZ : AServiceUser3 + ActorRef svcC : AServiceC + + LayerConnection relay_sap service satisfied_by svcC.service + } + } + + ActorClass AServiceUser1 { + Structure { + SAP sap : PServiceA + } + } + + ActorClass AServiceUser2 { + Structure { + SAP sap : PServiceB + } + } + + ActorClass AServiceUser3 { + Structure { + SAP sap : PServiceC + } + } + + ActorClass AServices { + Interface { + SPP serviceA : PServiceA + SPP serviceB : PServiceB + } + Structure { + ActorRef svcA : AServiceA + ActorRef svcB : AServiceB + + LayerConnection relay_sap serviceA satisfied_by svcA.service + LayerConnection relay_sap serviceB satisfied_by svcB.service + } + } + + ActorClass AServiceA { + Interface { + SPP service : PServiceA + } + Structure { + ServiceImplementation of service + } + } + + ActorClass AServiceB { + Interface { + SPP service : PServiceB + } + Structure { + ActorRef impl : AServiceBImpl + LayerConnection relay_sap service satisfied_by impl.service + } + } + + ActorClass AServiceBImpl { + Interface { + SPP service : PServiceB + } + Structure { + ServiceImplementation of service + } + } + + ActorClass AServiceC { + Interface { + SPP service : PServiceC + } + Structure { + ServiceImplementation of service + } + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/ports.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/ports.room index e273cc978..4406f8ccd 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/ports.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/ports.room @@ -1,22 +1,22 @@ -RoomModel base {
- ProtocolClass PTest {
- incoming {
- Message msg()
- }
- }
-
- SubSystemClass CMain {
- ActorRef test: ATest
- }
-
- ActorClass ATest {
- Interface {
- Port relay: PTest
- Port externalEnd: PTest
- }
- Structure {
- Port internalEnd: PTest
- external Port externalEnd
- }
- }
-}
+RoomModel base { + ProtocolClass PTest { + incoming { + Message msg() + } + } + + SubSystemClass CMain { + ActorRef test: ATest + } + + ActorClass ATest { + Interface { + Port relay: PTest + Port externalEnd: PTest + } + Structure { + Port internalEnd: PTest + external Port externalEnd + } + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/replicated_actors.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/replicated_actors.room index 3846c345b..6cbf96cf0 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/replicated_actors.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/replicated_actors.room @@ -1,446 +1,446 @@ -RoomModel replact {
-
- SubSystemClass Main {
- ActorRef appl1: AC1_Appl
- ActorRef appl2: AC2_Appl
- ActorRef appl3: AC3_Appl
- ActorRef appl4: AC4_Appl
- ActorRef appl5: ApplicationTop
- }
-
- // example 1: regular port of replicated actor connected to regular ports
- ActorClass AC1_Appl {
- Structure {
- conjugated Port intp1: PC
- conjugated Port intp2: PC
- conjugated Port intp3: PC
- ActorRef ac1repl [ 3 ]: AC1_1
- Binding ac1repl.ac1p and intp1
- Binding intp2 and ac1repl.ac1p
- Binding intp3 and ac1repl.ac1p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitAnswer {
- action {
- "intp1.ping(\"ping from \"+getInstancePath()+\"/intp1\");"
- "intp2.ping(\"ping from \"+getInstancePath()+\"/intp2\");"
- "intp3.ping(\"ping from \"+getInstancePath()+\"/intp3\");"
- }
- }
- Transition tr0: WaitAnswer -> WaitAnswer {
- triggers {
- <reply: intp1|reply: intp2|reply: intp3>
- }
- action {
- "System.out.println(\"received \"+msg);"
- }
- }
- State WaitAnswer
- }
- }
- }
-
- ActorClass AC1_1 {
- Interface {
- Port ac1p: PC
- }
- Structure {
- external Port ac1p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitForPing { }
- Transition tr0: WaitForPing -> WaitForPing {
- triggers {
- <ping: ac1p>
- }
- action {
- "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);"
- }
- }
- State WaitForPing
- }
- }
- }
-
- // example 2: regular port of replicated actor connected to regular port of replicated actor
- ActorClass AC2_Appl {
- Structure {
- ActorRef ac1repl [ 3 ]: AC2_1
- ActorRef ac2repl [ 3 ]: AC2_2
- Binding ac2repl.ac2p and ac1repl.ac1p
- }
- }
-
- ActorClass AC2_1 {
- Interface {
- Port ac1p: PC
- }
- Structure {
- external Port ac1p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitForPing { }
- Transition tr0: WaitForPing -> WaitForPing {
- triggers {
- <ping: ac1p>
- }
- action {
- "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);"
- }
- }
- State WaitForPing
- }
- }
- }
- ActorClass AC2_2 {
- Interface {
- conjugated Port ac2p: PC
- }
- Structure {
- external Port ac2p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitAnswer {
- action {
- "ac2p.ping(\"ping from \"+getInstancePath());"
- }
- }
- Transition tr0: WaitAnswer -> WaitAnswer {
- triggers {
- <reply: ac2p>
- }
- action {
- "System.out.println(\"received \"+msg);"
- }
- }
- State WaitAnswer
- }
- }
- }
-
- // example 3: regular port of replicated actor connected to replicated port
- ActorClass AC3_Appl {
- Structure {
- conjugated Port intrep [3]: PC
- ActorRef ac1repl [ 3 ]: AC3_1
- Binding ac1repl.ac1p and intrep
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitAnswer {
- action {
- "intrep.ping(\"ping from \"+getInstancePath());"
- }
- }
- Transition tr0: WaitAnswer -> WaitAnswer {
- triggers {
- <reply: intrep>
- }
- action {
- "System.out.println(\"received \"+msg);"
- }
- }
- State WaitAnswer
- }
- }
- }
-
- ActorClass AC3_1 {
- Interface {
- Port ac1p: PC
- }
- Structure {
- external Port ac1p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitForPing { }
- Transition tr0: WaitForPing -> WaitForPing {
- triggers {
- <ping: ac1p>
- }
- action {
- "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);"
- }
- }
- State WaitForPing
- }
- }
- }
-
- // example 4: regular port of replicated actor connected to replicated port of replicated actor
- ActorClass AC4_Appl {
- Structure {
- ActorRef ac1repl [ 2 ]: AC4_1
- ActorRef ac2repl [ 4 ]: AC4_2
- Binding ac2repl.ac2p and ac1repl.ac1p
- }
- }
-
- ActorClass AC4_1 {
- Interface {
- Port ac1p[2]: PC
- }
- Structure {
- external Port ac1p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitForPing { }
- Transition tr0: WaitForPing -> WaitForPing {
- triggers {
- <ping: ac1p>
- }
- action {
- "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);"
- }
- }
- State WaitForPing
- }
- }
- }
- ActorClass AC4_2 {
- Interface {
- conjugated Port ac2p: PC
- }
- Structure {
- external Port ac2p
- }
- Behavior {
- StateMachine {
- Transition init: initial -> WaitAnswer {
- action {
- "ac2p.ping(\"ping from \"+getInstancePath());"
- }
- }
- Transition tr0: WaitAnswer -> WaitAnswer {
- triggers {
- <reply: ac2p>
- }
- action {
- "System.out.println(\"received \"+msg);"
- }
- }
- State WaitAnswer
- }
- }
- }
-
- // example 5: regular port of replicated actor connected to replicated port of sub actor
- ActorClass ApplicationTop {
- Structure {
- ActorRef testDriver: TestDriver
- ActorRef ref0 [ 8 ]: Channel
- Binding testDriver.testee and ref0.test
- }
- Behavior { }
- }
-
- ActorClass TestDriver {
- Interface {
- conjugated Port testee [8]: PTestDriver
- }
- Structure {
- external Port testee
- Attribute counter : int32 = "0"
- Attribute startTime : int64
- }
- Behavior {
- StateMachine {
- Transition init: initial -> TestRunning {
- action {
- "testee.start();"
- "System.out.println(\"Repl=\"+testee.getReplication());"
- "startTime = System.currentTimeMillis();"
- }
- }
- Transition tr0: TestRunning -> cp cp0 {
- triggers {
- <done: testee>
- }
- action {
- "counter++;"
- }
- }
- Transition tr1: cp cp0 -> TestRunning
- Transition tr2: cp cp0 -> TestDone {
- cond {
- "counter>=testee.getReplication()"
- }
- action {
- "long endTime = System.currentTimeMillis();"
- "//System.out.println(\"time in ms: \"+ (endTime-startTime));"
- }
- }
- ChoicePoint cp0
- State TestRunning
- State TestDone {
- entry {
- "System.out.println(\"Test Done\");"
- }
- }
- }
- }
- }
-
- ActorClass Channel {
- Interface {
- Port test: PTestDriver
- }
- Structure {
- ActorRef stack : ProtocolStack
- ActorRef tester : TestSender
- ActorRef mirror : Mirror
- Binding tester.stack and stack.sender
- Binding stack.receiver and mirror.stack
- Binding test and tester.test
- }
- Behavior { }
- }
-
- ActorClass TestSender {
- Interface {
- conjugated Port stack: CommunicationProtocol
- Port test: PTestDriver
- }
- Structure {
- external Port stack
- external Port test
- Attribute counter : int32 = "0"
- }
- Behavior {
- StateMachine {
- Transition init: initial -> idle { }
- Transition tr0: SendData -> cp cp0 {
- triggers {
- <receivedData: stack>
- }
- action {
- "counter++;"
- }
- }
- Transition tr1: cp cp0 -> SendData
- Transition tr2: cp cp0 -> TheEnd {
- cond {
- "counter>=1"
- }
- action {
- "test.done();"
- }
- }
- Transition tr3: idle -> SendData {
- triggers {
- <start: test>
- }
- action {
- "System.out.println(\"Channel Test Start\");"
- }
- }
- ChoicePoint cp0
- State SendData {
- entry {
- "stack.sendData(counter);"
- }
- }
- State TheEnd {
- entry {
- "System.out.println(\"Channel Test End\");"
- }
- }
- State idle
- }
- }
- }
-
- ActorClass Mirror {
- Interface {
- Port stack: CommunicationProtocol
- }
- Structure {
- external Port stack
- }
- Behavior {
- StateMachine {
- Transition init: initial -> mirror { }
- Transition tr0: mirror -> mirror {
- triggers {
- <sendData: stack>
- }
- action {
- "stack.receivedData();"
- }
- }
- State mirror
- }
- }
- }
-
- ActorClass ProtocolStack{
- Interface {
- Port sender: CommunicationProtocol
- conjugated Port receiver: CommunicationProtocol
- }
- Structure {
- external Port sender
- external Port receiver
- }
- Behavior {
- StateMachine {
- Transition init: initial -> idle { }
- Transition tr0: idle -> WaitingForReceive {
- triggers {
- <sendData: sender>
- }
- action {
- "receiver.sendData(data);"
- }
- }
- Transition tr1: WaitingForReceive -> idle {
- triggers {
- <receivedData: receiver>
- }
- action {
- "sender.receivedData();"
- }
- }
- State idle
- State WaitingForReceive
- }
- }
- }
-
- ProtocolClass PTestDriver {
- incoming {
- Message start()
- }
- outgoing {
- Message done()
- }
- }
-
- ProtocolClass CommunicationProtocol {
- incoming {
- Message sendData(data: int32)
- }
- outgoing {
- Message receivedData()
- }
- }
-
- ProtocolClass PC {
- incoming {
- Message ping(msg: string)
- }
- outgoing {
- Message reply(msg: string)
- }
- }
-
- PrimitiveType string: ptCharacter -> String (String) default "\"\""
- PrimitiveType int32: ptCharacter -> int (Integer) default "0"
- PrimitiveType int64: ptCharacter -> long (Long) default "0"
-}
+RoomModel replact { + + SubSystemClass Main { + ActorRef appl1: AC1_Appl + ActorRef appl2: AC2_Appl + ActorRef appl3: AC3_Appl + ActorRef appl4: AC4_Appl + ActorRef appl5: ApplicationTop + } + + // example 1: regular port of replicated actor connected to regular ports + ActorClass AC1_Appl { + Structure { + conjugated Port intp1: PC + conjugated Port intp2: PC + conjugated Port intp3: PC + ActorRef ac1repl [ 3 ]: AC1_1 + Binding ac1repl.ac1p and intp1 + Binding intp2 and ac1repl.ac1p + Binding intp3 and ac1repl.ac1p + } + Behavior { + StateMachine { + Transition init: initial -> WaitAnswer { + action { + "intp1.ping(\"ping from \"+getInstancePath()+\"/intp1\");" + "intp2.ping(\"ping from \"+getInstancePath()+\"/intp2\");" + "intp3.ping(\"ping from \"+getInstancePath()+\"/intp3\");" + } + } + Transition tr0: WaitAnswer -> WaitAnswer { + triggers { + <reply: intp1|reply: intp2|reply: intp3> + } + action { + "System.out.println(\"received \"+msg);" + } + } + State WaitAnswer + } + } + } + + ActorClass AC1_1 { + Interface { + Port ac1p: PC + } + Structure { + external Port ac1p + } + Behavior { + StateMachine { + Transition init: initial -> WaitForPing { } + Transition tr0: WaitForPing -> WaitForPing { + triggers { + <ping: ac1p> + } + action { + "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);" + } + } + State WaitForPing + } + } + } + + // example 2: regular port of replicated actor connected to regular port of replicated actor + ActorClass AC2_Appl { + Structure { + ActorRef ac1repl [ 3 ]: AC2_1 + ActorRef ac2repl [ 3 ]: AC2_2 + Binding ac2repl.ac2p and ac1repl.ac1p + } + } + + ActorClass AC2_1 { + Interface { + Port ac1p: PC + } + Structure { + external Port ac1p + } + Behavior { + StateMachine { + Transition init: initial -> WaitForPing { } + Transition tr0: WaitForPing -> WaitForPing { + triggers { + <ping: ac1p> + } + action { + "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);" + } + } + State WaitForPing + } + } + } + ActorClass AC2_2 { + Interface { + conjugated Port ac2p: PC + } + Structure { + external Port ac2p + } + Behavior { + StateMachine { + Transition init: initial -> WaitAnswer { + action { + "ac2p.ping(\"ping from \"+getInstancePath());" + } + } + Transition tr0: WaitAnswer -> WaitAnswer { + triggers { + <reply: ac2p> + } + action { + "System.out.println(\"received \"+msg);" + } + } + State WaitAnswer + } + } + } + + // example 3: regular port of replicated actor connected to replicated port + ActorClass AC3_Appl { + Structure { + conjugated Port intrep [3]: PC + ActorRef ac1repl [ 3 ]: AC3_1 + Binding ac1repl.ac1p and intrep + } + Behavior { + StateMachine { + Transition init: initial -> WaitAnswer { + action { + "intrep.ping(\"ping from \"+getInstancePath());" + } + } + Transition tr0: WaitAnswer -> WaitAnswer { + triggers { + <reply: intrep> + } + action { + "System.out.println(\"received \"+msg);" + } + } + State WaitAnswer + } + } + } + + ActorClass AC3_1 { + Interface { + Port ac1p: PC + } + Structure { + external Port ac1p + } + Behavior { + StateMachine { + Transition init: initial -> WaitForPing { } + Transition tr0: WaitForPing -> WaitForPing { + triggers { + <ping: ac1p> + } + action { + "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);" + } + } + State WaitForPing + } + } + } + + // example 4: regular port of replicated actor connected to replicated port of replicated actor + ActorClass AC4_Appl { + Structure { + ActorRef ac1repl [ 2 ]: AC4_1 + ActorRef ac2repl [ 4 ]: AC4_2 + Binding ac2repl.ac2p and ac1repl.ac1p + } + } + + ActorClass AC4_1 { + Interface { + Port ac1p[2]: PC + } + Structure { + external Port ac1p + } + Behavior { + StateMachine { + Transition init: initial -> WaitForPing { } + Transition tr0: WaitForPing -> WaitForPing { + triggers { + <ping: ac1p> + } + action { + "ac1p.reply(\"answer from \"+getInstancePath()+\" to \"+msg);" + } + } + State WaitForPing + } + } + } + ActorClass AC4_2 { + Interface { + conjugated Port ac2p: PC + } + Structure { + external Port ac2p + } + Behavior { + StateMachine { + Transition init: initial -> WaitAnswer { + action { + "ac2p.ping(\"ping from \"+getInstancePath());" + } + } + Transition tr0: WaitAnswer -> WaitAnswer { + triggers { + <reply: ac2p> + } + action { + "System.out.println(\"received \"+msg);" + } + } + State WaitAnswer + } + } + } + + // example 5: regular port of replicated actor connected to replicated port of sub actor + ActorClass ApplicationTop { + Structure { + ActorRef testDriver: TestDriver + ActorRef ref0 [ 8 ]: Channel + Binding testDriver.testee and ref0.test + } + Behavior { } + } + + ActorClass TestDriver { + Interface { + conjugated Port testee [8]: PTestDriver + } + Structure { + external Port testee + Attribute counter : int32 = "0" + Attribute startTime : int64 + } + Behavior { + StateMachine { + Transition init: initial -> TestRunning { + action { + "testee.start();" + "System.out.println(\"Repl=\"+testee.getReplication());" + "startTime = System.currentTimeMillis();" + } + } + Transition tr0: TestRunning -> cp cp0 { + triggers { + <done: testee> + } + action { + "counter++;" + } + } + Transition tr1: cp cp0 -> TestRunning + Transition tr2: cp cp0 -> TestDone { + cond { + "counter>=testee.getReplication()" + } + action { + "long endTime = System.currentTimeMillis();" + "//System.out.println(\"time in ms: \"+ (endTime-startTime));" + } + } + ChoicePoint cp0 + State TestRunning + State TestDone { + entry { + "System.out.println(\"Test Done\");" + } + } + } + } + } + + ActorClass Channel { + Interface { + Port test: PTestDriver + } + Structure { + ActorRef stack : ProtocolStack + ActorRef tester : TestSender + ActorRef mirror : Mirror + Binding tester.stack and stack.sender + Binding stack.receiver and mirror.stack + Binding test and tester.test + } + Behavior { } + } + + ActorClass TestSender { + Interface { + conjugated Port stack: CommunicationProtocol + Port test: PTestDriver + } + Structure { + external Port stack + external Port test + Attribute counter : int32 = "0" + } + Behavior { + StateMachine { + Transition init: initial -> idle { } + Transition tr0: SendData -> cp cp0 { + triggers { + <receivedData: stack> + } + action { + "counter++;" + } + } + Transition tr1: cp cp0 -> SendData + Transition tr2: cp cp0 -> TheEnd { + cond { + "counter>=1" + } + action { + "test.done();" + } + } + Transition tr3: idle -> SendData { + triggers { + <start: test> + } + action { + "System.out.println(\"Channel Test Start\");" + } + } + ChoicePoint cp0 + State SendData { + entry { + "stack.sendData(counter);" + } + } + State TheEnd { + entry { + "System.out.println(\"Channel Test End\");" + } + } + State idle + } + } + } + + ActorClass Mirror { + Interface { + Port stack: CommunicationProtocol + } + Structure { + external Port stack + } + Behavior { + StateMachine { + Transition init: initial -> mirror { } + Transition tr0: mirror -> mirror { + triggers { + <sendData: stack> + } + action { + "stack.receivedData();" + } + } + State mirror + } + } + } + + ActorClass ProtocolStack{ + Interface { + Port sender: CommunicationProtocol + conjugated Port receiver: CommunicationProtocol + } + Structure { + external Port sender + external Port receiver + } + Behavior { + StateMachine { + Transition init: initial -> idle { } + Transition tr0: idle -> WaitingForReceive { + triggers { + <sendData: sender> + } + action { + "receiver.sendData(data);" + } + } + Transition tr1: WaitingForReceive -> idle { + triggers { + <receivedData: receiver> + } + action { + "sender.receivedData();" + } + } + State idle + State WaitingForReceive + } + } + } + + ProtocolClass PTestDriver { + incoming { + Message start() + } + outgoing { + Message done() + } + } + + ProtocolClass CommunicationProtocol { + incoming { + Message sendData(data: int32) + } + outgoing { + Message receivedData() + } + } + + ProtocolClass PC { + incoming { + Message ping(msg: string) + } + outgoing { + Message reply(msg: string) + } + } + + PrimitiveType string: ptCharacter -> String (String) default "\"\"" + PrimitiveType int32: ptCharacter -> int (Integer) default "0" + PrimitiveType int64: ptCharacter -> long (Long) default "0" +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/states.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/states.room index 6c23eb7e8..22ba965f2 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/states.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/states.room @@ -1,108 +1,108 @@ -RoomModel states {
-
- PrimitiveType int32: ptInteger -> int32 (Integer) default "0"
-
- ProtocolClass PTest1 {
- incoming {
- Message a ()
- Message b (x : int32)
- Message c ()
- }
- outgoing {
- Message x ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef test : ATest
- }
-
- ActorClass ATest {
- Interface {
- Port fct : PTest1
- }
- Structure {
- external Port fct
- }
- Behavior {
- StateMachine {
- State State1 {}
- State State2 {}
- State State3 {
- subgraph {
- State State1 {}
- State State2 {}
- State State3 {}
- EntryPoint tp1
- TransitionPoint tp2
- ExitPoint tp3
- Transition tr0: initial -> State1 {}
- Transition tr1: my tp1 -> State3 {}
- Transition tr2: State1 -> State2 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: State2 -> State3 {
- triggers {
- <c:fct>
- }
- }
- Transition tr4: State3 -> State1 {
- triggers {
- <a:fct>
- }
- }
- Transition tr5: my tp2 -> State3 {
- triggers {
- <b:fct>
- }
- }
- Transition tr6: State3 -> my tp3 {
- triggers {
- <c:fct>
- }
- }
- }
- }
- State State4 {}
- TransitionPoint tp0
- ChoicePoint CP1
- Transition tr0: initial -> State1 {}
- Transition tr1: State1 -> State2 {
- triggers {
- <a:fct>
- }
- }
- Transition tr2: State2 -> cp CP1 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: cp CP1 -> State1 {}
- Transition tr4: cp CP1 -> State3 {
- cond {
- "x==2"
- }
- }
- Transition tr5: my tp0 -> tp1 of State3 {
- triggers {
- <a:fct>
- }
- }
- Transition tr6: cp CP1 -> State4 {
- cond {
- "x==3"
- }
- }
- Transition tr7: tp3 of State3 -> State2 {}
- Transition tr8: State3 -> State2 {
- triggers {
- <c:fct>
- }
- }
- }
- }
- }
-
-}
+RoomModel states { + + PrimitiveType int32: ptInteger -> int32 (Integer) default "0" + + ProtocolClass PTest1 { + incoming { + Message a () + Message b (x : int32) + Message c () + } + outgoing { + Message x () + } + } + + SubSystemClass CMain { + ActorRef test : ATest + } + + ActorClass ATest { + Interface { + Port fct : PTest1 + } + Structure { + external Port fct + } + Behavior { + StateMachine { + State State1 {} + State State2 {} + State State3 { + subgraph { + State State1 {} + State State2 {} + State State3 {} + EntryPoint tp1 + TransitionPoint tp2 + ExitPoint tp3 + Transition tr0: initial -> State1 {} + Transition tr1: my tp1 -> State3 {} + Transition tr2: State1 -> State2 { + triggers { + <b:fct> + } + } + Transition tr3: State2 -> State3 { + triggers { + <c:fct> + } + } + Transition tr4: State3 -> State1 { + triggers { + <a:fct> + } + } + Transition tr5: my tp2 -> State3 { + triggers { + <b:fct> + } + } + Transition tr6: State3 -> my tp3 { + triggers { + <c:fct> + } + } + } + } + State State4 {} + TransitionPoint tp0 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + <a:fct> + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + <b:fct> + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "x==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + <a:fct> + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "x==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + <c:fct> + } + } + } + } + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/states_inheritance.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/states_inheritance.room index 586fcee06..5d9a4d00b 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/states_inheritance.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/states_inheritance.room @@ -1,249 +1,249 @@ -RoomModel states_inheritance.t {
-
- PrimitiveType int32: ptInteger -> int32 (Integer) default "0"
-
- ProtocolClass PTimer {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timerTick ()
- }
- }
-
- ProtocolClass PTimeout {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timeoutTick ()
- }
- }
-
- ActorClass ATimingService {
- Interface {
- SPP timerSPP: PTimer
- SPP timeoutSPP: PTimeout
- }
- Structure {
- ServiceImplementation of timerSPP
- ServiceImplementation of timeoutSPP
- }
- }
-
- ProtocolClass PTest1 {
- incoming {
- Message a ()
- Message b (x : int32)
- Message c ()
- }
- outgoing {
- Message x ()
- }
- }
-
- ProtocolClass PTest2 {
- incoming {
- Message x ()
- Message y ()
- Message z ()
- }
- outgoing {
- Message a ()
- }
- }
-
- ProtocolClass PTest3 {
- incoming {
- Message a ()
- }
- outgoing {
- Message b ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef application : AApplication_CMain
- ActorRef timingService : ATimingService
-
- LayerConnection ref application satisfied_by timingService.timerSPP
- LayerConnection ref application satisfied_by timingService.timeoutSPP
- }
-
- // automatically inserted AApplication_CMain
- ActorClass AApplication_CMain {
- Structure {
- ActorRef test : ADerived
- }
- }
-
- ActorClass ATest {
- Interface {
- Port fct : PTest1
- }
- Structure {
- external Port fct
- Port subp : PTest2
- SAP timer: PTimer
- SAP timeout: PTimeout
- }
- Behavior {
- StateMachine {
- State State1 {}
- State State2 {}
- State State3 {
- subgraph {
- State State1 {}
- State State2 {}
- State State3 {}
- EntryPoint tp1
- TransitionPoint tp2
- ExitPoint tp3
- handler TransitionPoint tp5
- Transition tr0: initial -> State1 {}
- Transition tr1: my tp1 -> State3 {}
- Transition tr2: State1 -> State2 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: State2 -> State3 {
- triggers {
- <c:fct>
- }
- }
- Transition tr4: State3 -> State1 {
- triggers {
- <a:fct>
- }
- }
- Transition tr5: my tp2 -> State3 {
- triggers {
- <b:fct>
- }
- }
- Transition tr6: State3 -> my tp3 {
- triggers {
- <c:fct>
- }
- }
- Transition tr7: my tp5 -> my tp5 {
- triggers {
- <timeoutTick:timeout>
- }
- }
- }
- }
- State State4 {}
- TransitionPoint tp0
- TransitionPoint tp1
- ChoicePoint CP1
- Transition tr0: initial -> State1 {}
- Transition tr1: State1 -> State2 {
- triggers {
- <a:fct>
- }
- }
- Transition tr2: State2 -> cp CP1 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: cp CP1 -> State1 {}
- Transition tr4: cp CP1 -> State3 {
- cond {
- "data==2"
- }
- }
- Transition tr5: my tp0 -> tp1 of State3 {
- triggers {
- <a:fct>
- }
- }
- Transition tr6: cp CP1 -> State4 {
- cond {
- "data==3"
- }
- }
- Transition tr7: tp3 of State3 -> State2 {}
- Transition tr8: State3 -> State2 {
- triggers {
- <c:fct>
- }
- }
- Transition tr9: my tp1 -> State2 {
- triggers {
- <timerTick:timer>
- }
- }
- }
- }
- }
-
- ActorClass ADerived extends ATest {
- Interface {
- Port port : PTest3
- }
- Structure {
- external Port port
- }
- Behavior {
- StateMachine {
- RefinedState State3 {
- subgraph {
- State State4 {}
- EntryPoint tp6
- TransitionPoint tp7
- Transition tr8: my tp6 -> State2 {}
- Transition tr9: my tp7 -> my tp7 {
- triggers {
- <z:subp>
- }
- }
- Transition tr10a: State2 -> State4 {
- triggers {
- <y:subp>
- }
- }
- Transition tr11a: State4 -> my tp3 {
- triggers {
- <z:subp>
- }
- }
- }
- }
- RefinedState State4 {
- subgraph {
- State State1 {}
- State State2 {}
- Transition tr0: initial -> State1 {}
- Transition tr1: State1 -> State2 {
- triggers {
- <a:port>
- }
- }
- }
- }
- State State5 {}
- Transition tr10: State1 -> State5 {
- triggers {
- <a:port>
- }
- }
- Transition tr11: cp CP1 -> State5 {
- cond {
- "data==4"
- }
- }
- Transition tr12: State5 -> tp6 of State3 {
- triggers {
- <a:port>
- }
- }
- }
- }
- }
-
-}
+RoomModel states_inheritance.t { + + PrimitiveType int32: ptInteger -> int32 (Integer) default "0" + + ProtocolClass PTimer { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timerTick () + } + } + + ProtocolClass PTimeout { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timeoutTick () + } + } + + ActorClass ATimingService { + Interface { + SPP timerSPP: PTimer + SPP timeoutSPP: PTimeout + } + Structure { + ServiceImplementation of timerSPP + ServiceImplementation of timeoutSPP + } + } + + ProtocolClass PTest1 { + incoming { + Message a () + Message b (x : int32) + Message c () + } + outgoing { + Message x () + } + } + + ProtocolClass PTest2 { + incoming { + Message x () + Message y () + Message z () + } + outgoing { + Message a () + } + } + + ProtocolClass PTest3 { + incoming { + Message a () + } + outgoing { + Message b () + } + } + + SubSystemClass CMain { + ActorRef application : AApplication_CMain + ActorRef timingService : ATimingService + + LayerConnection ref application satisfied_by timingService.timerSPP + LayerConnection ref application satisfied_by timingService.timeoutSPP + } + + // automatically inserted AApplication_CMain + ActorClass AApplication_CMain { + Structure { + ActorRef test : ADerived + } + } + + ActorClass ATest { + Interface { + Port fct : PTest1 + } + Structure { + external Port fct + Port subp : PTest2 + SAP timer: PTimer + SAP timeout: PTimeout + } + Behavior { + StateMachine { + State State1 {} + State State2 {} + State State3 { + subgraph { + State State1 {} + State State2 {} + State State3 {} + EntryPoint tp1 + TransitionPoint tp2 + ExitPoint tp3 + handler TransitionPoint tp5 + Transition tr0: initial -> State1 {} + Transition tr1: my tp1 -> State3 {} + Transition tr2: State1 -> State2 { + triggers { + <b:fct> + } + } + Transition tr3: State2 -> State3 { + triggers { + <c:fct> + } + } + Transition tr4: State3 -> State1 { + triggers { + <a:fct> + } + } + Transition tr5: my tp2 -> State3 { + triggers { + <b:fct> + } + } + Transition tr6: State3 -> my tp3 { + triggers { + <c:fct> + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + <timeoutTick:timeout> + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + <a:fct> + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + <b:fct> + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + <a:fct> + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + <c:fct> + } + } + Transition tr9: my tp1 -> State2 { + triggers { + <timerTick:timer> + } + } + } + } + } + + ActorClass ADerived extends ATest { + Interface { + Port port : PTest3 + } + Structure { + external Port port + } + Behavior { + StateMachine { + RefinedState State3 { + subgraph { + State State4 {} + EntryPoint tp6 + TransitionPoint tp7 + Transition tr8: my tp6 -> State2 {} + Transition tr9: my tp7 -> my tp7 { + triggers { + <z:subp> + } + } + Transition tr10a: State2 -> State4 { + triggers { + <y:subp> + } + } + Transition tr11a: State4 -> my tp3 { + triggers { + <z:subp> + } + } + } + } + RefinedState State4 { + subgraph { + State State1 {} + State State2 {} + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + <a:port> + } + } + } + } + State State5 {} + Transition tr10: State1 -> State5 { + triggers { + <a:port> + } + } + Transition tr11: cp CP1 -> State5 { + cond { + "data==4" + } + } + Transition tr12: State5 -> tp6 of State3 { + triggers { + <a:port> + } + } + } + } + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/states_triggers.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/states_triggers.room index 63b581c04..9d61c910c 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/states_triggers.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/states_triggers.room @@ -1,176 +1,176 @@ -RoomModel states_trigers {
-
- PrimitiveType int32: ptInteger -> int32 (Integer) default "0"
-
- ProtocolClass PTimer {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timerTick ()
- }
- }
-
- ProtocolClass PTimeout {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timeoutTick ()
- }
- }
-
- ActorClass ATimingService {
- Interface {
- SPP timerSPP: PTimer
- SPP timeoutSPP: PTimeout
- }
- Structure {
- ServiceImplementation of timerSPP
- ServiceImplementation of timeoutSPP
- }
- }
-
- ProtocolClass PTest1 {
- incoming {
- Message a ()
- Message b (x : int32)
- Message c ()
- }
- outgoing {
- Message x ()
- }
- }
-
- ProtocolClass PTest2 {
- incoming {
- Message x ()
- Message y ()
- Message z ()
- }
- outgoing {
- Message a ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef application : AApplication_CMain
- ActorRef timingService : ATimingService
-
- LayerConnection ref application satisfied_by timingService.timerSPP
- LayerConnection ref application satisfied_by timingService.timeoutSPP
- }
-
- // automatically inserted AApplication_CMain
- ActorClass AApplication_CMain {
- Structure {
- ActorRef test : ATest
- }
- }
-
- ActorClass ATest {
- Interface {
- Port fct : PTest1
- }
- Structure {
- external Port fct
- Port subp : PTest2
- SAP timer: PTimer
- SAP timeout: PTimeout
- }
- Behavior {
- StateMachine {
- State State1 {}
- State State2 {}
- State State3 {
- subgraph {
- State State1 {}
- State State2 {}
- State State3 {}
- EntryPoint tp1
- TransitionPoint tp2
- ExitPoint tp3
- handler TransitionPoint tp5
- Transition tr0: initial -> State1 {}
- Transition tr1: my tp1 -> State3 {}
- Transition tr2: State1 -> State2 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: State2 -> State3 {
- triggers {
- <x:subp>
- }
- }
- Transition tr4: State3 -> State1 {
- triggers {
- <a:fct>
- }
- }
- Transition tr5: my tp2 -> State3 {
- triggers {
- <b:fct>
- }
- }
- Transition tr6: State3 -> my tp3 {
- triggers {
- <y:subp>
- }
- }
- Transition tr7: my tp5 -> my tp5 {
- triggers {
- <timeoutTick:timeout>
- }
- }
- }
- }
- State State4 {}
- TransitionPoint tp0
- TransitionPoint tp1
- ChoicePoint CP1
- Transition tr0: initial -> State1 {}
- Transition tr1: State1 -> State2 {
- triggers {
- <a:fct>
- }
- }
- Transition tr2: State2 -> cp CP1 {
- triggers {
- <b:fct>
- }
- }
- Transition tr3: cp CP1 -> State1 {}
- Transition tr4: cp CP1 -> State3 {
- cond {
- "data==2"
- }
- }
- Transition tr5: my tp0 -> tp1 of State3 {
- triggers {
- <a:fct>
- }
- }
- Transition tr6: cp CP1 -> State4 {
- cond {
- "data==3"
- }
- }
- Transition tr7: tp3 of State3 -> State2 {}
- Transition tr8: State3 -> State2 {
- triggers {
- <c:fct>
- }
- }
- Transition tr9: my tp1 -> State2 {
- triggers {
- <timerTick:timer>
- }
- }
- }
- }
- }
-
-}
+RoomModel states_trigers { + + PrimitiveType int32: ptInteger -> int32 (Integer) default "0" + + ProtocolClass PTimer { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timerTick () + } + } + + ProtocolClass PTimeout { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timeoutTick () + } + } + + ActorClass ATimingService { + Interface { + SPP timerSPP: PTimer + SPP timeoutSPP: PTimeout + } + Structure { + ServiceImplementation of timerSPP + ServiceImplementation of timeoutSPP + } + } + + ProtocolClass PTest1 { + incoming { + Message a () + Message b (x : int32) + Message c () + } + outgoing { + Message x () + } + } + + ProtocolClass PTest2 { + incoming { + Message x () + Message y () + Message z () + } + outgoing { + Message a () + } + } + + SubSystemClass CMain { + ActorRef application : AApplication_CMain + ActorRef timingService : ATimingService + + LayerConnection ref application satisfied_by timingService.timerSPP + LayerConnection ref application satisfied_by timingService.timeoutSPP + } + + // automatically inserted AApplication_CMain + ActorClass AApplication_CMain { + Structure { + ActorRef test : ATest + } + } + + ActorClass ATest { + Interface { + Port fct : PTest1 + } + Structure { + external Port fct + Port subp : PTest2 + SAP timer: PTimer + SAP timeout: PTimeout + } + Behavior { + StateMachine { + State State1 {} + State State2 {} + State State3 { + subgraph { + State State1 {} + State State2 {} + State State3 {} + EntryPoint tp1 + TransitionPoint tp2 + ExitPoint tp3 + handler TransitionPoint tp5 + Transition tr0: initial -> State1 {} + Transition tr1: my tp1 -> State3 {} + Transition tr2: State1 -> State2 { + triggers { + <b:fct> + } + } + Transition tr3: State2 -> State3 { + triggers { + <x:subp> + } + } + Transition tr4: State3 -> State1 { + triggers { + <a:fct> + } + } + Transition tr5: my tp2 -> State3 { + triggers { + <b:fct> + } + } + Transition tr6: State3 -> my tp3 { + triggers { + <y:subp> + } + } + Transition tr7: my tp5 -> my tp5 { + triggers { + <timeoutTick:timeout> + } + } + } + } + State State4 {} + TransitionPoint tp0 + TransitionPoint tp1 + ChoicePoint CP1 + Transition tr0: initial -> State1 {} + Transition tr1: State1 -> State2 { + triggers { + <a:fct> + } + } + Transition tr2: State2 -> cp CP1 { + triggers { + <b:fct> + } + } + Transition tr3: cp CP1 -> State1 {} + Transition tr4: cp CP1 -> State3 { + cond { + "data==2" + } + } + Transition tr5: my tp0 -> tp1 of State3 { + triggers { + <a:fct> + } + } + Transition tr6: cp CP1 -> State4 { + cond { + "data==3" + } + } + Transition tr7: tp3 of State3 -> State2 {} + Transition tr8: State3 -> State2 { + triggers { + <c:fct> + } + } + Transition tr9: my tp1 -> State2 { + triggers { + <timerTick:timer> + } + } + } + } + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/structure_inheritance.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/structure_inheritance.room index 126b16259..c10b681c5 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/structure_inheritance.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/structure_inheritance.room @@ -1,208 +1,208 @@ -RoomModel structure_inherit {
-
- PrimitiveType int32: ptInteger -> int32 (Integer) default "0"
-
- ProtocolClass PTimer {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timerTick ()
- }
- }
-
- ProtocolClass PTimeout {
- incoming {
- Message start (time_ms : int32)
- Message kill ()
- }
- outgoing {
- Message timeoutTick ()
- }
- }
-
- ActorClass ATimingService {
- Interface {
- SPP timerSPP: PTimer
- SPP timeoutSPP: PTimeout
- }
- Structure {
- ServiceImplementation of timerSPP
- ServiceImplementation of timeoutSPP
- }
- }
-
- ProtocolClass PBase {
- incoming {
- Message a ()
- Message b ()
- }
- outgoing {
- Message x ()
- Message y ()
- }
- }
-
- ProtocolClass PFunctionA {
- incoming {
- Message d ()
- Message e ()
- }
- outgoing {
- Message r ()
- Message s ()
- }
- }
-
- ProtocolClass PControl {
- incoming {
- Message c ()
- }
- outgoing {
- Message d ()
- }
- }
-
- ProtocolClass PFunctionB {
- incoming {
- Message h ()
- }
- outgoing {
- Message i ()
- }
- }
-
- SubSystemClass CMain {
- ActorRef application : AApplication_CMain
- ActorRef timingService : ATimingService
-
- LayerConnection ref application satisfied_by timingService.timerSPP
- LayerConnection ref application satisfied_by timingService.timeoutSPP
- }
-
- // automatically inserted AApplication_CMain
- ActorClass AApplication_CMain {
- Structure {
- ActorRef controller : AController
- ActorRef fcta : AFunctionA
- ActorRef fctb : AFunctionB
- ActorRef client : AClient
- Binding controller.base and fcta.base
- Binding controller.ctrl and fcta.ctrl
- Binding controller.base and fctb.base
- Binding controller.ctrl and fctb.ctrl
- Binding controller.base and client.base
- Binding controller.ctrl and client.ctrl
- Binding fcta.fct1 and client.pa1
- Binding fctb.fct and client.pb
- Binding client.pa2 and fcta.fct2
- }
- }
-
- ActorClass ACommonBase {
- Interface {
- Port base : PBase
- }
- Structure {
- external Port base
- conjugated Port subbase [10] : PBase
- }
- Behavior {
- }
- }
-
- ActorClass AControl extends ACommonBase {
- Interface {
- Port ctrl : PControl
- }
- Structure {
- external Port ctrl
- conjugated Port subctrl [10] : PControl
- SAP ctrltimeout: PTimeout
- }
- Behavior {
- }
- }
-
- ActorClass ABaseController {
- Interface {
- conjugated Port base [10] : PBase
- }
- Structure {
- external Port base
- }
- Behavior {
- }
- }
-
- ActorClass AController extends ABaseController {
- Interface {
- conjugated Port ctrl [10] : PControl
- }
- Structure {
- external Port ctrl
- }
- Behavior {
- }
- }
-
- ActorClass ASubA extends AControl {
- Interface {
- Port fct : PFunctionA
- }
- Structure {
- external Port fct
- SAP timeout: PTimeout
- }
- Behavior {
- }
- }
-
- ActorClass AFunctionA extends AControl {
- Interface {
- Port fct1 : PFunctionA
- Port fct2 : PFunctionA
- }
- Structure {
- SAP timeout: PTimeout
- ActorRef sub1 : ASubA
- ActorRef sub2 : ASubA
- Binding subbase and sub1.base
- Binding subctrl and sub1.ctrl
- Binding subbase and sub2.base
- Binding subctrl and sub2.ctrl
- Binding fct1 and sub2.fct
- Binding fct2 and sub1.fct
- }
- Behavior {
- }
- }
-
- ActorClass AFunctionB extends AControl {
- Interface {
- Port fct : PFunctionB
- }
- Structure {
- external Port fct
- }
- Behavior {
- }
- }
-
- ActorClass AClient extends AControl {
- Interface {
- conjugated Port pa1 : PFunctionA
- conjugated Port pb : PFunctionB
- conjugated Port pa2 : PFunctionA
- }
- Structure {
- external Port pa1
- external Port pb
- external Port pa2
- }
- Behavior {
- }
- }
-
-}
+RoomModel structure_inherit { + + PrimitiveType int32: ptInteger -> int32 (Integer) default "0" + + ProtocolClass PTimer { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timerTick () + } + } + + ProtocolClass PTimeout { + incoming { + Message start (time_ms : int32) + Message kill () + } + outgoing { + Message timeoutTick () + } + } + + ActorClass ATimingService { + Interface { + SPP timerSPP: PTimer + SPP timeoutSPP: PTimeout + } + Structure { + ServiceImplementation of timerSPP + ServiceImplementation of timeoutSPP + } + } + + ProtocolClass PBase { + incoming { + Message a () + Message b () + } + outgoing { + Message x () + Message y () + } + } + + ProtocolClass PFunctionA { + incoming { + Message d () + Message e () + } + outgoing { + Message r () + Message s () + } + } + + ProtocolClass PControl { + incoming { + Message c () + } + outgoing { + Message d () + } + } + + ProtocolClass PFunctionB { + incoming { + Message h () + } + outgoing { + Message i () + } + } + + SubSystemClass CMain { + ActorRef application : AApplication_CMain + ActorRef timingService : ATimingService + + LayerConnection ref application satisfied_by timingService.timerSPP + LayerConnection ref application satisfied_by timingService.timeoutSPP + } + + // automatically inserted AApplication_CMain + ActorClass AApplication_CMain { + Structure { + ActorRef controller : AController + ActorRef fcta : AFunctionA + ActorRef fctb : AFunctionB + ActorRef client : AClient + Binding controller.base and fcta.base + Binding controller.ctrl and fcta.ctrl + Binding controller.base and fctb.base + Binding controller.ctrl and fctb.ctrl + Binding controller.base and client.base + Binding controller.ctrl and client.ctrl + Binding fcta.fct1 and client.pa1 + Binding fctb.fct and client.pb + Binding client.pa2 and fcta.fct2 + } + } + + ActorClass ACommonBase { + Interface { + Port base : PBase + } + Structure { + external Port base + conjugated Port subbase [10] : PBase + } + Behavior { + } + } + + ActorClass AControl extends ACommonBase { + Interface { + Port ctrl : PControl + } + Structure { + external Port ctrl + conjugated Port subctrl [10] : PControl + SAP ctrltimeout: PTimeout + } + Behavior { + } + } + + ActorClass ABaseController { + Interface { + conjugated Port base [10] : PBase + } + Structure { + external Port base + } + Behavior { + } + } + + ActorClass AController extends ABaseController { + Interface { + conjugated Port ctrl [10] : PControl + } + Structure { + external Port ctrl + } + Behavior { + } + } + + ActorClass ASubA extends AControl { + Interface { + Port fct : PFunctionA + } + Structure { + external Port fct + SAP timeout: PTimeout + } + Behavior { + } + } + + ActorClass AFunctionA extends AControl { + Interface { + Port fct1 : PFunctionA + Port fct2 : PFunctionA + } + Structure { + SAP timeout: PTimeout + ActorRef sub1 : ASubA + ActorRef sub2 : ASubA + Binding subbase and sub1.base + Binding subctrl and sub1.ctrl + Binding subbase and sub2.base + Binding subctrl and sub2.ctrl + Binding fct1 and sub2.fct + Binding fct2 and sub1.fct + } + Behavior { + } + } + + ActorClass AFunctionB extends AControl { + Interface { + Port fct : PFunctionB + } + Structure { + external Port fct + } + Behavior { + } + } + + ActorClass AClient extends AControl { + Interface { + conjugated Port pa1 : PFunctionA + conjugated Port pb : PFunctionB + conjugated Port pa2 : PFunctionA + } + Structure { + external Port pa1 + external Port pb + external Port pa2 + } + Behavior { + } + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/models/test.room b/tests/org.eclipse.etrice.core.genmodel.tests/models/test.room index 6a608fc09..0e0549f18 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/models/test.room +++ b/tests/org.eclipse.etrice.core.genmodel.tests/models/test.room @@ -1,30 +1,30 @@ -RoomModel test {
- ProtocolClass MyProtocol {
- incoming {
- Message in1()
- }
- outgoing {
- }
- }
-
- ActorClass Base {
- Interface {
- Port p: MyProtocol
- }
- Behavior {
- StateMachine {
- State sBase {}
- }
- }
- }
-
- ActorClass Derived extends Base {
- Behavior {
- StateMachine {
- State s {}
- State y {}
- RefinedState sBase {}
- }
- }
- }
-}
+RoomModel test { + ProtocolClass MyProtocol { + incoming { + Message in1() + } + outgoing { + } + } + + ActorClass Base { + Interface { + Port p: MyProtocol + } + Behavior { + StateMachine { + State sBase {} + } + } + } + + ActorClass Derived extends Base { + Behavior { + StateMachine { + State s {} + State y {} + RefinedState sBase {} + } + } + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/org.eclipse.etrice.core.genmodel.tests.launch b/tests/org.eclipse.etrice.core.genmodel.tests/org.eclipse.etrice.core.genmodel.tests.launch index 5d321c2ce..b571ac0d3 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/org.eclipse.etrice.core.genmodel.tests.launch +++ b/tests/org.eclipse.etrice.core.genmodel.tests/org.eclipse.etrice.core.genmodel.tests.launch @@ -1,40 +1,40 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.core.genmodel.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.genmodel.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.genmodel.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.sdk.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.core.genmodel.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.genmodel.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.genmodel.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.sdk.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/GenmodelTestsActivator.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/GenmodelTestsActivator.java index 481455cb1..4525da47a 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/GenmodelTestsActivator.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/GenmodelTestsActivator.java @@ -1,22 +1,22 @@ -package org.eclipse.etrice.core.genmodel;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class GenmodelTestsActivator extends Plugin implements BundleActivator {
-
- private static GenmodelTestsActivator instance = null;
-
- public static GenmodelTestsActivator getInstance() {
- return instance;
- }
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- instance = this;
- }
-
-}
+package org.eclipse.etrice.core.genmodel; + +import org.eclipse.core.runtime.Plugin; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class GenmodelTestsActivator extends Plugin implements BundleActivator { + + private static GenmodelTestsActivator instance = null; + + public static GenmodelTestsActivator getInstance() { + return instance; + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + + instance = this; + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCodeInheritance.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCodeInheritance.java index 111c99145..14ab0a1b8 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCodeInheritance.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCodeInheritance.java @@ -1,124 +1,124 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.room.RoomPackage;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestCodeInheritance extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> baseInstances;
- private HashMap<EClass, ArrayList<EObject>> derivedInstances;
- private ExpandedActorClass base;
- private ExpandedActorClass derived;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("code_inheritance.room");
- base = getActor("Base");
- derived = getActor("Deriv");
- baseInstances = collectInstances(base);
- derivedInstances = collectInstances(derived);
- }
-
- private ExpandedActorClass getActor(String name) {
- for (ExpandedActorClass xpac : root.getXpActorClasses()) {
- if (xpac.getActorClass().getName().equals(name))
- return xpac;
- }
- return null;
- }
-
- private State getState(ExpandedActorClass xpac, String name) {
- for (State s : xpac.getStateMachine().getStates()) {
- if (s.getName().equals(name))
- return s;
- }
- return null;
- }
-
- @Test
- public void testNumbers() {
- assertEquals("number of states", 6, baseInstances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertNull("number of choice points", baseInstances.get(RoomPackage.eINSTANCE.getChoicePoint()));
- assertNull("number of transition points", baseInstances.get(RoomPackage.eINSTANCE.getTransitionPoint()));
- assertNull("number of entry points", baseInstances.get(RoomPackage.eINSTANCE.getEntryPoint()));
- assertNull("number of exit points", baseInstances.get(RoomPackage.eINSTANCE.getExitPoint()));
- assertEquals("number of initial transitions", 3, baseInstances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 3, baseInstances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertNull("number of continuation transitions", baseInstances.get(RoomPackage.eINSTANCE.getContinuationTransition()));
- assertNull("number of branch transitions", baseInstances.get(RoomPackage.eINSTANCE.getCPBranchTransition()));
-
- assertEquals("number of states", 4, derivedInstances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertEquals("number of states", 3, derivedInstances.get(ETriceGenPackage.eINSTANCE.getExpandedRefinedState()).size());
- assertNull("number of choice points", derivedInstances.get(RoomPackage.eINSTANCE.getChoicePoint()));
- assertNull("number of transition points", derivedInstances.get(RoomPackage.eINSTANCE.getTransitionPoint()));
- assertNull("number of entry points", derivedInstances.get(RoomPackage.eINSTANCE.getEntryPoint()));
- assertNull("number of exit points", derivedInstances.get(RoomPackage.eINSTANCE.getExitPoint()));
- assertEquals("number of initial transitions", 4, derivedInstances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 3, derivedInstances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertNull("number of continuation transitions", derivedInstances.get(RoomPackage.eINSTANCE.getContinuationTransition()));
- assertNull("number of branch transitions", derivedInstances.get(RoomPackage.eINSTANCE.getCPBranchTransition()));
- }
-
- @Test
- public void testActionCodes() {
- State s = getState(derived, "BaseEntryExit");
- assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState);
- ExpandedRefinedState rs = (ExpandedRefinedState) s;
- assertEquals("entry code", "// derived entry\n", RoomHelpers.getDetailCode(rs.getEntryCode()));
- assertNull("exit code", rs.getExitCode());
- assertEquals("inherited entry", "// base entry\n", RoomHelpers.getDetailCode(rs.getInheritedEntry()));
- assertEquals("inherited exit", "// base exit\n", RoomHelpers.getDetailCode(rs.getInheritedExit()));
-
- s = getState(derived, "Base");
- assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState);
- rs = (ExpandedRefinedState) s;
- assertNull("entry code", rs.getEntryCode());
- assertEquals("exit code", "// derived exit\n", RoomHelpers.getDetailCode(rs.getExitCode()));
- assertEquals("inherited entry", "", RoomHelpers.getDetailCode(rs.getInheritedEntry()));
- assertEquals("inherited exit", "", RoomHelpers.getDetailCode(rs.getInheritedExit()));
-
- s = getState(derived, "BaseSub");
- assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState);
- rs = (ExpandedRefinedState) s;
- assertEquals("entry code", "// derived entry\n", RoomHelpers.getDetailCode(rs.getEntryCode()));
- assertNull("exit code", rs.getExitCode());
- assertEquals("inherited entry", "", RoomHelpers.getDetailCode(rs.getInheritedEntry()));
- assertEquals("inherited exit", "", RoomHelpers.getDetailCode(rs.getInheritedExit()));
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedRefinedState; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.room.RoomPackage; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.util.RoomHelpers; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestCodeInheritance extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> baseInstances; + private HashMap<EClass, ArrayList<EObject>> derivedInstances; + private ExpandedActorClass base; + private ExpandedActorClass derived; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("code_inheritance.room"); + base = getActor("Base"); + derived = getActor("Deriv"); + baseInstances = collectInstances(base); + derivedInstances = collectInstances(derived); + } + + private ExpandedActorClass getActor(String name) { + for (ExpandedActorClass xpac : root.getXpActorClasses()) { + if (xpac.getActorClass().getName().equals(name)) + return xpac; + } + return null; + } + + private State getState(ExpandedActorClass xpac, String name) { + for (State s : xpac.getStateMachine().getStates()) { + if (s.getName().equals(name)) + return s; + } + return null; + } + + @Test + public void testNumbers() { + assertEquals("number of states", 6, baseInstances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertNull("number of choice points", baseInstances.get(RoomPackage.eINSTANCE.getChoicePoint())); + assertNull("number of transition points", baseInstances.get(RoomPackage.eINSTANCE.getTransitionPoint())); + assertNull("number of entry points", baseInstances.get(RoomPackage.eINSTANCE.getEntryPoint())); + assertNull("number of exit points", baseInstances.get(RoomPackage.eINSTANCE.getExitPoint())); + assertEquals("number of initial transitions", 3, baseInstances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 3, baseInstances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertNull("number of continuation transitions", baseInstances.get(RoomPackage.eINSTANCE.getContinuationTransition())); + assertNull("number of branch transitions", baseInstances.get(RoomPackage.eINSTANCE.getCPBranchTransition())); + + assertEquals("number of states", 4, derivedInstances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertEquals("number of states", 3, derivedInstances.get(ETriceGenPackage.eINSTANCE.getExpandedRefinedState()).size()); + assertNull("number of choice points", derivedInstances.get(RoomPackage.eINSTANCE.getChoicePoint())); + assertNull("number of transition points", derivedInstances.get(RoomPackage.eINSTANCE.getTransitionPoint())); + assertNull("number of entry points", derivedInstances.get(RoomPackage.eINSTANCE.getEntryPoint())); + assertNull("number of exit points", derivedInstances.get(RoomPackage.eINSTANCE.getExitPoint())); + assertEquals("number of initial transitions", 4, derivedInstances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 3, derivedInstances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertNull("number of continuation transitions", derivedInstances.get(RoomPackage.eINSTANCE.getContinuationTransition())); + assertNull("number of branch transitions", derivedInstances.get(RoomPackage.eINSTANCE.getCPBranchTransition())); + } + + @Test + public void testActionCodes() { + State s = getState(derived, "BaseEntryExit"); + assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState); + ExpandedRefinedState rs = (ExpandedRefinedState) s; + assertEquals("entry code", "// derived entry\n", RoomHelpers.getDetailCode(rs.getEntryCode())); + assertNull("exit code", rs.getExitCode()); + assertEquals("inherited entry", "// base entry\n", RoomHelpers.getDetailCode(rs.getInheritedEntry())); + assertEquals("inherited exit", "// base exit\n", RoomHelpers.getDetailCode(rs.getInheritedExit())); + + s = getState(derived, "Base"); + assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState); + rs = (ExpandedRefinedState) s; + assertNull("entry code", rs.getEntryCode()); + assertEquals("exit code", "// derived exit\n", RoomHelpers.getDetailCode(rs.getExitCode())); + assertEquals("inherited entry", "", RoomHelpers.getDetailCode(rs.getInheritedEntry())); + assertEquals("inherited exit", "", RoomHelpers.getDetailCode(rs.getInheritedExit())); + + s = getState(derived, "BaseSub"); + assertTrue("is ExpandedRefinedState", s instanceof ExpandedRefinedState); + rs = (ExpandedRefinedState) s; + assertEquals("entry code", "// derived entry\n", RoomHelpers.getDetailCode(rs.getEntryCode())); + assertNull("exit code", rs.getExitCode()); + assertEquals("inherited entry", "", RoomHelpers.getDetailCode(rs.getInheritedEntry())); + assertEquals("inherited exit", "", RoomHelpers.getDetailCode(rs.getInheritedExit())); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCompoundProtocol.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCompoundProtocol.java index ef0b4899c..fb4bb2b59 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCompoundProtocol.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestCompoundProtocol.java @@ -1,92 +1,92 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestCompoundProtocol extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>();
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("compound.room");
-
- TreeIterator<EObject> it = root.eAllContents();
- while (it.hasNext()) {
- EObject obj = it.next();
- if (obj instanceof InstanceBase)
- path2inst.put(((InstanceBase) obj).getPath(), (InstanceBase) obj);
- }
- }
-
- private PortInstance getPort(String path) {
- return (PortInstance) path2inst.get(path);
- }
-
- @Test
- public void checkPeers() {
- PortInstance pi = getPort("/Main/appl/reg/p0");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/conj/p0");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/ref0/red");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/ref0/green");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/ref0/blue");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/ref0/extra");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/ref0/suppl");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/wrap/ref0/ref0/red");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/wrap/ref0/ref0/green");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/wrap/ref0/ref0/blue");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/wrap/ref0/ref0/extra");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
-
- pi = getPort("/Main/appl/wrap/ref0/ref0/suppl");
- assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size());
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; + +import java.util.HashMap; + +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestCompoundProtocol extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>(); + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("compound.room"); + + TreeIterator<EObject> it = root.eAllContents(); + while (it.hasNext()) { + EObject obj = it.next(); + if (obj instanceof InstanceBase) + path2inst.put(((InstanceBase) obj).getPath(), (InstanceBase) obj); + } + } + + private PortInstance getPort(String path) { + return (PortInstance) path2inst.get(path); + } + + @Test + public void checkPeers() { + PortInstance pi = getPort("/Main/appl/reg/p0"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/conj/p0"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/ref0/red"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/ref0/green"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/ref0/blue"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/ref0/extra"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/ref0/suppl"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/wrap/ref0/ref0/red"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/wrap/ref0/ref0/green"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/wrap/ref0/ref0/blue"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/wrap/ref0/ref0/extra"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + + pi = getPort("/Main/appl/wrap/ref0/ref0/suppl"); + assertEquals("port peers of "+pi.getPath(), 1, pi.getPeers().size()); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestConnectedPorts.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestConnectedPorts.java index 40033a586..eea8ec529 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestConnectedPorts.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestConnectedPorts.java @@ -1,90 +1,90 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortKind;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-
-public class TestConnectedPorts extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> instances;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("connected_ports.room");
- instances = collectInstances(root);
- }
-
- @Test
- public void testPortNumbers() {
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
- assertEquals("Number of PortInstances", 19, ports.size());
- }
-
- @Test
- public void testRelayPort() {
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
-
- PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a1/relay");
- assertNotNull("port expected", p);
- assertEquals("relay port expected", PortKind.RELAY, p.getKind());
- assertFalse("no conjuagted port expected", p.getPort().isConjugated());
- }
-
- @Test
- public void testInternalEndPort() {
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
-
- PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/int_end");
- assertNotNull("port expected", p);
- assertEquals("internal port expected", PortKind.INTERNAL, p.getKind());
- assertTrue("conjuagted port expected", p.getPort().isConjugated());
- assertEquals("port connected once", 1, p.getPeers().size());
- PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_a2/subact/p2");
- assertNotNull("peer expected", peer);
- PortInstance start = (PortInstance) getInstance(peer.getPeers(), "/CMain/test_a2/int_end");
- assertNotNull("peer expected", start);
- assertEquals("peer of peer is start", p, start);
- }
-
- @Test
- public void testExternalEndPortConnectedToRelayPort() {
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
-
- PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/subact/p1");
- assertNotNull("port expected", p);
- assertEquals("external port expected", PortKind.EXTERNAL, p.getKind());
- assertEquals("port connected once", 1, p.getPeers().size());
- PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_b/sub1/p");
- assertEquals("port connected twice", 2, peer.getPeers().size());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.PortKind; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + + +public class TestConnectedPorts extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("connected_ports.room"); + instances = collectInstances(root); + } + + @Test + public void testPortNumbers() { + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + assertEquals("Number of PortInstances", 19, ports.size()); + } + + @Test + public void testRelayPort() { + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + + PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a1/relay"); + assertNotNull("port expected", p); + assertEquals("relay port expected", PortKind.RELAY, p.getKind()); + assertFalse("no conjuagted port expected", p.getPort().isConjugated()); + } + + @Test + public void testInternalEndPort() { + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + + PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/int_end"); + assertNotNull("port expected", p); + assertEquals("internal port expected", PortKind.INTERNAL, p.getKind()); + assertTrue("conjuagted port expected", p.getPort().isConjugated()); + assertEquals("port connected once", 1, p.getPeers().size()); + PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_a2/subact/p2"); + assertNotNull("peer expected", peer); + PortInstance start = (PortInstance) getInstance(peer.getPeers(), "/CMain/test_a2/int_end"); + assertNotNull("peer expected", start); + assertEquals("peer of peer is start", p, start); + } + + @Test + public void testExternalEndPortConnectedToRelayPort() { + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + + PortInstance p = (PortInstance) getInstance(ports, "/CMain/test_a2/subact/p1"); + assertNotNull("port expected", p); + assertEquals("external port expected", PortKind.EXTERNAL, p.getKind()); + assertEquals("port connected once", 1, p.getPeers().size()); + PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/test_b/sub1/p"); + assertEquals("port connected twice", 2, peer.getPeers().size()); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestFanningRelayPorts.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestFanningRelayPorts.java index c67d7af87..93cbebb55 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestFanningRelayPorts.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestFanningRelayPorts.java @@ -1,91 +1,91 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.util.HashMap;
-import java.util.HashSet;
-
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestFanningRelayPorts extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>();
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("fanning_relay.room");
-
- TreeIterator<EObject> it = root.eAllContents();
- while (it.hasNext()) {
- EObject obj = it.next();
- if (obj instanceof InstanceBase)
- path2inst.put(((InstanceBase) obj).getPath(), (InstanceBase) obj);
- }
- }
-
- private PortInstance getPort(String path) {
- return (PortInstance) path2inst.get(path);
- }
-
- /*
- * TODO: investigate port connection algorithm for fanning relay ports
- *
- * CAUTION: it is crucial that the relay port of ActorClass Cont has multiplicity>=4.
- * Otherwise not all ports will be connected/connected wrong.
- */
- @Test
- public void checkConnections() {
- PortInstance pil1 = getPort("/Main/c1/port");
- PortInstance pil2 = getPort("/Main/c2/port");
- PortInstance pil3 = getPort("/Main/c3/port");
- PortInstance pil4 = getPort("/Main/c4/port");
-
- assertEquals("number of peers of "+pil1.getPath(), 1, pil1.getPeers().size());
- assertEquals("number of peers of "+pil2.getPath(), 1, pil2.getPeers().size());
- assertEquals("number of peers of "+pil3.getPath(), 1, pil3.getPeers().size());
- assertEquals("number of peers of "+pil4.getPath(), 1, pil4.getPeers().size());
-
- HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>();
- peers.add(pil1.getPeers().get(0));
- peers.add(pil2.getPeers().get(0));
- peers.add(pil3.getPeers().get(0));
- peers.add(pil4.getPeers().get(0));
-
- PortInstance pir1 = getPort("/Main/cont/s1/port");
- PortInstance pir2 = getPort("/Main/cont/s2/port");
- PortInstance pir3 = getPort("/Main/cont/c1/ss1/port");
- PortInstance pir4 = getPort("/Main/cont/c1/ss2/port");
-
- assertTrue("connected "+pir1.getPath(), peers.contains(pir1));
- assertTrue("connected "+pir2.getPath(), peers.contains(pir2));
- assertTrue("connected "+pir3.getPath(), peers.contains(pir3));
- assertTrue("connected "+pir4.getPath(), peers.contains(pir4));
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.util.HashMap; +import java.util.HashSet; + +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase; +import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestFanningRelayPorts extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>(); + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("fanning_relay.room"); + + TreeIterator<EObject> it = root.eAllContents(); + while (it.hasNext()) { + EObject obj = it.next(); + if (obj instanceof InstanceBase) + path2inst.put(((InstanceBase) obj).getPath(), (InstanceBase) obj); + } + } + + private PortInstance getPort(String path) { + return (PortInstance) path2inst.get(path); + } + + /* + * TODO: investigate port connection algorithm for fanning relay ports + * + * CAUTION: it is crucial that the relay port of ActorClass Cont has multiplicity>=4. + * Otherwise not all ports will be connected/connected wrong. + */ + @Test + public void checkConnections() { + PortInstance pil1 = getPort("/Main/c1/port"); + PortInstance pil2 = getPort("/Main/c2/port"); + PortInstance pil3 = getPort("/Main/c3/port"); + PortInstance pil4 = getPort("/Main/c4/port"); + + assertEquals("number of peers of "+pil1.getPath(), 1, pil1.getPeers().size()); + assertEquals("number of peers of "+pil2.getPath(), 1, pil2.getPeers().size()); + assertEquals("number of peers of "+pil3.getPath(), 1, pil3.getPeers().size()); + assertEquals("number of peers of "+pil4.getPath(), 1, pil4.getPeers().size()); + + HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>(); + peers.add(pil1.getPeers().get(0)); + peers.add(pil2.getPeers().get(0)); + peers.add(pil3.getPeers().get(0)); + peers.add(pil4.getPeers().get(0)); + + PortInstance pir1 = getPort("/Main/cont/s1/port"); + PortInstance pir2 = getPort("/Main/cont/s2/port"); + PortInstance pir3 = getPort("/Main/cont/c1/ss1/port"); + PortInstance pir4 = getPort("/Main/cont/c1/ss2/port"); + + assertTrue("connected "+pir1.getPath(), peers.contains(pir1)); + assertTrue("connected "+pir2.getPath(), peers.contains(pir2)); + assertTrue("connected "+pir3.getPath(), peers.contains(pir3)); + assertTrue("connected "+pir4.getPath(), peers.contains(pir4)); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestHierarchy.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestHierarchy.java index a102fadba..5de106aa7 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestHierarchy.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestHierarchy.java @@ -1,57 +1,57 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-
-public class TestHierarchy extends TestInstanceModelBuilderBase {
-
- private Root root;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("hierarchy.room");
- }
-
- @Test
- public void testInstances() {
-
- HashMap<EClass,ArrayList<EObject>> instances = collectInstances(root);
-
- assertEquals("Number of ComponentInstances", 1, instances.get(ETriceGenPackage.eINSTANCE.getSubSystemInstance()).size());
- assertEquals("Number of ActorInstances", 18, instances.get(ETriceGenPackage.eINSTANCE.getActorInstance()).size());
-
- ActorInstance ai = root.getSubSystemInstances().get(0).getInstances().get(0);
- assertEquals("Instance Path", "/CMain/l1a", ai.getPath());
-
- ai = ai.getInstances().get(1);
- assertEquals("Instance Path", "/CMain/l1a/l2b", ai.getPath());
-
- ai = ai.getInstances().get(2);
- assertEquals("Instance Path", "/CMain/l1a/l2b/l3c", ai.getPath());
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ActorInstance; +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + + +public class TestHierarchy extends TestInstanceModelBuilderBase { + + private Root root; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("hierarchy.room"); + } + + @Test + public void testInstances() { + + HashMap<EClass,ArrayList<EObject>> instances = collectInstances(root); + + assertEquals("Number of ComponentInstances", 1, instances.get(ETriceGenPackage.eINSTANCE.getSubSystemInstance()).size()); + assertEquals("Number of ActorInstances", 18, instances.get(ETriceGenPackage.eINSTANCE.getActorInstance()).size()); + + ActorInstance ai = root.getSubSystemInstances().get(0).getInstances().get(0); + assertEquals("Instance Path", "/CMain/l1a", ai.getPath()); + + ai = ai.getInstances().get(1); + assertEquals("Instance Path", "/CMain/l1a/l2b", ai.getPath()); + + ai = ai.getInstances().get(2); + assertEquals("Instance Path", "/CMain/l1a/l2b/l3c", ai.getPath()); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestInstanceModelBuilderBase.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestInstanceModelBuilderBase.java index cb2f988db..c9d05a25e 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestInstanceModelBuilderBase.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestInstanceModelBuilderBase.java @@ -1,159 +1,159 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.fail;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.genmodel.etricegen.IDiagnostician;
-import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.naming.RoomNameProvider;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.StateGraphItem;
-import org.eclipse.etrice.core.genmodel.base.ILogger;
-import org.eclipse.etrice.core.genmodel.builder.GeneratorModelBuilder;
-
-public class TestInstanceModelBuilderBase {
-
- class Logger implements ILogger {
-
- @Override
- public void logInfo(String text) {
- }
-
- @Override
- public void logError(String text, EObject obj) {
- }
-
- }
-
- class Diagnostician implements IDiagnostician {
-
- @Override
- public void warning(String msg, EObject source, EStructuralFeature feature) {
- }
-
- @Override
- public void warning(String msg, EObject source, EStructuralFeature feature, int index) {
- }
-
- @Override
- public void error(String msg, EObject source, EStructuralFeature feature) {
- fail(msg+RoomNameProvider.getLocation(source));
- }
-
- @Override
- public void error(String msg, EObject source, EStructuralFeature feature, int index) {
- fail(msg+RoomNameProvider.getLocation(source));
- }
-
- @Override
- public boolean isFailed() {
- return false;
- }
-
- }
-
- private String basePath;
-
- protected void prepare() {
- try {
- URL modelsDir = GenmodelTestsActivator.getInstance().getBundle().getEntry("models");
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- protected LinkedList<RoomModel> getModels(String modelName) {
- LinkedList<RoomModel> models = new LinkedList<RoomModel>();
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- Resource resource = rs.getResource(uri, true);
- Object root = resource.getContents().get(0);
- if (root instanceof RoomModel)
- models.add((RoomModel) root);
- else
- fail("File contains no RoomModel as root object");
-
- return models;
- }
-
- protected Root buildInstanceModel(String modelName) {
- GeneratorModelBuilder builder = new GeneratorModelBuilder(new Logger(), new Diagnostician());
- LinkedList<RoomModel> models = getModels(modelName);
- Root root = builder.createGeneratorModel(models, false);
- return root;
- }
-
- protected HashMap<EClass, ArrayList<EObject>> collectInstances(EObject root) {
- HashMap<EClass, ArrayList<EObject>> result = new HashMap<EClass, ArrayList<EObject>>();
-
- TreeIterator<EObject> it = root.eAllContents();
- while (it.hasNext()) {
- EObject obj = it.next();
- EClass ecl = obj.eClass();
- ArrayList<EObject> instances = result.get(ecl);
- if (instances==null) {
- instances = new ArrayList<EObject>();
- result.put(ecl, instances);
- }
- instances.add(obj);
- }
-
- return result;
- }
-
- protected InstanceBase getInstance(List<? extends EObject> objects, String path) {
- for (EObject obj : objects) {
- if (obj instanceof InstanceBase) {
- InstanceBase inst = (InstanceBase) obj;
- if (inst.getPath().equals(path))
- return inst;
- }
- }
- return null;
- }
-
- protected StateGraphItem getStateGraphItem(List<? extends EObject> objects, String path) {
- for (EObject obj : objects) {
- if (obj instanceof StateGraphItem) {
- StateGraphItem item = (StateGraphItem) obj;
- if (RoomNameProvider.getFullPath(item).equals(path))
- return item;
- }
- }
- return null;
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.fail; + +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.etrice.core.genmodel.etricegen.IDiagnostician; +import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.naming.RoomNameProvider; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.resource.XtextResourceSet; + +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.etrice.core.room.StateGraphItem; +import org.eclipse.etrice.core.genmodel.base.ILogger; +import org.eclipse.etrice.core.genmodel.builder.GeneratorModelBuilder; + +public class TestInstanceModelBuilderBase { + + class Logger implements ILogger { + + @Override + public void logInfo(String text) { + } + + @Override + public void logError(String text, EObject obj) { + } + + } + + class Diagnostician implements IDiagnostician { + + @Override + public void warning(String msg, EObject source, EStructuralFeature feature) { + } + + @Override + public void warning(String msg, EObject source, EStructuralFeature feature, int index) { + } + + @Override + public void error(String msg, EObject source, EStructuralFeature feature) { + fail(msg+RoomNameProvider.getLocation(source)); + } + + @Override + public void error(String msg, EObject source, EStructuralFeature feature, int index) { + fail(msg+RoomNameProvider.getLocation(source)); + } + + @Override + public boolean isFailed() { + return false; + } + + } + + private String basePath; + + protected void prepare() { + try { + URL modelsDir = GenmodelTestsActivator.getInstance().getBundle().getEntry("models"); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + protected LinkedList<RoomModel> getModels(String modelName) { + LinkedList<RoomModel> models = new LinkedList<RoomModel>(); + XtextResourceSet rs = new XtextResourceSet(); + rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE); + String path = basePath + modelName; + URI uri = URI.createFileURI(path); + Resource resource = rs.getResource(uri, true); + Object root = resource.getContents().get(0); + if (root instanceof RoomModel) + models.add((RoomModel) root); + else + fail("File contains no RoomModel as root object"); + + return models; + } + + protected Root buildInstanceModel(String modelName) { + GeneratorModelBuilder builder = new GeneratorModelBuilder(new Logger(), new Diagnostician()); + LinkedList<RoomModel> models = getModels(modelName); + Root root = builder.createGeneratorModel(models, false); + return root; + } + + protected HashMap<EClass, ArrayList<EObject>> collectInstances(EObject root) { + HashMap<EClass, ArrayList<EObject>> result = new HashMap<EClass, ArrayList<EObject>>(); + + TreeIterator<EObject> it = root.eAllContents(); + while (it.hasNext()) { + EObject obj = it.next(); + EClass ecl = obj.eClass(); + ArrayList<EObject> instances = result.get(ecl); + if (instances==null) { + instances = new ArrayList<EObject>(); + result.put(ecl, instances); + } + instances.add(obj); + } + + return result; + } + + protected InstanceBase getInstance(List<? extends EObject> objects, String path) { + for (EObject obj : objects) { + if (obj instanceof InstanceBase) { + InstanceBase inst = (InstanceBase) obj; + if (inst.getPath().equals(path)) + return inst; + } + } + return null; + } + + protected StateGraphItem getStateGraphItem(List<? extends EObject> objects, String path) { + for (EObject obj : objects) { + if (obj instanceof StateGraphItem) { + StateGraphItem item = (StateGraphItem) obj; + if (RoomNameProvider.getFullPath(item).equals(path)) + return item; + } + } + return null; + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestLayers.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestLayers.java index d41ca068e..3cadf6ed6 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestLayers.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestLayers.java @@ -1,73 +1,73 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance;
-import org.junit.Before;
-import org.junit.Test;
-
-
-public class TestLayers extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> instances;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("layers.room");
- instances = collectInstances(root);
- }
-
- @Test
- public void testInstanceNumbers() {
- ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
- assertEquals("Number of SAPInstances", 6, saps.size());
-
- ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance());
- assertEquals("Number of SPPInstances", 7, spps.size());
-
- ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance());
- assertEquals("Number of ServiceImplInstances", 3, svcs.size());
- }
-
- @Test
- public void testLayerConnections() {
- ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
-
- for (EObject obj : saps) {
- assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size());
- }
-
- SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/app/subsysA/userX/sap");
- assertNotNull("sap expected", sap);
- InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0);
- assertTrue("peer is a service", (peer instanceof ServiceImplInstance));
- ServiceImplInstance svc = (ServiceImplInstance) peer;
- assertEquals("number of serviceA peers", 3, svc.getPeers().size());
- assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance; +import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance; +import org.junit.Before; +import org.junit.Test; + + +public class TestLayers extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("layers.room"); + instances = collectInstances(root); + } + + @Test + public void testInstanceNumbers() { + ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + assertEquals("Number of SAPInstances", 6, saps.size()); + + ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance()); + assertEquals("Number of SPPInstances", 7, spps.size()); + + ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance()); + assertEquals("Number of ServiceImplInstances", 3, svcs.size()); + } + + @Test + public void testLayerConnections() { + ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + + for (EObject obj : saps) { + assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size()); + } + + SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/app/subsysA/userX/sap"); + assertNotNull("sap expected", sap); + InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0); + assertTrue("peer is a service", (peer instanceof ServiceImplInstance)); + ServiceImplInstance svc = (ServiceImplInstance) peer; + assertEquals("number of serviceA peers", 3, svc.getPeers().size()); + assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol()); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestMultipleConnectedChoicepoint.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestMultipleConnectedChoicepoint.java index 288532aef..0692da401 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestMultipleConnectedChoicepoint.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestMultipleConnectedChoicepoint.java @@ -1,157 +1,157 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.naming.RoomNameProvider;
-import org.eclipse.etrice.core.room.CPBranchTransition;
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.ContinuationTransition;
-import org.eclipse.etrice.core.room.DataClass;
-import org.eclipse.etrice.core.room.RoomPackage;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.Transition;
-import org.eclipse.etrice.core.room.TriggeredTransition;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestMultipleConnectedChoicepoint extends
- TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> instances;
- private ExpandedActorClass xpac;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("cpmult.room");
- xpac = getTestee();
- instances = collectInstances(xpac);
- }
-
- private ExpandedActorClass getTestee() {
- for (ExpandedActorClass xpac : root.getXpActorClasses()) {
- if (xpac.getActorClass().getName().equals("CPMult"))
- return xpac;
- }
- return null;
- }
-
- private Transition getTransition(String name) {
- for (Transition tr : xpac.getStateMachine().getTransitions()) {
- if (tr.getName().equals(name))
- return tr;
- }
- return null;
- }
-
- private Transition getState1Transition(String name) {
- for (State s : xpac.getStateMachine().getStates()) {
- if (s.getName().equals("state1")) {
- for (Transition tr : s.getSubgraph().getTransitions()) {
- if (tr.getName().equals(name))
- return tr;
- }
- }
- }
- return null;
- }
-
- @Test
- public void testNumbers() {
- assertEquals("number of states", 6, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
- assertNull("number of transition points", instances.get(RoomPackage.eINSTANCE.getTransitionPoint()));
- assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
- assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
- assertEquals("number of initial transitions", 1, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 5, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
- assertEquals("number of branch transitions", 1, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
- }
-
- @Test
- public void testXPACGeneral() {
- EList<TransitionChain> chains = xpac.getTransitionChains();
- assertEquals("number of chains", 6, chains.size());
- assertEquals("number of triggers", 4, xpac.getTriggers().size());
- }
-
- @Test
- public void testGraph() {
- ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
- ChoicePoint cp = (ChoicePoint) cps.get(0);
- assertEquals("choicepoint name", "cp0", RoomNameProvider.getFullPath(cp));
- assertEquals("number of incoming transitions", 2, xpac.getIncomingTransitions(cp).size());
- assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(cp).size());
- }
-
- @Test
- public void testData() {
- Transition tr = getTransition("tr0");
- VarDecl data = xpac.getData(tr);
- assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC2", data.getRefType().getType().getName());
-
- tr = getState1Transition("tr2");
- data = xpac.getData(tr);
- assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC2", data.getRefType().getType().getName());
-
- tr = getState1Transition("tr3");
- data = xpac.getData(tr);
- assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC4", data.getRefType().getType().getName());
-
- tr = getTransition("tr1");
- data = xpac.getData(tr);
- assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC3", data.getRefType().getType().getName());
-
- tr = getTransition("tr3");
- data = xpac.getData(tr);
- assertTrue("transition is ContinuationTransition", tr instanceof ContinuationTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC", data.getRefType().getType().getName());
-
- tr = getTransition("tr4");
- data = xpac.getData(tr);
- assertTrue("transition is CPBranchTransition", tr instanceof CPBranchTransition);
- assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass);
- assertEquals("data of "+tr.getName(), "DC", data.getRefType().getType().getName());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain; +import org.eclipse.etrice.core.naming.RoomNameProvider; +import org.eclipse.etrice.core.room.CPBranchTransition; +import org.eclipse.etrice.core.room.ChoicePoint; +import org.eclipse.etrice.core.room.ContinuationTransition; +import org.eclipse.etrice.core.room.DataClass; +import org.eclipse.etrice.core.room.RoomPackage; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.Transition; +import org.eclipse.etrice.core.room.TriggeredTransition; +import org.eclipse.etrice.core.room.VarDecl; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestMultipleConnectedChoicepoint extends + TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> instances; + private ExpandedActorClass xpac; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("cpmult.room"); + xpac = getTestee(); + instances = collectInstances(xpac); + } + + private ExpandedActorClass getTestee() { + for (ExpandedActorClass xpac : root.getXpActorClasses()) { + if (xpac.getActorClass().getName().equals("CPMult")) + return xpac; + } + return null; + } + + private Transition getTransition(String name) { + for (Transition tr : xpac.getStateMachine().getTransitions()) { + if (tr.getName().equals(name)) + return tr; + } + return null; + } + + private Transition getState1Transition(String name) { + for (State s : xpac.getStateMachine().getStates()) { + if (s.getName().equals("state1")) { + for (Transition tr : s.getSubgraph().getTransitions()) { + if (tr.getName().equals(name)) + return tr; + } + } + } + return null; + } + + @Test + public void testNumbers() { + assertEquals("number of states", 6, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size()); + assertNull("number of transition points", instances.get(RoomPackage.eINSTANCE.getTransitionPoint())); + assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size()); + assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size()); + assertEquals("number of initial transitions", 1, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 5, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size()); + assertEquals("number of branch transitions", 1, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size()); + } + + @Test + public void testXPACGeneral() { + EList<TransitionChain> chains = xpac.getTransitionChains(); + assertEquals("number of chains", 6, chains.size()); + assertEquals("number of triggers", 4, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint()); + ChoicePoint cp = (ChoicePoint) cps.get(0); + assertEquals("choicepoint name", "cp0", RoomNameProvider.getFullPath(cp)); + assertEquals("number of incoming transitions", 2, xpac.getIncomingTransitions(cp).size()); + assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(cp).size()); + } + + @Test + public void testData() { + Transition tr = getTransition("tr0"); + VarDecl data = xpac.getData(tr); + assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC2", data.getRefType().getType().getName()); + + tr = getState1Transition("tr2"); + data = xpac.getData(tr); + assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC2", data.getRefType().getType().getName()); + + tr = getState1Transition("tr3"); + data = xpac.getData(tr); + assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC4", data.getRefType().getType().getName()); + + tr = getTransition("tr1"); + data = xpac.getData(tr); + assertTrue("transition is TriggeredTransition", tr instanceof TriggeredTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC3", data.getRefType().getType().getName()); + + tr = getTransition("tr3"); + data = xpac.getData(tr); + assertTrue("transition is ContinuationTransition", tr instanceof ContinuationTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC", data.getRefType().getType().getName()); + + tr = getTransition("tr4"); + data = xpac.getData(tr); + assertTrue("transition is CPBranchTransition", tr instanceof CPBranchTransition); + assertTrue("data is DataClass", data.getRefType().getType() instanceof DataClass); + assertEquals("data of "+tr.getName(), "DC", data.getRefType().getType().getName()); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestPorts.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestPorts.java index e2e846d1a..133b152ef 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestPorts.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestPorts.java @@ -1,58 +1,58 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-
-public class TestPorts extends TestInstanceModelBuilderBase {
-
- private Root root;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("ports.room");
- }
-
- @Test
- public void testPortNumbers() {
- HashMap<EClass, ArrayList<EObject>> instances = collectInstances(root);
- assertEquals("Number of PortInstances", 3, instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()).size());
- }
-
- @Test
- public void testPortInstancePaths() {
- PortInstance pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(0);
- assertEquals("Port Name", "/CMain/test/externalEnd", pi.getPath());
-
- pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(1);
- assertEquals("Port Name", "/CMain/test/internalEnd", pi.getPath());
-
- pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(2);
- assertEquals("Port Name", "/CMain/test/relay", pi.getPath());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + + +public class TestPorts extends TestInstanceModelBuilderBase { + + private Root root; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("ports.room"); + } + + @Test + public void testPortNumbers() { + HashMap<EClass, ArrayList<EObject>> instances = collectInstances(root); + assertEquals("Number of PortInstances", 3, instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()).size()); + } + + @Test + public void testPortInstancePaths() { + PortInstance pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(0); + assertEquals("Port Name", "/CMain/test/externalEnd", pi.getPath()); + + pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(1); + assertEquals("Port Name", "/CMain/test/internalEnd", pi.getPath()); + + pi = root.getSubSystemInstances().get(0).getInstances().get(0).getPorts().get(2); + assertEquals("Port Name", "/CMain/test/relay", pi.getPath()); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestReplicatedActors.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestReplicatedActors.java index dd9c4b332..b9623d035 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestReplicatedActors.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestReplicatedActors.java @@ -1,209 +1,209 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.util.HashMap;
-import java.util.HashSet;
-
-import org.eclipse.emf.common.util.TreeIterator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestReplicatedActors extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>();
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("replicated_actors.room");
-
- TreeIterator<EObject> it = root.eAllContents();
- while (it.hasNext()) {
- EObject obj = it.next();
- if (obj instanceof InstanceBase) {
- String path = ((InstanceBase) obj).getPath();
- path2inst.put(path, (InstanceBase) obj);
- System.out.println(path);
- }
- }
- }
-
- private PortInstance getPort(String path) {
- return (PortInstance) path2inst.get(path);
- }
-
- // example 1: regular port of replicated actor connected to regular ports
- @Test
- public void checkExample1() {
- PortInstance intp1 = getPort("/Main/appl1/intp1");
- PortInstance intp2 = getPort("/Main/appl1/intp2");
- PortInstance intp3 = getPort("/Main/appl1/intp3");
- PortInstance ac1_0p = getPort("/Main/appl1/ac1repl_0/ac1p");
- PortInstance ac1_1p = getPort("/Main/appl1/ac1repl_1/ac1p");
- PortInstance ac1_2p = getPort("/Main/appl1/ac1repl_2/ac1p");
-
- assertEquals("number of peers of "+intp1.getName(), 1, intp1.getPeers().size());
- assertEquals("number of peers of "+intp2.getName(), 1, intp2.getPeers().size());
- assertEquals("number of peers of "+intp3.getName(), 1, intp3.getPeers().size());
- assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size());
- assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size());
- assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size());
-
- HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>();
- peers.add(intp1);
- peers.add(intp2);
- peers.add(intp3);
-
- assertTrue(ac1_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(0)));
- assertTrue(ac1_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(0)));
- assertTrue(ac1_2p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_2p.getPeers().get(0)));
- assertTrue("peers complete ", peers.isEmpty());
- }
-
- // example 2: regular port of replicated actor connected to regular port of replicated actor
- @Test
- public void checkExample2() {
- PortInstance ac1_0p = getPort("/Main/appl2/ac1repl_0/ac1p");
- PortInstance ac1_1p = getPort("/Main/appl2/ac1repl_1/ac1p");
- PortInstance ac1_2p = getPort("/Main/appl2/ac1repl_2/ac1p");
- PortInstance ac2_0p = getPort("/Main/appl2/ac2repl_0/ac2p");
- PortInstance ac2_1p = getPort("/Main/appl2/ac2repl_1/ac2p");
- PortInstance ac2_2p = getPort("/Main/appl2/ac2repl_2/ac2p");
-
- assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size());
- assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size());
- assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size());
- assertEquals("number of peers of "+ac2_0p.getName(), 1, ac2_0p.getPeers().size());
- assertEquals("number of peers of "+ac2_1p.getName(), 1, ac2_1p.getPeers().size());
- assertEquals("number of peers of "+ac2_2p.getName(), 1, ac2_2p.getPeers().size());
-
- HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>();
- peers.add(ac1_0p);
- peers.add(ac1_1p);
- peers.add(ac1_2p);
-
- assertTrue(ac2_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_0p.getPeers().get(0)));
- assertTrue(ac2_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_1p.getPeers().get(0)));
- assertTrue(ac2_2p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_2p.getPeers().get(0)));
- assertTrue("peers complete ", peers.isEmpty());
- }
-
- // example 3: regular port of replicated actor connected to replicated port
- @Test
- public void checkExample3() {
- PortInstance ac1_0p = getPort("/Main/appl3/ac1repl_0/ac1p");
- PortInstance ac1_1p = getPort("/Main/appl3/ac1repl_1/ac1p");
- PortInstance ac1_2p = getPort("/Main/appl3/ac1repl_2/ac1p");
- PortInstance intrep = getPort("/Main/appl3/intrep");
-
- assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size());
- assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size());
- assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size());
- assertEquals("number of peers of "+intrep.getName(), 3, intrep.getPeers().size());
-
- assertEquals(ac1_0p.getName()+" peer is intrep ", ac1_0p.getPeers().get(0), intrep);
- assertEquals(ac1_1p.getName()+" peer is intrep ", ac1_1p.getPeers().get(0), intrep);
- assertEquals(ac1_2p.getName()+" peer is intrep ", ac1_2p.getPeers().get(0), intrep);
- }
-
- // example 4: regular port of replicated actor connected to replicated port of replicated actor
- @Test
- public void checkExample4() {
- PortInstance ac1_0p = getPort("/Main/appl4/ac1repl_0/ac1p");
- PortInstance ac1_1p = getPort("/Main/appl4/ac1repl_1/ac1p");
- PortInstance ac2_0p = getPort("/Main/appl4/ac2repl_0/ac2p");
- PortInstance ac2_1p = getPort("/Main/appl4/ac2repl_1/ac2p");
- PortInstance ac2_2p = getPort("/Main/appl4/ac2repl_2/ac2p");
- PortInstance ac2_3p = getPort("/Main/appl4/ac2repl_3/ac2p");
-
- assertEquals("number of peers of "+ac1_0p.getName(), 2, ac1_0p.getPeers().size());
- assertEquals("number of peers of "+ac1_1p.getName(), 2, ac1_1p.getPeers().size());
- assertEquals("number of peers of "+ac2_0p.getName(), 1, ac2_0p.getPeers().size());
- assertEquals("number of peers of "+ac2_1p.getName(), 1, ac2_1p.getPeers().size());
- assertEquals("number of peers of "+ac2_2p.getName(), 1, ac2_2p.getPeers().size());
- assertEquals("number of peers of "+ac2_3p.getName(), 1, ac2_3p.getPeers().size());
-
- HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>();
- peers.add(ac2_0p);
- peers.add(ac2_1p);
- peers.add(ac2_2p);
- peers.add(ac2_3p);
-
- assertTrue(ac1_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(0)));
- assertTrue(ac1_0p.getPeers().get(1).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(1)));
- assertTrue(ac1_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(0)));
- assertTrue(ac1_1p.getPeers().get(1).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(1)));
- assertTrue("peers complete ", peers.isEmpty());
- }
-
- // example 5: regular port of replicated actor connected to replicated port of sub actor
- // TODO: testee [8] works fine but testee [*] will be connected only with the first port
- @Test
- public void checkExample5() {
- PortInstance testee = getPort("/Main/appl5/testDriver/testee");
- PortInstance ref0_0p = getPort("/Main/appl5/ref0_0/tester/test");
- PortInstance ref0_1p = getPort("/Main/appl5/ref0_1/tester/test");
- PortInstance ref0_2p = getPort("/Main/appl5/ref0_2/tester/test");
- PortInstance ref0_3p = getPort("/Main/appl5/ref0_3/tester/test");
- PortInstance ref0_4p = getPort("/Main/appl5/ref0_4/tester/test");
- PortInstance ref0_5p = getPort("/Main/appl5/ref0_5/tester/test");
- PortInstance ref0_6p = getPort("/Main/appl5/ref0_6/tester/test");
- PortInstance ref0_7p = getPort("/Main/appl5/ref0_7/tester/test");
-
- assertEquals("number of peers of "+testee.getName(), 8, testee.getPeers().size());
- assertEquals("number of peers of "+ref0_0p.getName(), 1, ref0_0p.getPeers().size());
- assertEquals("number of peers of "+ref0_1p.getName(), 1, ref0_1p.getPeers().size());
- assertEquals("number of peers of "+ref0_2p.getName(), 1, ref0_2p.getPeers().size());
- assertEquals("number of peers of "+ref0_3p.getName(), 1, ref0_3p.getPeers().size());
- assertEquals("number of peers of "+ref0_4p.getName(), 1, ref0_4p.getPeers().size());
- assertEquals("number of peers of "+ref0_5p.getName(), 1, ref0_5p.getPeers().size());
- assertEquals("number of peers of "+ref0_6p.getName(), 1, ref0_6p.getPeers().size());
- assertEquals("number of peers of "+ref0_7p.getName(), 1, ref0_7p.getPeers().size());
-
- HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>();
- peers.add(ref0_0p);
- peers.add(ref0_1p);
- peers.add(ref0_2p);
- peers.add(ref0_3p);
- peers.add(ref0_4p);
- peers.add(ref0_5p);
- peers.add(ref0_6p);
- peers.add(ref0_7p);
-
- assertTrue(testee.getPeers().get(0).getName()+" contained in peers ", peers.remove(testee.getPeers().get(0)));
- assertTrue(testee.getPeers().get(1).getName()+" contained in peers ", peers.remove(testee.getPeers().get(1)));
- assertTrue(testee.getPeers().get(2).getName()+" contained in peers ", peers.remove(testee.getPeers().get(2)));
- assertTrue(testee.getPeers().get(3).getName()+" contained in peers ", peers.remove(testee.getPeers().get(3)));
- assertTrue(testee.getPeers().get(4).getName()+" contained in peers ", peers.remove(testee.getPeers().get(4)));
- assertTrue(testee.getPeers().get(5).getName()+" contained in peers ", peers.remove(testee.getPeers().get(5)));
- assertTrue(testee.getPeers().get(6).getName()+" contained in peers ", peers.remove(testee.getPeers().get(6)));
- assertTrue(testee.getPeers().get(7).getName()+" contained in peers ", peers.remove(testee.getPeers().get(7)));
- assertTrue("peers complete ", peers.isEmpty());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.util.HashMap; +import java.util.HashSet; + +import org.eclipse.emf.common.util.TreeIterator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.InstanceBase; +import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestReplicatedActors extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<String, InstanceBase> path2inst = new HashMap<String, InstanceBase>(); + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("replicated_actors.room"); + + TreeIterator<EObject> it = root.eAllContents(); + while (it.hasNext()) { + EObject obj = it.next(); + if (obj instanceof InstanceBase) { + String path = ((InstanceBase) obj).getPath(); + path2inst.put(path, (InstanceBase) obj); + System.out.println(path); + } + } + } + + private PortInstance getPort(String path) { + return (PortInstance) path2inst.get(path); + } + + // example 1: regular port of replicated actor connected to regular ports + @Test + public void checkExample1() { + PortInstance intp1 = getPort("/Main/appl1/intp1"); + PortInstance intp2 = getPort("/Main/appl1/intp2"); + PortInstance intp3 = getPort("/Main/appl1/intp3"); + PortInstance ac1_0p = getPort("/Main/appl1/ac1repl_0/ac1p"); + PortInstance ac1_1p = getPort("/Main/appl1/ac1repl_1/ac1p"); + PortInstance ac1_2p = getPort("/Main/appl1/ac1repl_2/ac1p"); + + assertEquals("number of peers of "+intp1.getName(), 1, intp1.getPeers().size()); + assertEquals("number of peers of "+intp2.getName(), 1, intp2.getPeers().size()); + assertEquals("number of peers of "+intp3.getName(), 1, intp3.getPeers().size()); + assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size()); + assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size()); + assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size()); + + HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>(); + peers.add(intp1); + peers.add(intp2); + peers.add(intp3); + + assertTrue(ac1_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(0))); + assertTrue(ac1_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(0))); + assertTrue(ac1_2p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_2p.getPeers().get(0))); + assertTrue("peers complete ", peers.isEmpty()); + } + + // example 2: regular port of replicated actor connected to regular port of replicated actor + @Test + public void checkExample2() { + PortInstance ac1_0p = getPort("/Main/appl2/ac1repl_0/ac1p"); + PortInstance ac1_1p = getPort("/Main/appl2/ac1repl_1/ac1p"); + PortInstance ac1_2p = getPort("/Main/appl2/ac1repl_2/ac1p"); + PortInstance ac2_0p = getPort("/Main/appl2/ac2repl_0/ac2p"); + PortInstance ac2_1p = getPort("/Main/appl2/ac2repl_1/ac2p"); + PortInstance ac2_2p = getPort("/Main/appl2/ac2repl_2/ac2p"); + + assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size()); + assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size()); + assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size()); + assertEquals("number of peers of "+ac2_0p.getName(), 1, ac2_0p.getPeers().size()); + assertEquals("number of peers of "+ac2_1p.getName(), 1, ac2_1p.getPeers().size()); + assertEquals("number of peers of "+ac2_2p.getName(), 1, ac2_2p.getPeers().size()); + + HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>(); + peers.add(ac1_0p); + peers.add(ac1_1p); + peers.add(ac1_2p); + + assertTrue(ac2_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_0p.getPeers().get(0))); + assertTrue(ac2_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_1p.getPeers().get(0))); + assertTrue(ac2_2p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac2_2p.getPeers().get(0))); + assertTrue("peers complete ", peers.isEmpty()); + } + + // example 3: regular port of replicated actor connected to replicated port + @Test + public void checkExample3() { + PortInstance ac1_0p = getPort("/Main/appl3/ac1repl_0/ac1p"); + PortInstance ac1_1p = getPort("/Main/appl3/ac1repl_1/ac1p"); + PortInstance ac1_2p = getPort("/Main/appl3/ac1repl_2/ac1p"); + PortInstance intrep = getPort("/Main/appl3/intrep"); + + assertEquals("number of peers of "+ac1_0p.getName(), 1, ac1_0p.getPeers().size()); + assertEquals("number of peers of "+ac1_1p.getName(), 1, ac1_1p.getPeers().size()); + assertEquals("number of peers of "+ac1_2p.getName(), 1, ac1_2p.getPeers().size()); + assertEquals("number of peers of "+intrep.getName(), 3, intrep.getPeers().size()); + + assertEquals(ac1_0p.getName()+" peer is intrep ", ac1_0p.getPeers().get(0), intrep); + assertEquals(ac1_1p.getName()+" peer is intrep ", ac1_1p.getPeers().get(0), intrep); + assertEquals(ac1_2p.getName()+" peer is intrep ", ac1_2p.getPeers().get(0), intrep); + } + + // example 4: regular port of replicated actor connected to replicated port of replicated actor + @Test + public void checkExample4() { + PortInstance ac1_0p = getPort("/Main/appl4/ac1repl_0/ac1p"); + PortInstance ac1_1p = getPort("/Main/appl4/ac1repl_1/ac1p"); + PortInstance ac2_0p = getPort("/Main/appl4/ac2repl_0/ac2p"); + PortInstance ac2_1p = getPort("/Main/appl4/ac2repl_1/ac2p"); + PortInstance ac2_2p = getPort("/Main/appl4/ac2repl_2/ac2p"); + PortInstance ac2_3p = getPort("/Main/appl4/ac2repl_3/ac2p"); + + assertEquals("number of peers of "+ac1_0p.getName(), 2, ac1_0p.getPeers().size()); + assertEquals("number of peers of "+ac1_1p.getName(), 2, ac1_1p.getPeers().size()); + assertEquals("number of peers of "+ac2_0p.getName(), 1, ac2_0p.getPeers().size()); + assertEquals("number of peers of "+ac2_1p.getName(), 1, ac2_1p.getPeers().size()); + assertEquals("number of peers of "+ac2_2p.getName(), 1, ac2_2p.getPeers().size()); + assertEquals("number of peers of "+ac2_3p.getName(), 1, ac2_3p.getPeers().size()); + + HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>(); + peers.add(ac2_0p); + peers.add(ac2_1p); + peers.add(ac2_2p); + peers.add(ac2_3p); + + assertTrue(ac1_0p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(0))); + assertTrue(ac1_0p.getPeers().get(1).getName()+" contained in peers ", peers.remove(ac1_0p.getPeers().get(1))); + assertTrue(ac1_1p.getPeers().get(0).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(0))); + assertTrue(ac1_1p.getPeers().get(1).getName()+" contained in peers ", peers.remove(ac1_1p.getPeers().get(1))); + assertTrue("peers complete ", peers.isEmpty()); + } + + // example 5: regular port of replicated actor connected to replicated port of sub actor + // TODO: testee [8] works fine but testee [*] will be connected only with the first port + @Test + public void checkExample5() { + PortInstance testee = getPort("/Main/appl5/testDriver/testee"); + PortInstance ref0_0p = getPort("/Main/appl5/ref0_0/tester/test"); + PortInstance ref0_1p = getPort("/Main/appl5/ref0_1/tester/test"); + PortInstance ref0_2p = getPort("/Main/appl5/ref0_2/tester/test"); + PortInstance ref0_3p = getPort("/Main/appl5/ref0_3/tester/test"); + PortInstance ref0_4p = getPort("/Main/appl5/ref0_4/tester/test"); + PortInstance ref0_5p = getPort("/Main/appl5/ref0_5/tester/test"); + PortInstance ref0_6p = getPort("/Main/appl5/ref0_6/tester/test"); + PortInstance ref0_7p = getPort("/Main/appl5/ref0_7/tester/test"); + + assertEquals("number of peers of "+testee.getName(), 8, testee.getPeers().size()); + assertEquals("number of peers of "+ref0_0p.getName(), 1, ref0_0p.getPeers().size()); + assertEquals("number of peers of "+ref0_1p.getName(), 1, ref0_1p.getPeers().size()); + assertEquals("number of peers of "+ref0_2p.getName(), 1, ref0_2p.getPeers().size()); + assertEquals("number of peers of "+ref0_3p.getName(), 1, ref0_3p.getPeers().size()); + assertEquals("number of peers of "+ref0_4p.getName(), 1, ref0_4p.getPeers().size()); + assertEquals("number of peers of "+ref0_5p.getName(), 1, ref0_5p.getPeers().size()); + assertEquals("number of peers of "+ref0_6p.getName(), 1, ref0_6p.getPeers().size()); + assertEquals("number of peers of "+ref0_7p.getName(), 1, ref0_7p.getPeers().size()); + + HashSet<InterfaceItemInstance> peers = new HashSet<InterfaceItemInstance>(); + peers.add(ref0_0p); + peers.add(ref0_1p); + peers.add(ref0_2p); + peers.add(ref0_3p); + peers.add(ref0_4p); + peers.add(ref0_5p); + peers.add(ref0_6p); + peers.add(ref0_7p); + + assertTrue(testee.getPeers().get(0).getName()+" contained in peers ", peers.remove(testee.getPeers().get(0))); + assertTrue(testee.getPeers().get(1).getName()+" contained in peers ", peers.remove(testee.getPeers().get(1))); + assertTrue(testee.getPeers().get(2).getName()+" contained in peers ", peers.remove(testee.getPeers().get(2))); + assertTrue(testee.getPeers().get(3).getName()+" contained in peers ", peers.remove(testee.getPeers().get(3))); + assertTrue(testee.getPeers().get(4).getName()+" contained in peers ", peers.remove(testee.getPeers().get(4))); + assertTrue(testee.getPeers().get(5).getName()+" contained in peers ", peers.remove(testee.getPeers().get(5))); + assertTrue(testee.getPeers().get(6).getName()+" contained in peers ", peers.remove(testee.getPeers().get(6))); + assertTrue(testee.getPeers().get(7).getName()+" contained in peers ", peers.remove(testee.getPeers().get(7))); + assertTrue("peers complete ", peers.isEmpty()); + } + +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStates.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStates.java index db17542ea..aa9fb4936 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStates.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStates.java @@ -1,120 +1,120 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.naming.RoomNameProvider;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.ContinuationTransition;
-import org.eclipse.etrice.core.room.RoomPackage;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.Transition;
-
-public class TestStates extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> instances;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("states.room");
- instances = collectInstances(root.getXpActorClasses().get(0));
- }
-
- @Test
- public void testNumbers() {
- assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
- assertEquals("number of transition points", 2, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
- assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
- assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
- assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 9, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
- assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
- }
-
- @Test
- public void testXPACGeneral() {
- ExpandedActorClass xpac = root.getXpActorClasses().get(0);
- assertEquals("actor class", xpac.getActorClass().getName(), "ATest");
- EList<TransitionChain> chains = xpac.getTransitionChains();
- assertEquals("number of chains", 11, chains.size());
- assertEquals("numer of triggers", 3, xpac.getTriggers().size());
- }
-
- @Test
- public void testGraph() {
- ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState());
-// for (EObject obj : states) {
-// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- ExpandedActorClass xpac = root.getXpActorClasses().get(0);
-
- State s = (State) getStateGraphItem(states, "State3_State3");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
-
- s = (State) getStateGraphItem(states, "State2");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 2, xpac.getActiveTriggers(s).size());
-
- ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
-
- ChoicePoint cp = (ChoicePoint) cps.get(0);
- assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
- assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
- assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size());
-
- ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
- assertNotNull("default branch", dflt);
- }
-
- @Test
- public void testChains() {
- ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
-// for (EObject obj : cts) {
-// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3");
- assertNotNull("transition", t);
-
- ExpandedActorClass xpac = root.getXpActorClasses().get(0);
- TransitionChain chain = xpac.getChain(t);
- assertNotNull("chain", chain);
- assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain; +import org.eclipse.etrice.core.naming.RoomNameProvider; +import org.junit.Before; +import org.junit.Test; + +import org.eclipse.etrice.core.room.ChoicePoint; +import org.eclipse.etrice.core.room.ContinuationTransition; +import org.eclipse.etrice.core.room.RoomPackage; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.Transition; + +public class TestStates extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("states.room"); + instances = collectInstances(root.getXpActorClasses().get(0)); + } + + @Test + public void testNumbers() { + assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size()); + assertEquals("number of transition points", 2, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size()); + assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size()); + assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size()); + assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 9, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size()); + assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size()); + } + + @Test + public void testXPACGeneral() { + ExpandedActorClass xpac = root.getXpActorClasses().get(0); + assertEquals("actor class", xpac.getActorClass().getName(), "ATest"); + EList<TransitionChain> chains = xpac.getTransitionChains(); + assertEquals("number of chains", 11, chains.size()); + assertEquals("numer of triggers", 3, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState()); +// for (EObject obj : states) { +// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + ExpandedActorClass xpac = root.getXpActorClasses().get(0); + + State s = (State) getStateGraphItem(states, "State3_State3"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size()); + + s = (State) getStateGraphItem(states, "State2"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 2, xpac.getActiveTriggers(s).size()); + + ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint()); + + ChoicePoint cp = (ChoicePoint) cps.get(0); + assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp)); + assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size()); + assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size()); + + ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp)); + assertNotNull("default branch", dflt); + } + + @Test + public void testChains() { + ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition()); +// for (EObject obj : cts) { +// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3"); + assertNotNull("transition", t); + + ExpandedActorClass xpac = root.getXpActorClasses().get(0); + TransitionChain chain = xpac.getChain(t); + assertNotNull("chain", chain); + assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition())); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesAndTriggers.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesAndTriggers.java index 196f07189..0161fbe31 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesAndTriggers.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesAndTriggers.java @@ -1,144 +1,144 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.naming.RoomNameProvider;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.ContinuationTransition;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.RoomPackage;
-import org.eclipse.etrice.core.room.SAPRef;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.Transition;
-
-public class TestStatesAndTriggers extends TestInstanceModelBuilderBase {
-
- private Root root;
- private ExpandedActorClass xpac;
- private HashMap<EClass, ArrayList<EObject>> instances;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("states_triggers.room");
- xpac = getTestee();
- instances = collectInstances(xpac);
- }
-
- private ExpandedActorClass getTestee() {
- for (ExpandedActorClass xpac : root.getXpActorClasses()) {
- if (xpac.getActorClass().getName().equals("ATest"))
- return xpac;
- }
- return null;
- }
-
- @Test
- public void testNumbers() {
- assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
- assertEquals("number of transition points", 4, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
- assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
- assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
- assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 11, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
- assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
- }
-
- @Test
- public void testXPACGeneral() {
- EList<TransitionChain> chains = xpac.getTransitionChains();
- assertEquals("number of chains", 13, chains.size());
- assertEquals("numer of triggers", 7, xpac.getTriggers().size());
- }
-
- @Test
- public void testGraph() {
- ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState());
-// for (EObject obj : states) {
-// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- State s = (State) getStateGraphItem(states, "State3_State3");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size());
-
- s = (State) getStateGraphItem(states, "State2");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
-
- ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
-
- ChoicePoint cp = (ChoicePoint) cps.get(0);
- assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
- assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
- assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size());
-
- ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
- assertNotNull("default branch", dflt);
- }
-
- @Test
- public void testChains() {
- ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
-// for (EObject obj : cts) {
-// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3");
- assertNotNull("transition", t);
-
- TransitionChain chain = xpac.getChain(t);
- assertNotNull("chain", chain);
- assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
- }
-
- @Test
- public void testIfItems() {
- Port fct = xpac.getActorClass().getIfPorts().get(0);
- Port sub = xpac.getActorClass().getIntPorts().get(0);
- SAPRef timer = xpac.getActorClass().getStrSAPs().get(0);
- SAPRef timeout = xpac.getActorClass().getStrSAPs().get(1);
-
- assertEquals("port name", "fct", fct.getName());
- assertEquals("port name", "subp", sub.getName());
- assertEquals("sap name", "timer", timer.getName());
- assertEquals("sap name", "timeout", timeout.getName());
-
- assertEquals("port local id", 0, xpac.getInterfaceItemLocalId(fct));
- assertEquals("port local id", 1, xpac.getInterfaceItemLocalId(sub));
- assertEquals("sap local id", 2, xpac.getInterfaceItemLocalId(timer));
- assertEquals("sap local id", 3, xpac.getInterfaceItemLocalId(timeout));
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain; +import org.eclipse.etrice.core.naming.RoomNameProvider; +import org.junit.Before; +import org.junit.Test; + +import org.eclipse.etrice.core.room.ChoicePoint; +import org.eclipse.etrice.core.room.ContinuationTransition; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.core.room.RoomPackage; +import org.eclipse.etrice.core.room.SAPRef; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.Transition; + +public class TestStatesAndTriggers extends TestInstanceModelBuilderBase { + + private Root root; + private ExpandedActorClass xpac; + private HashMap<EClass, ArrayList<EObject>> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("states_triggers.room"); + xpac = getTestee(); + instances = collectInstances(xpac); + } + + private ExpandedActorClass getTestee() { + for (ExpandedActorClass xpac : root.getXpActorClasses()) { + if (xpac.getActorClass().getName().equals("ATest")) + return xpac; + } + return null; + } + + @Test + public void testNumbers() { + assertEquals("number of states", 7, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size()); + assertEquals("number of transition points", 4, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size()); + assertEquals("number of entry points", 1, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size()); + assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size()); + assertEquals("number of initial transitions", 2, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 11, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertEquals("number of continuation transitions", 3, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size()); + assertEquals("number of branch transitions", 2, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size()); + } + + @Test + public void testXPACGeneral() { + EList<TransitionChain> chains = xpac.getTransitionChains(); + assertEquals("number of chains", 13, chains.size()); + assertEquals("numer of triggers", 7, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState()); +// for (EObject obj : states) { +// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + State s = (State) getStateGraphItem(states, "State3_State3"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size()); + + s = (State) getStateGraphItem(states, "State2"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size()); + + ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint()); + + ChoicePoint cp = (ChoicePoint) cps.get(0); + assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp)); + assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size()); + assertEquals("number of outgoing transitions", 3, xpac.getOutgoingTransitions(cp).size()); + + ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp)); + assertNotNull("default branch", dflt); + } + + @Test + public void testChains() { + ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition()); +// for (EObject obj : cts) { +// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3"); + assertNotNull("transition", t); + + TransitionChain chain = xpac.getChain(t); + assertNotNull("chain", chain); + assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition())); + } + + @Test + public void testIfItems() { + Port fct = xpac.getActorClass().getIfPorts().get(0); + Port sub = xpac.getActorClass().getIntPorts().get(0); + SAPRef timer = xpac.getActorClass().getStrSAPs().get(0); + SAPRef timeout = xpac.getActorClass().getStrSAPs().get(1); + + assertEquals("port name", "fct", fct.getName()); + assertEquals("port name", "subp", sub.getName()); + assertEquals("sap name", "timer", timer.getName()); + assertEquals("sap name", "timeout", timeout.getName()); + + assertEquals("port local id", 0, xpac.getInterfaceItemLocalId(fct)); + assertEquals("port local id", 1, xpac.getInterfaceItemLocalId(sub)); + assertEquals("sap local id", 2, xpac.getInterfaceItemLocalId(timer)); + assertEquals("sap local id", 3, xpac.getInterfaceItemLocalId(timeout)); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesInheritance.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesInheritance.java index def604fe6..fac0f12b4 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesInheritance.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStatesInheritance.java @@ -1,144 +1,144 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain;
-import org.eclipse.etrice.core.naming.RoomNameProvider;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.ContinuationTransition;
-import org.eclipse.etrice.core.room.RoomPackage;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.Transition;
-
-public class TestStatesInheritance extends TestInstanceModelBuilderBase {
-
- private Root root;
- private HashMap<EClass, ArrayList<EObject>> instances;
- private ExpandedActorClass xpac;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("states_inheritance.room");
- xpac = getTestee();
- instances = collectInstances(xpac);
- }
-
- private ExpandedActorClass getTestee() {
- for (ExpandedActorClass xpac : root.getXpActorClasses()) {
- if (xpac.getActorClass().getName().equals("ADerived"))
- return xpac;
- }
- return null;
- }
-
-// private void assertEquals(String msg, int exp, int is) {
-// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
-// }
-//
-// private void assertEquals(String msg, String exp, String is) {
-// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
-// }
-//
-// private void assertEquals(String msg, EObject exp, EObject is) {
-// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
-// }
-
- @Test
- public void testNumbers() {
- assertEquals("number of states", 9, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size());
- assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size());
- assertEquals("number of transition points", 5, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size());
- assertEquals("number of entry points", 2, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size());
- assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size());
- assertEquals("number of initial transitions", 3, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size());
- assertEquals("number of triggered transitions", 17, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size());
- assertEquals("number of continuation transitions", 4, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size());
- assertEquals("number of branch transitions", 3, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size());
- }
-
- @Test
- public void testXPACGeneral() {
- EList<TransitionChain> chains = xpac.getTransitionChains();
- assertEquals("number of chains", 20, chains.size());
- assertEquals("numer of triggers", 8, xpac.getTriggers().size());
- }
-
- @Test
- public void testGraph() {
- ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState());
-// for (EObject obj : states) {
-// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- State s = (State) getStateGraphItem(states, "State3_State3");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size());
-
- s = (State) getStateGraphItem(states, "State2");
- assertNotNull("state exists", s);
- assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size());
- assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size());
-
- assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size());
-
- ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint());
-
- ChoicePoint cp = (ChoicePoint) cps.get(0);
- assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp));
- assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size());
- assertEquals("number of outgoing transitions", 4, xpac.getOutgoingTransitions(cp).size());
-
- ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp));
- assertNotNull("default branch", dflt);
- }
-
- @Test
- public void testChains() {
- ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition());
-// for (EObject obj : cts) {
-// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj));
-// }
-
- Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3");
- assertNotNull("transition", t);
-
- TransitionChain chain = xpac.getChain(t);
- assertNotNull("chain", chain);
- assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition()));
-
- t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr8_FROM_tp6_TO_State2");
- assertNotNull("transition", t);
-
- chain = xpac.getChain(t);
- assertNotNull("chain", chain);
- assertEquals("chain name", "TRANS_tr12_FROM_State5_TO_State3_tp6_BY_aport", RoomNameProvider.getFullPath(chain.getTransition()));
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.TransitionChain; +import org.eclipse.etrice.core.naming.RoomNameProvider; +import org.junit.Before; +import org.junit.Test; + +import org.eclipse.etrice.core.room.ChoicePoint; +import org.eclipse.etrice.core.room.ContinuationTransition; +import org.eclipse.etrice.core.room.RoomPackage; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.Transition; + +public class TestStatesInheritance extends TestInstanceModelBuilderBase { + + private Root root; + private HashMap<EClass, ArrayList<EObject>> instances; + private ExpandedActorClass xpac; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("states_inheritance.room"); + xpac = getTestee(); + instances = collectInstances(xpac); + } + + private ExpandedActorClass getTestee() { + for (ExpandedActorClass xpac : root.getXpActorClasses()) { + if (xpac.getActorClass().getName().equals("ADerived")) + return xpac; + } + return null; + } + +// private void assertEquals(String msg, int exp, int is) { +// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is); +// } +// +// private void assertEquals(String msg, String exp, String is) { +// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is); +// } +// +// private void assertEquals(String msg, EObject exp, EObject is) { +// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is); +// } + + @Test + public void testNumbers() { + assertEquals("number of states", 9, instances.get(RoomPackage.eINSTANCE.getSimpleState()).size()); + assertEquals("number of choice points", 1, instances.get(RoomPackage.eINSTANCE.getChoicePoint()).size()); + assertEquals("number of transition points", 5, instances.get(RoomPackage.eINSTANCE.getTransitionPoint()).size()); + assertEquals("number of entry points", 2, instances.get(RoomPackage.eINSTANCE.getEntryPoint()).size()); + assertEquals("number of exit points", 1, instances.get(RoomPackage.eINSTANCE.getExitPoint()).size()); + assertEquals("number of initial transitions", 3, instances.get(RoomPackage.eINSTANCE.getInitialTransition()).size()); + assertEquals("number of triggered transitions", 17, instances.get(RoomPackage.eINSTANCE.getTriggeredTransition()).size()); + assertEquals("number of continuation transitions", 4, instances.get(RoomPackage.eINSTANCE.getContinuationTransition()).size()); + assertEquals("number of branch transitions", 3, instances.get(RoomPackage.eINSTANCE.getCPBranchTransition()).size()); + } + + @Test + public void testXPACGeneral() { + EList<TransitionChain> chains = xpac.getTransitionChains(); + assertEquals("number of chains", 20, chains.size()); + assertEquals("numer of triggers", 8, xpac.getTriggers().size()); + } + + @Test + public void testGraph() { + ArrayList<EObject> states = instances.get(RoomPackage.eINSTANCE.getSimpleState()); +// for (EObject obj : states) { +// LogicalSystem.out.println("state "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + State s = (State) getStateGraphItem(states, "State3_State3"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 3, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 2, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 6, xpac.getActiveTriggers(s).size()); + + s = (State) getStateGraphItem(states, "State2"); + assertNotNull("state exists", s); + assertEquals("number of incoming transitions", 4, xpac.getIncomingTransitions(s).size()); + assertEquals("number of outgoing transitions", 1, xpac.getOutgoingTransitions(s).size()); + + assertEquals("active triggers", 3, xpac.getActiveTriggers(s).size()); + + ArrayList<EObject> cps = instances.get(RoomPackage.eINSTANCE.getChoicePoint()); + + ChoicePoint cp = (ChoicePoint) cps.get(0); + assertEquals("choicepoint name", "CP1", RoomNameProvider.getFullPath(cp)); + assertEquals("number of incoming transitions", 1, xpac.getIncomingTransitions(cp).size()); + assertEquals("number of outgoing transitions", 4, xpac.getOutgoingTransitions(cp).size()); + + ContinuationTransition dflt = xpac.getDefaultBranch(xpac.getOutgoingTransitions(cp)); + assertNotNull("default branch", dflt); + } + + @Test + public void testChains() { + ArrayList<EObject> cts = instances.get(RoomPackage.eINSTANCE.getContinuationTransition()); +// for (EObject obj : cts) { +// LogicalSystem.out.println("ct "+RoomNameProvider.getFullPath((StateGraphItem) obj)); +// } + + Transition t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr1_FROM_tp1_TO_State3"); + assertNotNull("transition", t); + + TransitionChain chain = xpac.getChain(t); + assertNotNull("chain", chain); + assertEquals("chain name", "TRANS_tr5_FROM_tp0_TO_State3_tp1_BY_afct", RoomNameProvider.getFullPath(chain.getTransition())); + + t = (Transition) getStateGraphItem(cts, "State3_TRANS_tr8_FROM_tp6_TO_State2"); + assertNotNull("transition", t); + + chain = xpac.getChain(t); + assertNotNull("chain", chain); + assertEquals("chain name", "TRANS_tr12_FROM_State5_TO_State3_tp6_BY_aport", RoomNameProvider.getFullPath(chain.getTransition())); + } +} diff --git a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStructureInheritance.java b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStructureInheritance.java index 1772f7dd1..2c0b3b5bb 100644 --- a/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStructureInheritance.java +++ b/tests/org.eclipse.etrice.core.genmodel.tests/src/org/eclipse/etrice/core/genmodel/TestStructureInheritance.java @@ -1,174 +1,174 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core.genmodel;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.fail;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.junit.Before;
-import org.junit.Test;
-
-import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage;
-import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass;
-import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.PortKind;
-import org.eclipse.etrice.core.genmodel.etricegen.Root;
-import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance;
-import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.SAPRef;
-
-public class TestStructureInheritance extends TestInstanceModelBuilderBase {
-
- private Root root;
- private ExpandedActorClass xpac;
- private HashMap<EClass, ArrayList<EObject>> instances;
-
- @Before
- public void setUp() {
- prepare();
-
- root = buildInstanceModel("structure_inheritance.room");
- xpac = getTestee();
- instances = collectInstances(root);
- }
-
- private ExpandedActorClass getTestee() {
- for (ExpandedActorClass xpac : root.getXpActorClasses()) {
- if (xpac.getActorClass().getName().equals("AFunctionA"))
- return xpac;
- }
- return null;
- }
-
-// private void assertEquals(String msg, int exp, int is) {
-// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
-// }
-//
-// private void assertEquals(String msg, EObject exp, EObject is) {
-// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is);
-// }
-
- @Test
- public void testInstanceNumbers() {
- ArrayList<EObject> actors = instances.get(ETriceGenPackage.eINSTANCE.getActorInstance());
- assertEquals("Number of ActorInstances", 8, actors.size());
-
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
- assertEquals("Number of PortInstances", 30, ports.size());
-
- ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
- assertEquals("Number of SAPInstances", 8, saps.size());
-
- ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance());
- assertEquals("Number of SPPInstances", 2, spps.size());
-
- ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance());
- assertEquals("Number of ServiceImplInstances", 2, svcs.size());
- }
-
- @Test
- public void testLayerConnections() {
- ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance());
-
- for (EObject obj : saps) {
- assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size());
- }
-
- SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/application/fcta/sub2/timeout");
- assertNotNull("sap expected", sap);
- InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0);
- assertTrue("peer is a service", (peer instanceof ServiceImplInstance));
- ServiceImplInstance svc = (ServiceImplInstance) peer;
- assertEquals("number of serviceA peers", 8, svc.getPeers().size());
- assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol());
- }
-
- private Port getPort(ActorClass ac, String name) {
- for (Port p : ac.getIfPorts()) {
- if (p.getName().equals(name))
- return p;
- }
- for (Port p : ac.getIntPorts()) {
- if (p.getName().equals(name))
- return p;
- }
-
- if (ac.getBase()!=null)
- return getPort(ac.getBase(), name);
-
- fail("port "+name+" not found");
- return null;
- }
-
- private SAPRef getSAP(ActorClass ac, String name) {
- for (SAPRef sap : ac.getStrSAPs()) {
- if (sap.getName().equals(name))
- return sap;
- }
-
- if (ac.getBase()!=null)
- return getSAP(ac.getBase(), name);
-
- fail("sap "+name+" not found");
- return null;
- }
-
- @Test
- public void testIfItems() {
- Port base = getPort(xpac.getActorClass(), "base");
- Port subbase = getPort(xpac.getActorClass(), "subbase");
- Port ctrl = getPort(xpac.getActorClass(), "ctrl");
- Port subctrl = getPort(xpac.getActorClass(), "subctrl");
- Port fct1 = getPort(xpac.getActorClass(), "fct1");
- Port fct2 = getPort(xpac.getActorClass(), "fct2");
- SAPRef ctrltimeout = getSAP(xpac.getActorClass(), "ctrltimeout");
- SAPRef timeout = getSAP(xpac.getActorClass(), "timeout");
-
- int lid = 0;
- assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(base));
- assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subbase));
- assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(ctrl));
- assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subctrl));
- assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(ctrltimeout));
- assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(timeout));
- assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct1));
- assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct2));
- }
-
- @Test
- public void testPortConnection() {
- ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance());
-
- PortInstance p = (PortInstance) getInstance(ports, "/CMain/application/fcta/sub2/fct");
- assertNotNull("port expected", p);
- assertEquals("external port expected", PortKind.EXTERNAL.getValue(), p.getKind().getValue());
- assertFalse("no conjuagted port expected", p.getPort().isConjugated());
- assertEquals("port connected once", 1, p.getPeers().size());
- PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/application/client/pa1");
- assertNotNull("peer expected", peer);
- peer = (PortInstance) getInstance(peer.getPeers(), "/CMain/application/fcta/sub2/fct");
- assertNotNull("peer expected", peer);
- assertEquals("peer of peer is start", p, peer);
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core.genmodel; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.fail; + +import java.util.ArrayList; +import java.util.HashMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.junit.Before; +import org.junit.Test; + +import org.eclipse.etrice.core.genmodel.etricegen.ETriceGenPackage; +import org.eclipse.etrice.core.genmodel.etricegen.ExpandedActorClass; +import org.eclipse.etrice.core.genmodel.etricegen.InterfaceItemInstance; +import org.eclipse.etrice.core.genmodel.etricegen.PortInstance; +import org.eclipse.etrice.core.genmodel.etricegen.PortKind; +import org.eclipse.etrice.core.genmodel.etricegen.Root; +import org.eclipse.etrice.core.genmodel.etricegen.SAPInstance; +import org.eclipse.etrice.core.genmodel.etricegen.ServiceImplInstance; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.core.room.SAPRef; + +public class TestStructureInheritance extends TestInstanceModelBuilderBase { + + private Root root; + private ExpandedActorClass xpac; + private HashMap<EClass, ArrayList<EObject>> instances; + + @Before + public void setUp() { + prepare(); + + root = buildInstanceModel("structure_inheritance.room"); + xpac = getTestee(); + instances = collectInstances(root); + } + + private ExpandedActorClass getTestee() { + for (ExpandedActorClass xpac : root.getXpActorClasses()) { + if (xpac.getActorClass().getName().equals("AFunctionA")) + return xpac; + } + return null; + } + +// private void assertEquals(String msg, int exp, int is) { +// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is); +// } +// +// private void assertEquals(String msg, EObject exp, EObject is) { +// LogicalSystem.out.println(msg+" exp:"+exp+" is:"+is); +// } + + @Test + public void testInstanceNumbers() { + ArrayList<EObject> actors = instances.get(ETriceGenPackage.eINSTANCE.getActorInstance()); + assertEquals("Number of ActorInstances", 8, actors.size()); + + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + assertEquals("Number of PortInstances", 30, ports.size()); + + ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + assertEquals("Number of SAPInstances", 8, saps.size()); + + ArrayList<EObject> spps = instances.get(ETriceGenPackage.eINSTANCE.getSPPInstance()); + assertEquals("Number of SPPInstances", 2, spps.size()); + + ArrayList<EObject> svcs = instances.get(ETriceGenPackage.eINSTANCE.getServiceImplInstance()); + assertEquals("Number of ServiceImplInstances", 2, svcs.size()); + } + + @Test + public void testLayerConnections() { + ArrayList<EObject> saps = instances.get(ETriceGenPackage.eINSTANCE.getSAPInstance()); + + for (EObject obj : saps) { + assertEquals("SAP has one peer", 1, ((SAPInstance)obj).getPeers().size()); + } + + SAPInstance sap = (SAPInstance) getInstance(saps, "/CMain/application/fcta/sub2/timeout"); + assertNotNull("sap expected", sap); + InterfaceItemInstance peer = ((SAPInstance)sap).getPeers().get(0); + assertTrue("peer is a service", (peer instanceof ServiceImplInstance)); + ServiceImplInstance svc = (ServiceImplInstance) peer; + assertEquals("number of serviceA peers", 8, svc.getPeers().size()); + assertEquals("sap and service have same protocol", sap.getSap().getProtocol(), svc.getSvcImpl().getSpp().getProtocol()); + } + + private Port getPort(ActorClass ac, String name) { + for (Port p : ac.getIfPorts()) { + if (p.getName().equals(name)) + return p; + } + for (Port p : ac.getIntPorts()) { + if (p.getName().equals(name)) + return p; + } + + if (ac.getBase()!=null) + return getPort(ac.getBase(), name); + + fail("port "+name+" not found"); + return null; + } + + private SAPRef getSAP(ActorClass ac, String name) { + for (SAPRef sap : ac.getStrSAPs()) { + if (sap.getName().equals(name)) + return sap; + } + + if (ac.getBase()!=null) + return getSAP(ac.getBase(), name); + + fail("sap "+name+" not found"); + return null; + } + + @Test + public void testIfItems() { + Port base = getPort(xpac.getActorClass(), "base"); + Port subbase = getPort(xpac.getActorClass(), "subbase"); + Port ctrl = getPort(xpac.getActorClass(), "ctrl"); + Port subctrl = getPort(xpac.getActorClass(), "subctrl"); + Port fct1 = getPort(xpac.getActorClass(), "fct1"); + Port fct2 = getPort(xpac.getActorClass(), "fct2"); + SAPRef ctrltimeout = getSAP(xpac.getActorClass(), "ctrltimeout"); + SAPRef timeout = getSAP(xpac.getActorClass(), "timeout"); + + int lid = 0; + assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(base)); + assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subbase)); + assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(ctrl)); + assertEquals("port local id", lid++, xpac.getInterfaceItemLocalId(subctrl)); + assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(ctrltimeout)); + assertEquals("sap local id", lid++, xpac.getInterfaceItemLocalId(timeout)); + assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct1)); + assertEquals("relay port local id", -1, xpac.getInterfaceItemLocalId(fct2)); + } + + @Test + public void testPortConnection() { + ArrayList<EObject> ports = instances.get(ETriceGenPackage.eINSTANCE.getPortInstance()); + + PortInstance p = (PortInstance) getInstance(ports, "/CMain/application/fcta/sub2/fct"); + assertNotNull("port expected", p); + assertEquals("external port expected", PortKind.EXTERNAL.getValue(), p.getKind().getValue()); + assertFalse("no conjuagted port expected", p.getPort().isConjugated()); + assertEquals("port connected once", 1, p.getPeers().size()); + PortInstance peer = (PortInstance) getInstance(p.getPeers(), "/CMain/application/client/pa1"); + assertNotNull("peer expected", peer); + peer = (PortInstance) getInstance(peer.getPeers(), "/CMain/application/fcta/sub2/fct"); + assertNotNull("peer expected", peer); + assertEquals("peer of peer is start", p, peer); + } +} diff --git a/tests/org.eclipse.etrice.core.room.tests/.classpath b/tests/org.eclipse.etrice.core.room.tests/.classpath index c89572b86..4e5c64811 100644 --- a/tests/org.eclipse.etrice.core.room.tests/.classpath +++ b/tests/org.eclipse.etrice.core.room.tests/.classpath @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="models"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="models"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.core.room.tests/.gitignore b/tests/org.eclipse.etrice.core.room.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.core.room.tests/.gitignore +++ b/tests/org.eclipse.etrice.core.room.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.core.room.tests/.project b/tests/org.eclipse.etrice.core.room.tests/.project index 9571c0800..cc8061769 100644 --- a/tests/org.eclipse.etrice.core.room.tests/.project +++ b/tests/org.eclipse.etrice.core.room.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.core.room.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.core.room.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.core.room.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.core.room.tests/.settings/org.eclipse.jdt.core.prefs index a206ade29..5994f08d7 100644 --- a/tests/org.eclipse.etrice.core.room.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.core.room.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,12 +1,12 @@ -#Thu Feb 17 23:11:30 CET 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Thu Feb 17 23:11:30 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.core.room.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.core.room.tests/META-INF/MANIFEST.MF index f20223226..beb3e2dfa 100644 --- a/tests/org.eclipse.etrice.core.room.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.core.room.tests/META-INF/MANIFEST.MF @@ -1,16 +1,16 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Room Core Tests
-Bundle-SymbolicName: org.eclipse.etrice.core.room.tests
-Bundle-Version: 0.3.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.1.0",
- org.eclipse.etrice.core.room.ui;bundle-version="0.1.0",
- org.junit;bundle-version="4.8.1",
- org.eclipse.osgi;bundle-version="3.6.0",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.core.runtime;bundle-version="3.6.0",
- org.eclipse.ui;bundle-version="3.6.0"
-Bundle-Activator: org.eclipse.etrice.core.CoreTestsActivator
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Room Core Tests +Bundle-SymbolicName: org.eclipse.etrice.core.room.tests +Bundle-Version: 0.3.0.qualifier +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse eTrice (Incubation) +Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.1.0", + org.eclipse.etrice.core.room.ui;bundle-version="0.1.0", + org.junit;bundle-version="4.8.1", + org.eclipse.osgi;bundle-version="3.6.0", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.core.runtime;bundle-version="3.6.0", + org.eclipse.ui;bundle-version="3.6.0" +Bundle-Activator: org.eclipse.etrice.core.CoreTestsActivator +Bundle-ActivationPolicy: lazy diff --git a/tests/org.eclipse.etrice.core.room.tests/about.html b/tests/org.eclipse.etrice.core.room.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.core.room.tests/about.html +++ b/tests/org.eclipse.etrice.core.room.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.room.tests/build.properties b/tests/org.eclipse.etrice.core.room.tests/build.properties index 4f415d5ce..8a12e2f65 100644 --- a/tests/org.eclipse.etrice.core.room.tests/build.properties +++ b/tests/org.eclipse.etrice.core.room.tests/build.properties @@ -1,6 +1,6 @@ -source.. = src/,\
- models/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- models/
+source.. = src/,\ + models/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + models/ diff --git a/tests/org.eclipse.etrice.core.room.tests/models/TestBindings.room b/tests/org.eclipse.etrice.core.room.tests/models/TestBindings.room index 47f081898..19f9ebd91 100644 --- a/tests/org.eclipse.etrice.core.room.tests/models/TestBindings.room +++ b/tests/org.eclipse.etrice.core.room.tests/models/TestBindings.room @@ -1,104 +1,104 @@ -RoomModel TestBindings {
- LogicalSystem Sys {
- SubSystemRef main: Application
- }
-
- SubSystemClass Application {
- ActorRef ref1: AC1
- ActorRef ref2: AC2
-
- // no self connection allowed, ports are indentical
- Binding ref1.reg and ref1.reg
-
- // port with multiplicity 1 is already connected
- Binding ref1.reg and ref2.conj
- Binding ref1.reg and ref2.conj
-
- // protocols don't match
- Binding ref1.reg and ref2.other
-
- // protocol extends incoming
- Binding ref1.base and ref2.extin
-
- // ok
- Binding ref1.base2 and ref2.extout
-
- // protocol extends outgoing
- Binding ref1.base3 and ref2.extout2
-
- // derived protocols not connectable (both directions extended)
- Binding ref1.base4 and ref2.extinout
-
- LogicalThread dflt_thread
- }
-
- ActorClass AC1 {
- Interface {
- Port reg: PC1
- Port base: PCBase
- Port base2: PCBase
- conjugated Port base3: PCBase
- conjugated Port base4: PCBase
- }
- Structure {
- external Port reg
- }
- Behavior { }
- }
-
- ActorClass AC2 {
- Interface {
- conjugated Port conj: PC1
- conjugated Port other: PC2
- conjugated Port extout: PCExtendOut
- conjugated Port extin: PCExtendIn
- Port extout2: PCExtendOut
- Port extinout: PCExtendInOut
- }
- Structure {
- external Port conj
- }
- Behavior { }
- }
-
- ProtocolClass PC1 {
- incoming {
- Message in1()
- }
- }
-
- ProtocolClass PC2 {
- incoming {
- Message in1()
- }
- }
-
- ProtocolClass PCBase {
- incoming {
- Message in1()
- }
- }
-
- ProtocolClass PCExtendIn extends PCBase {
- incoming {
- Message in2()
- }
- }
-
- ProtocolClass PCExtendOut extends PCBase {
- outgoing {
- Message out1()
- }
- }
-
- ProtocolClass PCExtendInOut extends PCBase {
- incoming {
- Message in2()
- }
- outgoing {
- // a derived protocol should add either incoming or outgoing messages, not both
- Message out1()
- }
- }
-
+RoomModel TestBindings { + LogicalSystem Sys { + SubSystemRef main: Application + } + + SubSystemClass Application { + ActorRef ref1: AC1 + ActorRef ref2: AC2 + + // no self connection allowed, ports are indentical + Binding ref1.reg and ref1.reg + + // port with multiplicity 1 is already connected + Binding ref1.reg and ref2.conj + Binding ref1.reg and ref2.conj + + // protocols don't match + Binding ref1.reg and ref2.other + + // protocol extends incoming + Binding ref1.base and ref2.extin + + // ok + Binding ref1.base2 and ref2.extout + + // protocol extends outgoing + Binding ref1.base3 and ref2.extout2 + + // derived protocols not connectable (both directions extended) + Binding ref1.base4 and ref2.extinout + + LogicalThread dflt_thread + } + + ActorClass AC1 { + Interface { + Port reg: PC1 + Port base: PCBase + Port base2: PCBase + conjugated Port base3: PCBase + conjugated Port base4: PCBase + } + Structure { + external Port reg + } + Behavior { } + } + + ActorClass AC2 { + Interface { + conjugated Port conj: PC1 + conjugated Port other: PC2 + conjugated Port extout: PCExtendOut + conjugated Port extin: PCExtendIn + Port extout2: PCExtendOut + Port extinout: PCExtendInOut + } + Structure { + external Port conj + } + Behavior { } + } + + ProtocolClass PC1 { + incoming { + Message in1() + } + } + + ProtocolClass PC2 { + incoming { + Message in1() + } + } + + ProtocolClass PCBase { + incoming { + Message in1() + } + } + + ProtocolClass PCExtendIn extends PCBase { + incoming { + Message in2() + } + } + + ProtocolClass PCExtendOut extends PCBase { + outgoing { + Message out1() + } + } + + ProtocolClass PCExtendInOut extends PCBase { + incoming { + Message in2() + } + outgoing { + // a derived protocol should add either incoming or outgoing messages, not both + Message out1() + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.core.room.tests/models/test.room b/tests/org.eclipse.etrice.core.room.tests/models/test.room index 65736f703..69dc16af5 100644 --- a/tests/org.eclipse.etrice.core.room.tests/models/test.room +++ b/tests/org.eclipse.etrice.core.room.tests/models/test.room @@ -1,30 +1,30 @@ -RoomModel test {
- ProtocolClass MyProtocol {
- incoming {
- Message in1()
- }
- outgoing {
- }
- }
-
- ActorClass A {
- Interface {
- Port p: MyProtocol
- }
- }
-
- ActorClass B {
- Interface {
- Port p: MyProtocol
- }
- }
-
- ActorClass C {
- Structure {
- ActorRef a: A
- ActorRef b: B
-
- Binding a.p and b.p
- }
- }
-}
+RoomModel test { + ProtocolClass MyProtocol { + incoming { + Message in1() + } + outgoing { + } + } + + ActorClass A { + Interface { + Port p: MyProtocol + } + } + + ActorClass B { + Interface { + Port p: MyProtocol + } + } + + ActorClass C { + Structure { + ActorRef a: A + ActorRef b: B + + Binding a.p and b.p + } + } +} diff --git a/tests/org.eclipse.etrice.core.room.tests/org.eclipse.etrice.core.room.tests.launch b/tests/org.eclipse.etrice.core.room.tests/org.eclipse.etrice.core.room.tests.launch index 3c2859206..5ff328ffe 100644 --- a/tests/org.eclipse.etrice.core.room.tests/org.eclipse.etrice.core.room.tests.launch +++ b/tests/org.eclipse.etrice.core.room.tests/org.eclipse.etrice.core.room.tests.launch @@ -1,44 +1,44 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.core.room.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.room.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.room.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.platform.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.core.room.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.core.room.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.core.room.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.platform.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<booleanAttribute key="show_selected_only" value="false"/> +<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/CoreTestsActivator.java b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/CoreTestsActivator.java index 7446ead3d..3ca732db2 100644 --- a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/CoreTestsActivator.java +++ b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/CoreTestsActivator.java @@ -1,48 +1,48 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.emf.ecore.util.Diagnostician;
-import org.eclipse.etrice.core.ui.RoomUiModule;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-import com.google.inject.Inject;
-import com.google.inject.Injector;
-
-
-public class CoreTestsActivator extends Plugin implements BundleActivator {
-
- private static CoreTestsActivator instance = null;
-
- @Inject
- private Diagnostician diagnostician;
-
- public static CoreTestsActivator getInstance() {
- return instance;
- }
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- instance = this;
-
- Injector injector = RoomUiModule.getInjector();
- injector.injectMembers(this);
- }
-
- public Diagnostician getDiagnostician() {
- return diagnostician;
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core; +import org.eclipse.core.runtime.Plugin; +import org.eclipse.emf.ecore.util.Diagnostician; +import org.eclipse.etrice.core.ui.RoomUiModule; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +import com.google.inject.Inject; +import com.google.inject.Injector; + + +public class CoreTestsActivator extends Plugin implements BundleActivator { + + private static CoreTestsActivator instance = null; + + @Inject + private Diagnostician diagnostician; + + public static CoreTestsActivator getInstance() { + return instance; + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + + instance = this; + + Injector injector = RoomUiModule.getInjector(); + injector.injectMembers(this); + } + + public Diagnostician getDiagnostician() { + return diagnostician; + } +} diff --git a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBase.java b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBase.java index d7538bf31..fd7d3f934 100644 --- a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBase.java +++ b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBase.java @@ -1,73 +1,73 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.Map;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EValidator;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-import org.eclipse.xtext.util.CancelIndicator;
-import org.eclipse.xtext.validation.CancelableDiagnostician;
-import org.eclipse.xtext.validation.CheckMode;
-import org.eclipse.xtext.validation.impl.ConcreteSyntaxEValidator;
-
-import com.google.common.collect.Maps;
-
-/**
- * Base class for tests helps with getting diagnostics from a model.
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestBase {
-
- private String basePath;
-
- protected void prepare() {
- try {
- URL modelsDir = CoreTestsActivator.getInstance().getBundle().getEntry("models");
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- protected Resource getResource(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- return rs.getResource(uri, true);
- }
-
- public Diagnostic getDiag(EObject ele) {
- Map<Object, Object> options = Maps.newHashMap();
- options.put(CheckMode.KEY, CheckMode.ALL);
- options.put(CancelableDiagnostician.CANCEL_INDICATOR, CancelIndicator.NullImpl);
- // disable concrete syntax validation, since a semantic model that has been parsed
- // from the concrete syntax always complies with it - otherwise there are parse errors.
- options.put(ConcreteSyntaxEValidator.DISABLE_CONCRETE_SYNTAX_EVALIDATOR, Boolean.TRUE);
- // see EObjectValidator.getRootEValidator(Map<Object, Object>)
- options.put(EValidator.class, CoreTestsActivator.getInstance().getDiagnostician());
- return CoreTestsActivator.getInstance().getDiagnostician().validate(ele, options);
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core; + +import java.io.IOException; +import java.net.URL; +import java.util.Map; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.common.util.Diagnostic; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EValidator; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.resource.XtextResourceSet; +import org.eclipse.xtext.util.CancelIndicator; +import org.eclipse.xtext.validation.CancelableDiagnostician; +import org.eclipse.xtext.validation.CheckMode; +import org.eclipse.xtext.validation.impl.ConcreteSyntaxEValidator; + +import com.google.common.collect.Maps; + +/** + * Base class for tests helps with getting diagnostics from a model. + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestBase { + + private String basePath; + + protected void prepare() { + try { + URL modelsDir = CoreTestsActivator.getInstance().getBundle().getEntry("models"); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + protected Resource getResource(String modelName) { + XtextResourceSet rs = new XtextResourceSet(); + rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE); + String path = basePath + modelName; + URI uri = URI.createFileURI(path); + return rs.getResource(uri, true); + } + + public Diagnostic getDiag(EObject ele) { + Map<Object, Object> options = Maps.newHashMap(); + options.put(CheckMode.KEY, CheckMode.ALL); + options.put(CancelableDiagnostician.CANCEL_INDICATOR, CancelIndicator.NullImpl); + // disable concrete syntax validation, since a semantic model that has been parsed + // from the concrete syntax always complies with it - otherwise there are parse errors. + options.put(ConcreteSyntaxEValidator.DISABLE_CONCRETE_SYNTAX_EVALIDATOR, Boolean.TRUE); + // see EObjectValidator.getRootEValidator(Map<Object, Object>) + options.put(EValidator.class, CoreTestsActivator.getInstance().getDiagnostician()); + return CoreTestsActivator.getInstance().getDiagnostician().validate(ele, options); + } +} diff --git a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBindings.java b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBindings.java index d370d16b5..1c8fb8703 100644 --- a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBindings.java +++ b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestBindings.java @@ -1,83 +1,83 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.core;
-
-import static org.junit.Assert.*;
-
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.Binding;
-import org.eclipse.etrice.core.room.GeneralProtocolClass;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.SubSystemClass;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestBindings extends TestBase {
- private Resource resource;
-
- @Before
- public void setUp() {
- prepare();
-
- resource = getResource("TestBindings.room");
- }
-
- @Test
- public void testBindingValidation() {
- RoomModel mdl = (RoomModel) resource.getContents().get(0);
- SubSystemClass ssc = mdl.getSubSystemClasses().get(0);
- Binding bind = ssc.getBindings().get(0);
- Diagnostic diag = getDiag(bind).getChildren().get(0);
- assertEquals("expect error message", "no self connection allowed, ports are indentical", diag.getMessage());
-
- bind = ssc.getBindings().get(1);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("expect error message", "port with multiplicity 1 is already connected", diag.getMessage());
-
- bind = ssc.getBindings().get(2);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("expect error message", "port with multiplicity 1 is already connected", diag.getMessage());
-
- bind = ssc.getBindings().get(3);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("protocols don't match", diag.getMessage());
-
- bind = ssc.getBindings().get(4);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("protocol extends incoming", diag.getMessage());
-
- bind = ssc.getBindings().get(6);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("protocol extends outgoing", diag.getMessage());
-
- bind = ssc.getBindings().get(7);
- diag = getDiag(bind).getChildren().get(0);
- assertEquals("derived protocols not connectable (both directions extended)", diag.getMessage());
- }
-
- @Test
- public void testProtocolValidation() {
- RoomModel mdl = (RoomModel) resource.getContents().get(0);
- for (GeneralProtocolClass pc : mdl.getProtocolClasses()) {
- if (pc.getName().equals("PCExtendInOut")) {
- Diagnostic diag = getDiag(pc).getChildren().get(0);
- assertEquals("a derived protocol should add either incoming or outgoing messages, not both", diag.getMessage());
- }
- }
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.core; + +import static org.junit.Assert.*; + +import org.eclipse.emf.common.util.Diagnostic; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.etrice.core.room.Binding; +import org.eclipse.etrice.core.room.GeneralProtocolClass; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.etrice.core.room.SubSystemClass; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestBindings extends TestBase { + private Resource resource; + + @Before + public void setUp() { + prepare(); + + resource = getResource("TestBindings.room"); + } + + @Test + public void testBindingValidation() { + RoomModel mdl = (RoomModel) resource.getContents().get(0); + SubSystemClass ssc = mdl.getSubSystemClasses().get(0); + Binding bind = ssc.getBindings().get(0); + Diagnostic diag = getDiag(bind).getChildren().get(0); + assertEquals("expect error message", "no self connection allowed, ports are indentical", diag.getMessage()); + + bind = ssc.getBindings().get(1); + diag = getDiag(bind).getChildren().get(0); + assertEquals("expect error message", "port with multiplicity 1 is already connected", diag.getMessage()); + + bind = ssc.getBindings().get(2); + diag = getDiag(bind).getChildren().get(0); + assertEquals("expect error message", "port with multiplicity 1 is already connected", diag.getMessage()); + + bind = ssc.getBindings().get(3); + diag = getDiag(bind).getChildren().get(0); + assertEquals("protocols don't match", diag.getMessage()); + + bind = ssc.getBindings().get(4); + diag = getDiag(bind).getChildren().get(0); + assertEquals("protocol extends incoming", diag.getMessage()); + + bind = ssc.getBindings().get(6); + diag = getDiag(bind).getChildren().get(0); + assertEquals("protocol extends outgoing", diag.getMessage()); + + bind = ssc.getBindings().get(7); + diag = getDiag(bind).getChildren().get(0); + assertEquals("derived protocols not connectable (both directions extended)", diag.getMessage()); + } + + @Test + public void testProtocolValidation() { + RoomModel mdl = (RoomModel) resource.getContents().get(0); + for (GeneralProtocolClass pc : mdl.getProtocolClasses()) { + if (pc.getName().equals("PCExtendInOut")) { + Diagnostic diag = getDiag(pc).getChildren().get(0); + assertEquals("a derived protocol should add either incoming or outgoing messages, not both", diag.getMessage()); + } + } + } +} diff --git a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestCases.java b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestCases.java index a16c22f0c..56815e6b3 100644 --- a/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestCases.java +++ b/tests/org.eclipse.etrice.core.room.tests/src/org/eclipse/etrice/core/TestCases.java @@ -1,75 +1,75 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.core;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import java.util.HashMap;
-
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Example test to illustrate validation unit tests.
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestCases extends TestBase {
-
- /**
- *
- */
- private static final String MSG1 = "connected sub component ports must be conjugated to each other";
- private Resource resource;
-
- @Before
- public void setUp() {
- prepare();
-
- resource = getResource("test.room");
- }
-
- @Test
- public void testSomething() {
- Diagnostic diag = getDiag(resource.getContents().get(0));
- HashMap<String, Diagnostic> msg2diag = getMappedDiagnostics(diag);
- assertEquals("number of problems", 1, msg2diag.size());
- assertNotNull(MSG1, msg2diag.get(MSG1));
- }
-
- /**
- * @param diag
- * @return
- */
- private HashMap<String, Diagnostic> getMappedDiagnostics(Diagnostic diag) {
- HashMap<String, Diagnostic> msg2diag = new HashMap<String, Diagnostic>();
- recursivlyCollectErrors(diag, msg2diag);
- return msg2diag;
- }
-
- /**
- * @param diag
- * @param msg2diag
- */
- private void recursivlyCollectErrors(Diagnostic diag, HashMap<String, Diagnostic> msg2diag) {
- for (Diagnostic d : diag.getChildren()) {
- if ((d.getSeverity() & Diagnostic.ERROR) != 0) {
- msg2diag.put(d.getMessage(), d);
- }
- }
- for (Diagnostic d : diag.getChildren()) {
- if (!d.getChildren().isEmpty())
- recursivlyCollectErrors(d, msg2diag);
- }
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.core; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.util.HashMap; + +import org.eclipse.emf.common.util.Diagnostic; +import org.eclipse.emf.ecore.resource.Resource; +import org.junit.Before; +import org.junit.Test; + +/** + * Example test to illustrate validation unit tests. + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestCases extends TestBase { + + /** + * + */ + private static final String MSG1 = "connected sub component ports must be conjugated to each other"; + private Resource resource; + + @Before + public void setUp() { + prepare(); + + resource = getResource("test.room"); + } + + @Test + public void testSomething() { + Diagnostic diag = getDiag(resource.getContents().get(0)); + HashMap<String, Diagnostic> msg2diag = getMappedDiagnostics(diag); + assertEquals("number of problems", 1, msg2diag.size()); + assertNotNull(MSG1, msg2diag.get(MSG1)); + } + + /** + * @param diag + * @return + */ + private HashMap<String, Diagnostic> getMappedDiagnostics(Diagnostic diag) { + HashMap<String, Diagnostic> msg2diag = new HashMap<String, Diagnostic>(); + recursivlyCollectErrors(diag, msg2diag); + return msg2diag; + } + + /** + * @param diag + * @param msg2diag + */ + private void recursivlyCollectErrors(Diagnostic diag, HashMap<String, Diagnostic> msg2diag) { + for (Diagnostic d : diag.getChildren()) { + if ((d.getSeverity() & Diagnostic.ERROR) != 0) { + msg2diag.put(d.getMessage(), d); + } + } + for (Diagnostic d : diag.getChildren()) { + if (!d.getChildren().isEmpty()) + recursivlyCollectErrors(d, msg2diag); + } + } +} diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/.classpath b/tests/org.eclipse.etrice.etunit.converter.tests/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/.classpath +++ b/tests/org.eclipse.etrice.etunit.converter.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/.gitignore b/tests/org.eclipse.etrice.etunit.converter.tests/.gitignore index f68b3dddc..fe99505dc 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/.gitignore +++ b/tests/org.eclipse.etrice.etunit.converter.tests/.gitignore @@ -1,2 +1,2 @@ -bin
-
+bin + diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/.project b/tests/org.eclipse.etrice.etunit.converter.tests/.project index ec251abf3..adf1a63ba 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/.project +++ b/tests/org.eclipse.etrice.etunit.converter.tests/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.etunit.converter.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.etunit.converter.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.etunit.converter.tests/.settings/org.eclipse.jdt.core.prefs index ca3bd59cf..133cce0f7 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.etunit.converter.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Mon May 14 12:14:34 CEST 2012
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Mon May 14 12:14:34 CEST 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF index 6f240407c..98267068e 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF @@ -1,12 +1,12 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: etUnit Converter Tests
-Bundle-SymbolicName: org.eclipse.etrice.etunit.converter.tests
-Bundle-Version: 0.3.0.qualifier
-Bundle-Activator: org.eclipse.etrice.etunit.converter.tests.Activator
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Require-Bundle: org.eclipse.etrice.etunit.converter;bundle-version="0.3.0",
- org.eclipse.core.runtime,
- org.junit;bundle-version="4.8.2"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: etUnit Converter Tests +Bundle-SymbolicName: org.eclipse.etrice.etunit.converter.tests +Bundle-Version: 0.3.0.qualifier +Bundle-Activator: org.eclipse.etrice.etunit.converter.tests.Activator +Bundle-Vendor: Eclipse eTrice (Incubation) +Require-Bundle: org.eclipse.etrice.etunit.converter;bundle-version="0.3.0", + org.eclipse.core.runtime, + org.junit;bundle-version="4.8.2" +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-ActivationPolicy: lazy diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/build.properties b/tests/org.eclipse.etrice.etunit.converter.tests/build.properties index cd8ab5a53..3a7f2ee52 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/build.properties +++ b/tests/org.eclipse.etrice.etunit.converter.tests/build.properties @@ -1,5 +1,5 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- reports/
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + reports/ diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/org.eclipse.etrice.etunit.converter.tests.launch b/tests/org.eclipse.etrice.etunit.converter.tests/org.eclipse.etrice.etunit.converter.tests.launch index 1a89090a2..5ed4f4f6f 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/org.eclipse.etrice.etunit.converter.tests.launch +++ b/tests/org.eclipse.etrice.etunit.converter.tests/org.eclipse.etrice.etunit.converter.tests.launch @@ -1,41 +1,41 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.etunit.converter.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.etunit.converter.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.etunit.converter.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.platform.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="false"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.etunit.converter.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.etunit.converter.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.etunit.converter.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.platform.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="false"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/combined.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/combined.xml index 1eefd3de1..1a21e9248 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/combined.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/combined.xml @@ -1,27 +1,27 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="TestMessage" tests="1" time="0">
- <testcase name="TestEtMessage_testBasicMessage" time="0"/>
- </testsuite>
- <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187">
- <testcase name="TestEtMessageQueue_testPushPop" time="0">
- <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333
- at ..\src\runtime\TestEtMessageQueue.c:42</failure>
- </testcase>
- <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/>
- </testsuite>
- <testsuite failures="0" name="TestEtMessageService" tests="5" time="16">
- <testcase name="TestEtMessageService_init" time="0"/>
- <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/>
- <testcase name="TestEtMessageService_GetReturn" time="16"/>
- <testcase name="TestEtMessageService_execute" time="0"/>
- <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/>
- </testsuite>
- <testsuite failures="0" name="TestEtUnit" tests="2" time="0">
- <testcase name="TestEtUnit_Expect_Order" time="0"/>
- <testcase name="TestEtUnit_Expect" time="0"/>
- </testsuite>
- <testsuite failures="0" name="etUnit" tests="1" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="TestMessage" tests="1" time="0"> + <testcase name="TestEtMessage_testBasicMessage" time="0"/> + </testsuite> + <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187"> + <testcase name="TestEtMessageQueue_testPushPop" time="0"> + <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333 + at ..\src\runtime\TestEtMessageQueue.c:42</failure> + </testcase> + <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/> + </testsuite> + <testsuite failures="0" name="TestEtMessageService" tests="5" time="16"> + <testcase name="TestEtMessageService_init" time="0"/> + <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/> + <testcase name="TestEtMessageService_GetReturn" time="16"/> + <testcase name="TestEtMessageService_execute" time="0"/> + <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/> + </testsuite> + <testsuite failures="0" name="TestEtUnit" tests="2" time="0"> + <testcase name="TestEtUnit_Expect_Order" time="0"/> + <testcase name="TestEtUnit_Expect" time="0"/> + </testsuite> + <testsuite failures="0" name="etUnit" tests="1" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/only_combined.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/only_combined.xml index 1eefd3de1..1a21e9248 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/only_combined.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/only_combined.xml @@ -1,27 +1,27 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="TestMessage" tests="1" time="0">
- <testcase name="TestEtMessage_testBasicMessage" time="0"/>
- </testsuite>
- <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187">
- <testcase name="TestEtMessageQueue_testPushPop" time="0">
- <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333
- at ..\src\runtime\TestEtMessageQueue.c:42</failure>
- </testcase>
- <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/>
- </testsuite>
- <testsuite failures="0" name="TestEtMessageService" tests="5" time="16">
- <testcase name="TestEtMessageService_init" time="0"/>
- <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/>
- <testcase name="TestEtMessageService_GetReturn" time="16"/>
- <testcase name="TestEtMessageService_execute" time="0"/>
- <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/>
- </testsuite>
- <testsuite failures="0" name="TestEtUnit" tests="2" time="0">
- <testcase name="TestEtUnit_Expect_Order" time="0"/>
- <testcase name="TestEtUnit_Expect" time="0"/>
- </testsuite>
- <testsuite failures="0" name="etUnit" tests="1" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="TestMessage" tests="1" time="0"> + <testcase name="TestEtMessage_testBasicMessage" time="0"/> + </testsuite> + <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187"> + <testcase name="TestEtMessageQueue_testPushPop" time="0"> + <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333 + at ..\src\runtime\TestEtMessageQueue.c:42</failure> + </testcase> + <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/> + </testsuite> + <testsuite failures="0" name="TestEtMessageService" tests="5" time="16"> + <testcase name="TestEtMessageService_init" time="0"/> + <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/> + <testcase name="TestEtMessageService_GetReturn" time="16"/> + <testcase name="TestEtMessageService_execute" time="0"/> + <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/> + </testsuite> + <testsuite failures="0" name="TestEtUnit" tests="2" time="0"> + <testcase name="TestEtUnit_Expect_Order" time="0"/> + <testcase name="TestEtUnit_Expect" time="0"/> + </testsuite> + <testsuite failures="0" name="etUnit" tests="1" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.etu b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.etu index 5d94e76eb..12d4782ff 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.etu +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.etu @@ -1,26 +1,26 @@ -etUnit report
-ts start: TestMessage
-tc start 1: TestEtMessage_testBasicMessage
-tc end 1: 0
-ts start: TestEtMessageQueue
-tc start 2: TestEtMessageQueue_testPushPop
-tc fail 2: #334#333#..\src\runtime\TestEtMessageQueue.c:42#rcvMsg2->evtID: expected=334, actual=333
-tc end 2: 0
-tc start 3: TestEtMessageQueue_testMassiveMessaging
-tc end 3: 187
-ts start: TestEtMessageService
-tc start 4: TestEtMessageService_init
-tc end 4: 0
-tc start 5: TestEtMessageService_GetPushPopReturn
-tc end 5: 0
-tc start 6: TestEtMessageService_GetReturn
-tc end 6: 16
-tc start 7: TestEtMessageService_execute
-tc end 7: 0
-tc start 8: TestEtMessageService_getMessagePoolLowWaterMark
-tc end 8: 0
-ts start: TestEtUnit
-tc start 9: TestEtUnit_Expect_Order
-tc end 9: 0
-tc start 10: TestEtUnit_Expect
-tc end 10: 0
+etUnit report +ts start: TestMessage +tc start 1: TestEtMessage_testBasicMessage +tc end 1: 0 +ts start: TestEtMessageQueue +tc start 2: TestEtMessageQueue_testPushPop +tc fail 2: #334#333#..\src\runtime\TestEtMessageQueue.c:42#rcvMsg2->evtID: expected=334, actual=333 +tc end 2: 0 +tc start 3: TestEtMessageQueue_testMassiveMessaging +tc end 3: 187 +ts start: TestEtMessageService +tc start 4: TestEtMessageService_init +tc end 4: 0 +tc start 5: TestEtMessageService_GetPushPopReturn +tc end 5: 0 +tc start 6: TestEtMessageService_GetReturn +tc end 6: 16 +tc start 7: TestEtMessageService_execute +tc end 7: 0 +tc start 8: TestEtMessageService_getMessagePoolLowWaterMark +tc end 8: 0 +ts start: TestEtUnit +tc start 9: TestEtUnit_Expect_Order +tc end 9: 0 +tc start 10: TestEtUnit_Expect +tc end 10: 0 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.xml index 3d1595e4d..c99b92aa1 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report1.xml @@ -1,24 +1,24 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="TestMessage" tests="1" time="0">
- <testcase name="TestEtMessage_testBasicMessage" time="0"/>
- </testsuite>
- <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187">
- <testcase name="TestEtMessageQueue_testPushPop" time="0">
- <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333
- at ..\src\runtime\TestEtMessageQueue.c:42</failure>
- </testcase>
- <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/>
- </testsuite>
- <testsuite failures="0" name="TestEtMessageService" tests="5" time="16">
- <testcase name="TestEtMessageService_init" time="0"/>
- <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/>
- <testcase name="TestEtMessageService_GetReturn" time="16"/>
- <testcase name="TestEtMessageService_execute" time="0"/>
- <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/>
- </testsuite>
- <testsuite failures="0" name="TestEtUnit" tests="2" time="0">
- <testcase name="TestEtUnit_Expect_Order" time="0"/>
- <testcase name="TestEtUnit_Expect" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="TestMessage" tests="1" time="0"> + <testcase name="TestEtMessage_testBasicMessage" time="0"/> + </testsuite> + <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187"> + <testcase name="TestEtMessageQueue_testPushPop" time="0"> + <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333 + at ..\src\runtime\TestEtMessageQueue.c:42</failure> + </testcase> + <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/> + </testsuite> + <testsuite failures="0" name="TestEtMessageService" tests="5" time="16"> + <testcase name="TestEtMessageService_init" time="0"/> + <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/> + <testcase name="TestEtMessageService_GetReturn" time="16"/> + <testcase name="TestEtMessageService_execute" time="0"/> + <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/> + </testsuite> + <testsuite failures="0" name="TestEtUnit" tests="2" time="0"> + <testcase name="TestEtUnit_Expect_Order" time="0"/> + <testcase name="TestEtUnit_Expect" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.etu b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.etu index 78f14cc25..c194a6c52 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.etu +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.etu @@ -1,4 +1,4 @@ -etUnit report
-ts start: etUnit
-tc start 11: openAll and closeAll
-tc end 11: 0
+etUnit report +ts start: etUnit +tc start 11: openAll and closeAll +tc end 11: 0 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.xml index ece64f1e0..87d8c645c 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report2.xml @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="etUnit" tests="1" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="etUnit" tests="1" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.etu b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.etu index 5d94e76eb..12d4782ff 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.etu +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.etu @@ -1,26 +1,26 @@ -etUnit report
-ts start: TestMessage
-tc start 1: TestEtMessage_testBasicMessage
-tc end 1: 0
-ts start: TestEtMessageQueue
-tc start 2: TestEtMessageQueue_testPushPop
-tc fail 2: #334#333#..\src\runtime\TestEtMessageQueue.c:42#rcvMsg2->evtID: expected=334, actual=333
-tc end 2: 0
-tc start 3: TestEtMessageQueue_testMassiveMessaging
-tc end 3: 187
-ts start: TestEtMessageService
-tc start 4: TestEtMessageService_init
-tc end 4: 0
-tc start 5: TestEtMessageService_GetPushPopReturn
-tc end 5: 0
-tc start 6: TestEtMessageService_GetReturn
-tc end 6: 16
-tc start 7: TestEtMessageService_execute
-tc end 7: 0
-tc start 8: TestEtMessageService_getMessagePoolLowWaterMark
-tc end 8: 0
-ts start: TestEtUnit
-tc start 9: TestEtUnit_Expect_Order
-tc end 9: 0
-tc start 10: TestEtUnit_Expect
-tc end 10: 0
+etUnit report +ts start: TestMessage +tc start 1: TestEtMessage_testBasicMessage +tc end 1: 0 +ts start: TestEtMessageQueue +tc start 2: TestEtMessageQueue_testPushPop +tc fail 2: #334#333#..\src\runtime\TestEtMessageQueue.c:42#rcvMsg2->evtID: expected=334, actual=333 +tc end 2: 0 +tc start 3: TestEtMessageQueue_testMassiveMessaging +tc end 3: 187 +ts start: TestEtMessageService +tc start 4: TestEtMessageService_init +tc end 4: 0 +tc start 5: TestEtMessageService_GetPushPopReturn +tc end 5: 0 +tc start 6: TestEtMessageService_GetReturn +tc end 6: 16 +tc start 7: TestEtMessageService_execute +tc end 7: 0 +tc start 8: TestEtMessageService_getMessagePoolLowWaterMark +tc end 8: 0 +ts start: TestEtUnit +tc start 9: TestEtUnit_Expect_Order +tc end 9: 0 +tc start 10: TestEtUnit_Expect +tc end 10: 0 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.xml index 3d1595e4d..c99b92aa1 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report3.xml @@ -1,24 +1,24 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="TestMessage" tests="1" time="0">
- <testcase name="TestEtMessage_testBasicMessage" time="0"/>
- </testsuite>
- <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187">
- <testcase name="TestEtMessageQueue_testPushPop" time="0">
- <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333
- at ..\src\runtime\TestEtMessageQueue.c:42</failure>
- </testcase>
- <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/>
- </testsuite>
- <testsuite failures="0" name="TestEtMessageService" tests="5" time="16">
- <testcase name="TestEtMessageService_init" time="0"/>
- <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/>
- <testcase name="TestEtMessageService_GetReturn" time="16"/>
- <testcase name="TestEtMessageService_execute" time="0"/>
- <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/>
- </testsuite>
- <testsuite failures="0" name="TestEtUnit" tests="2" time="0">
- <testcase name="TestEtUnit_Expect_Order" time="0"/>
- <testcase name="TestEtUnit_Expect" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="TestMessage" tests="1" time="0"> + <testcase name="TestEtMessage_testBasicMessage" time="0"/> + </testsuite> + <testsuite failures="1" name="TestEtMessageQueue" tests="2" time="187"> + <testcase name="TestEtMessageQueue_testPushPop" time="0"> + <failure><expected>334</expected><actual>333</actual>rcvMsg2->evtID: expected=334, actual=333 + at ..\src\runtime\TestEtMessageQueue.c:42</failure> + </testcase> + <testcase name="TestEtMessageQueue_testMassiveMessaging" time="187"/> + </testsuite> + <testsuite failures="0" name="TestEtMessageService" tests="5" time="16"> + <testcase name="TestEtMessageService_init" time="0"/> + <testcase name="TestEtMessageService_GetPushPopReturn" time="0"/> + <testcase name="TestEtMessageService_GetReturn" time="16"/> + <testcase name="TestEtMessageService_execute" time="0"/> + <testcase name="TestEtMessageService_getMessagePoolLowWaterMark" time="0"/> + </testsuite> + <testsuite failures="0" name="TestEtUnit" tests="2" time="0"> + <testcase name="TestEtUnit_Expect_Order" time="0"/> + <testcase name="TestEtUnit_Expect" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.etu b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.etu index 78f14cc25..c194a6c52 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.etu +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.etu @@ -1,4 +1,4 @@ -etUnit report
-ts start: etUnit
-tc start 11: openAll and closeAll
-tc end 11: 0
+etUnit report +ts start: etUnit +tc start 11: openAll and closeAll +tc end 11: 0 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.xml index ece64f1e0..87d8c645c 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report4.xml @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="etUnit" tests="1" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="etUnit" tests="1" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.etu b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.etu index 78f14cc25..c194a6c52 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.etu +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.etu @@ -1,4 +1,4 @@ -etUnit report
-ts start: etUnit
-tc start 11: openAll and closeAll
-tc end 11: 0
+etUnit report +ts start: etUnit +tc start 11: openAll and closeAll +tc end 11: 0 diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.xml b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.xml index bd3e81752..cf37f05ad 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.xml +++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/report5.xml @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="ASCII"?>
-<testsuites>
- <testsuite failures="0" name="new.suite.name" tests="1" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
+<?xml version="1.0" encoding="ASCII"?> +<testsuites> + <testsuite failures="0" name="new.suite.name" tests="1" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> </testsuites>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/ConverterTest.java b/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/ConverterTest.java index fcdee141d..51f18a82e 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/ConverterTest.java +++ b/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/ConverterTest.java @@ -1,96 +1,96 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.etunit.converter;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.etrice.etunit.converter.tests.Activator;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class ConverterTest {
-
- private String basePath;
-
- @Before
- public void prepare() {
- try {
- URL modelsDir = Activator.getInstance().getBundle().getEntry("reports");
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void testConversion() {
- ArrayList<String> args = new ArrayList<String>();
- args.add(basePath+"report1.etu");
-
- String[] arguments = new String[args.size()];
- EtUnitReportConverter.main(args.toArray(arguments));
- }
-
- @Test
- public void testDoubleConversion() {
- ArrayList<String> args = new ArrayList<String>();
- args.add(basePath+"report1.etu");
- args.add(basePath+"report2.etu");
-
- String[] arguments = new String[args.size()];
- EtUnitReportConverter.main(args.toArray(arguments));
- }
-
- @Test
- public void testCombine() {
- ArrayList<String> args = new ArrayList<String>();
- args.add(basePath+"report1.etu");
- args.add(basePath+"report2.etu");
- args.add(EtUnitReportConverter.OPTION_COMBINED);
- args.add(basePath+"combined.xml");
-
- String[] arguments = new String[args.size()];
- EtUnitReportConverter.main(args.toArray(arguments));
- }
-
- @Test
- public void testOnlyCombine() {
- ArrayList<String> args = new ArrayList<String>();
- args.add(basePath+"report3.etu");
- args.add(basePath+"report4.etu");
- args.add(EtUnitReportConverter.OPTION_ONLY_COMBINED);
- args.add(basePath+"only_combined.xml");
-
- String[] arguments = new String[args.size()];
- EtUnitReportConverter.main(args.toArray(arguments));
- }
-
- @Test
- public void testChangeSuiteName() {
- ArrayList<String> args = new ArrayList<String>();
- args.add(basePath+"report5.etu");
- args.add(EtUnitReportConverter.OPTION_SUITE_NAME);
- args.add("new.suite.name");
-
- String[] arguments = new String[args.size()];
- EtUnitReportConverter.main(args.toArray(arguments));
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.etunit.converter; + +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.etrice.etunit.converter.tests.Activator; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class ConverterTest { + + private String basePath; + + @Before + public void prepare() { + try { + URL modelsDir = Activator.getInstance().getBundle().getEntry("reports"); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Test + public void testConversion() { + ArrayList<String> args = new ArrayList<String>(); + args.add(basePath+"report1.etu"); + + String[] arguments = new String[args.size()]; + EtUnitReportConverter.main(args.toArray(arguments)); + } + + @Test + public void testDoubleConversion() { + ArrayList<String> args = new ArrayList<String>(); + args.add(basePath+"report1.etu"); + args.add(basePath+"report2.etu"); + + String[] arguments = new String[args.size()]; + EtUnitReportConverter.main(args.toArray(arguments)); + } + + @Test + public void testCombine() { + ArrayList<String> args = new ArrayList<String>(); + args.add(basePath+"report1.etu"); + args.add(basePath+"report2.etu"); + args.add(EtUnitReportConverter.OPTION_COMBINED); + args.add(basePath+"combined.xml"); + + String[] arguments = new String[args.size()]; + EtUnitReportConverter.main(args.toArray(arguments)); + } + + @Test + public void testOnlyCombine() { + ArrayList<String> args = new ArrayList<String>(); + args.add(basePath+"report3.etu"); + args.add(basePath+"report4.etu"); + args.add(EtUnitReportConverter.OPTION_ONLY_COMBINED); + args.add(basePath+"only_combined.xml"); + + String[] arguments = new String[args.size()]; + EtUnitReportConverter.main(args.toArray(arguments)); + } + + @Test + public void testChangeSuiteName() { + ArrayList<String> args = new ArrayList<String>(); + args.add(basePath+"report5.etu"); + args.add(EtUnitReportConverter.OPTION_SUITE_NAME); + args.add("new.suite.name"); + + String[] arguments = new String[args.size()]; + EtUnitReportConverter.main(args.toArray(arguments)); + } +} diff --git a/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/tests/Activator.java b/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/tests/Activator.java index 9a73b3f54..752bcf02d 100644 --- a/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/tests/Activator.java +++ b/tests/org.eclipse.etrice.etunit.converter.tests/src/org/eclipse/etrice/etunit/converter/tests/Activator.java @@ -1,42 +1,42 @@ -package org.eclipse.etrice.etunit.converter.tests;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class Activator extends Plugin implements BundleActivator {
-
- private static Activator instance = null;
-
- private static BundleContext context;
-
- static BundleContext getContext() {
- return context;
- }
-
- /*
- * (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext bundleContext) throws Exception {
- super.start(bundleContext);
-
- Activator.context = bundleContext;
- instance = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext bundleContext) throws Exception {
- instance = null;
- Activator.context = null;
-
- super.stop(bundleContext);
- }
-
- public static Activator getInstance() {
- return instance;
- }
-}
+package org.eclipse.etrice.etunit.converter.tests; + +import org.eclipse.core.runtime.Plugin; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class Activator extends Plugin implements BundleActivator { + + private static Activator instance = null; + + private static BundleContext context; + + static BundleContext getContext() { + return context; + } + + /* + * (non-Javadoc) + * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext) + */ + public void start(BundleContext bundleContext) throws Exception { + super.start(bundleContext); + + Activator.context = bundleContext; + instance = this; + } + + /* + * (non-Javadoc) + * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext) + */ + public void stop(BundleContext bundleContext) throws Exception { + instance = null; + Activator.context = null; + + super.stop(bundleContext); + } + + public static Activator getInstance() { + return instance; + } +} diff --git a/tests/org.eclipse.etrice.generator.c.tests/.classpath b/tests/org.eclipse.etrice.generator.c.tests/.classpath index bb2b15cfe..a2e404af1 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/.classpath +++ b/tests/org.eclipse.etrice.generator.c.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.generator.c.tests/.gitignore b/tests/org.eclipse.etrice.generator.c.tests/.gitignore index 04907272d..8d74feca6 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/.gitignore +++ b/tests/org.eclipse.etrice.generator.c.tests/.gitignore @@ -1,6 +1,6 @@ -/bin
-/models
-/output
-/results
-/src-gen
-/tmp
+/bin +/models +/output +/results +/src-gen +/tmp diff --git a/tests/org.eclipse.etrice.generator.c.tests/.project b/tests/org.eclipse.etrice.generator.c.tests/.project index 238489299..6ad23237a 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/.project +++ b/tests/org.eclipse.etrice.generator.c.tests/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.c.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.c.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.c.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.c.tests/.settings/org.eclipse.jdt.core.prefs index 54e493c07..8000cd6ca 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.generator.c.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,11 +1,11 @@ -eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.generator.c.tests/about.html b/tests/org.eclipse.etrice.generator.c.tests/about.html index 82d49bf5f..d35d5aed6 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/about.html +++ b/tests/org.eclipse.etrice.generator.c.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/org.eclipse.etrice.generator.c.tests/buckminster.cspec b/tests/org.eclipse.etrice.generator.c.tests/buckminster.cspec index 562d565a3..105e5d05a 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.generator.c.tests/buckminster.cspec @@ -1,11 +1,11 @@ -<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.c.tests" componentType="buckminster" version="0.3.0.qualifier">
- <cs:actions>
- <cs:public name="run_tests" actor="ant">
- <cs:actorProperties>
- <cs:property key="buildFile" value="make.xml"/>
- <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/>
- <cs:property key="targets" value="all"/>
- </cs:actorProperties>
- </cs:public>
- </cs:actions>
-</cs:cspec>
+<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.c.tests" componentType="buckminster" version="0.3.0.qualifier"> + <cs:actions> + <cs:public name="run_tests" actor="ant"> + <cs:actorProperties> + <cs:property key="buildFile" value="make.xml"/> + <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/> + <cs:property key="targets" value="all"/> + </cs:actorProperties> + </cs:public> + </cs:actions> +</cs:cspec> diff --git a/tests/org.eclipse.etrice.generator.c.tests/make.xml b/tests/org.eclipse.etrice.generator.c.tests/make.xml index 67fad5a51..b084513e1 100644 --- a/tests/org.eclipse.etrice.generator.c.tests/make.xml +++ b/tests/org.eclipse.etrice.generator.c.tests/make.xml @@ -1,516 +1,516 @@ -<?xml version="1.0"?>
-<!--
- Ant makefile for building and running of tests.
- This includes invocation of the Java code generator and conversion of the etunit
- results into xunit xml.
-
- To work locally you should define in your environment
- ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation
- ETRICE_C_RUNTIME=path to the org.eclipse.etrice.runtime.c folder (relative path doesn't work)
- ETRICE_GCC_PATH=folder where gcc resides
-
- @author Henrik Rentz-Reichert
--->
-<project name="project" default="all">
-
- <property name="c.tests.model.path" value="./models"/>
- <property name="modellib.path" value="../../runtime/org.eclipse.etrice.modellib.c"/>
- <property name="runtime.path" value="../../runtime/org.eclipse.etrice.runtime.c"/>
- <property name="bin.path" value="./bin"/>
- <property name="xml.output" value="./tmp"/>
- <property name="output" value="./output"/>
- <property environment="env"/>
-
-
- <!--
- all: copies the models, generates, compiles, runs, converts and copies the results
- -->
- <target name="all" depends="convert,copy_results">
- <echo>done with org.eclipse.etrice.generator.c.tests</echo>
- </target>
-
- <!--
- set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already
- -->
- <target name="set_tp" unless="target.platform">
- <echo>using local target platform</echo>
- <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/>
- </target>
-
- <!--
- set_tr: sets the test.result property if not set already
- -->
- <target name="set_tr" unless="test.results">
- <echo>using local test result folder</echo>
- <property name="test.results" value="./results"/>
- </target>
-
- <!--
- set_platform: sets the runtime.platform property if not set already
- -->
- <target name="set_platform" unless="runtime.platform">
- <echo>using MinGW runtime platform</echo>
- <!--
- <property name="runtime.platform" value="MT_WIN_MinGW"/>
- -->
- <property name="runtime.platform" value="MT_POSIX_GENERIC_GCC"/>
- </target>
-
- <!--
- set_rp: sets the runtime.path from the ETRICE_C_RUNTIME environment variable property if not set already
- -->
- <target name="set_rp" unless="c-runtime.path">
- <echo>using local runtime folder</echo>
- <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/>
- </target>
-
- <!--
- set_gcc_path: sets the gcc.path property from the ETRICE_GCC_PATH environment variable property if not set already
- -->
- <target name="set_gcc_path" unless="gcc.path">
- <echo>using gcc from path</echo>
- <property name="gcc.path" value="${env.ETRICE_GCC_PATH}"/>
- </target>
-
- <!--
- clean: deletes all folders created by this script
- -->
- <target name="clean" depends="set_tr,set_rp">
- <delete dir="${bin.path}"/>
- <delete dir="${c-runtime.path}/bin"/>
- <delete dir="models"/>
- <delete dir="${output}"/>
- <delete dir="src-gen"/>
- <delete dir="tmp"/>
- </target>
-
- <!--
- copy_models: copies the models from their original folders to the build location
- -->
- <target name="copy_models">
- <copy todir="models" >
- <fileset dir="../org.eclipse.etrice.generator.common.tests/models">
- <include name="*.room"/>
- <include name="*.config"/>
- <include name="*.etmap"/>
- <include name="*.etphys"/>
- </fileset>
- <fileset dir="${modellib.path}/model">
- <include name="TimingService.room"/>
- <include name="Types.room"/>
- <include name="Language.room"/>
- </fileset>
- </copy>
- <move file="models/StaticConfigTest_C.room" toFile="models/StaticConfigTest.room"/>
- </target>
-
- <!--
- generate: invokes the Java generator for the ROOM models
- -->
- <target name="generate" depends="set_tp,copy_models">
- <mkdir dir="${output}"/>
- <path id="clspath">
- <pathelement location="../../plugins/org.eclipse.etrice.generator.c/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator.doc/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator.config/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.room/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.etphys/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.etmap/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.config/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.genmodel/bin"/>
- <fileset dir="${target.platform}/plugins/">
- <include name="org.eclipse.emf.ecore_2.9*.jar" />
- <include name="org.eclipse.emf.common_2.9*.jar" />
- <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" />
- <include name="org.eclipse.xtext_2.4*.jar" />
- <include name="com.google.inject_*.jar" />
- <include name="com.google.guava_1*.jar" />
- <include name="org.eclipse.equinox.common_3.6.*.jar" />
- <include name="org.eclipse.xtext.util_2.4*.jar" />
- <include name="org.eclipse.xtend.lib_2.4*.jar" />
- <include name="org.eclipse.xtext.xbase.lib_2.4*.jar" />
- <include name="org.apache.log4j_1.2*.jar" />
- <include name="org.antlr.runtime_3.2*.jar" />
- <include name="javax.inject_1.0*.jar" />
- </fileset>
- </path>
-
- <java output="${output}/generate.txt" error="${output}/generate_err.txt" classname="org.eclipse.etrice.generator.c.Main" fork="true" failonerror="true">
- <arg value="${c.tests.model.path}/generator.c.tests.etmap"/>
- <arg value="${c.tests.model.path}/generator.c.tests.config"/>
- <classpath refid="clspath"/>
- </java>
- </target>
-
- <!--
- compile_runtime: compiles the C runtime library
- -->
- <target name="compile_runtime" depends="clean,set_rp,set_gcc_path,set_platform">
- <mkdir dir="${c-runtime.path}/bin"/>
- <mkdir dir="${output}"/>
- <exec dir="${c-runtime.path}/bin" executable="${gcc.path}/gcc" failonerror="true" output="${output}/compile_runtime.txt">
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../src/common/debugging/etMSCLogger.c"/>
- <arg value="../src/common/etUnit/etUnit.c"/>
- <arg value="../src/common/messaging/etMessage.c"/>
- <arg value="../src/common/messaging/etMessageQueue.c"/>
- <arg value="../src/common/messaging/etMessageService.c"/>
- <arg value="../src/common/messaging/etSystemProtocol.c"/>
- <arg value="../src/common/helpers/etTimeHelpers.c"/>
- <arg value="../src/common/runtime/etRuntime.c"/>
- <arg value="../src/common/modelbase/etActor.c"/>
- <arg value="../src/common/modelbase/etPort.c"/>
- <arg value="../src/platforms/${runtime.platform}/etLogger.c"/>
- <arg value="../src/platforms/${runtime.platform}/etMutex.c"/>
- <arg value="../src/platforms/${runtime.platform}/etPlatformLifecycle.c"/>
- <arg value="../src/platforms/${runtime.platform}/etSema.c"/>
- <arg value="../src/platforms/${runtime.platform}/etThread.c"/>
- <arg value="../src/platforms/${runtime.platform}/etTime.c"/>
- <arg value="../src/platforms/${runtime.platform}/etTimer.c"/>
- </exec>
- <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true">
- <arg value="-r"/>
- <arg value="liborg.eclipse.etrice.runtime.c.a"/>
- <arg value="etActor.o"/>
- <arg value="etLogger.o"/>
- <arg value="etMessage.o"/>
- <arg value="etMessageQueue.o"/>
- <arg value="etMessageService.o"/>
- <arg value="etSystemProtocol.o"/>
- <arg value="etTimeHelpers.o"/>
- <arg value="etRuntime.o"/>
- <arg value="etMSCLogger.o"/>
- <arg value="etMutex.o"/>
- <arg value="etPlatformLifecycle.o"/>
- <arg value="etPort.o"/>
- <arg value="etSema.o"/>
- <arg value="etThread.o"/>
- <arg value="etTime.o"/>
- <arg value="etTimer.o"/>
- <arg value="etUnit.o"/>
- </exec>
- </target>
-
- <!--
- build: compiles and links the generated C sources
- -->
- <target name="build" depends="set_rp,set_gcc_path,set_platform,compile_runtime,generate">
-
- <!-- compile and link HandlerTest -->
- <mkdir dir="bin/HandlerTest"/>
- <exec dir="bin/HandlerTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt">
- <arg value="-I../../src-gen/"/>
- <arg value="-I../../src-gen/room/basic/service/timing/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src-gen/HandlerTest/HandlerTest_Top.c"/>
- <arg value="../../src-gen/HandlerTest/HandlerUser.c"/>
- <arg value="../../src-gen/HandlerTest/node3_hdTest.c"/>
- <arg value="../../src-gen/HandlerTest/node3_hdTest_Runner.c"/>
- <arg value="../../src-gen/HandlerTest/Tester.c"/>
- <arg value="../../src-gen/HandlerTest/TestProtocol.c"/>
- <arg value="../../src-gen/room/basic/service/timing/ATimingService.c"/>
- <arg value="../../src-gen/room/basic/service/timing/PTimer.c"/>
- </exec>
- <exec dir="bin/HandlerTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oHandlerTest.exe"/>
- <arg value="HandlerTest_Top.o"/>
- <arg value="HandlerUser.o"/>
- <arg value="Tester.o"/>
- <arg value="TestProtocol.o"/>
- <arg value="node3_hdTest.o"/>
- <arg value="node3_hdTest_Runner.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
-
- <!-- compile and link ChoicepointTest -->
- <mkdir dir="bin/ChoicePointTest"/>
- <exec dir="bin/ChoicePointTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-I../../src-gen/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src-gen/ChoicePointTest/CPTest_Top.c"/>
- <arg value="../../src-gen/ChoicePointTest/CPTester.c"/>
- <arg value="../../src-gen/ChoicePointTest/CPUser.c"/>
- <arg value="../../src-gen/ChoicePointTest/node1_cpTest.c"/>
- <arg value="../../src-gen/ChoicePointTest/node1_cpTest_Runner.c"/>
- <arg value="../../src-gen/ChoicePointTest/TestProtocol.c"/>
- </exec>
- <exec dir="bin/ChoicePointTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oChoicePointTest.exe"/>
- <arg value="CPTest_Top.o"/>
- <arg value="CPTester.o"/>
- <arg value="CPUser.o"/>
- <arg value="node1_cpTest.o"/>
- <arg value="node1_cpTest_Runner.o"/>
- <arg value="TestProtocol.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
-
- <!-- compile and link SendingDataTestC -->
- <mkdir dir="bin/SendingDataTestC"/>
- <exec dir="bin/SendingDataTestC" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-I../../src-gen/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src-gen/SendingDataTestC/MrPing.c"/>
- <arg value="../../src-gen/SendingDataTestC/MrPong.c"/>
- <arg value="../../src-gen/SendingDataTestC/PingPongData.c"/>
- <arg value="../../src-gen/SendingDataTestC/PingPongDataDeep.c"/>
- <arg value="../../src-gen/SendingDataTestC/PingPongDataDerived.c"/>
- <arg value="../../src-gen/SendingDataTestC/PingPongProtocol.c"/>
- <arg value="../../src-gen/SendingDataTestC/SendingDataTop.c"/>
- <arg value="../../src-gen/SendingDataTestC/node4_sdTest.c"/>
- <arg value="../../src-gen/SendingDataTestC/node4_sdTest_Runner.c"/>
- </exec>
- <exec dir="bin/SendingDataTestC" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oSendingDataTestC.exe"/>
- <arg value="MrPing.o"/>
- <arg value="MrPong.o"/>
- <arg value="PingPongData.o"/>
- <arg value="PingPongDataDeep.o"/>
- <arg value="PingPongDataDerived.o"/>
- <arg value="PingPongProtocol.o"/>
- <arg value="SendingDataTop.o"/>
- <arg value="node4_sdTest.o"/>
- <arg value="node4_sdTest_Runner.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
-
- <!-- compile and link StaticConfigTest-->
- <mkdir dir="bin/StaticConfigTest"/>
- <exec dir="bin/StaticConfigTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-I../../src-gen/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src-gen/StaticConfigTest/Tester_ac.c"/>
- <arg value="../../src-gen/StaticConfigTest/Testee_1_ac.c"/>
- <arg value="../../src-gen/StaticConfigTest/Testee_2_ac.c"/>
- <arg value="../../src-gen/StaticConfigTest/Testee_Super2_ac.c"/>
- <arg value="../../src-gen/StaticConfigTest/Data_1_dc.c"/>
- <arg value="../../src-gen/StaticConfigTest/Data_Super1_dc.c"/>
- <arg value="../../src-gen/StaticConfigTest/Data_2_dc.c"/>
- <arg value="../../src-gen/StaticConfigTest/Data_3_dc.c"/>
- <arg value="../../src-gen/StaticConfigTest/TestProtocolAttributes.c"/>
- <arg value="../../src-gen/StaticConfigTest/TestProtocolWithDataClass.c"/>
- <arg value="../../src-gen/StaticConfigTest/Top_ac.c"/>
- <arg value="../../src-gen/StaticConfigTest/node5_scTest.c"/>
- <arg value="../../src-gen/StaticConfigTest/node5_scTest_Runner.c"/>
- </exec>
- <exec dir="bin/StaticConfigTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L../../../../runtime/org.eclipse.etrice.runtime.c/bin"/>
- <arg value="-oStaticConfigTest.exe"/>
- <arg value="Tester_ac.o"/>
- <arg value="Testee_1_ac.o"/>
- <arg value="Testee_2_ac.o"/>
- <arg value="Testee_Super2_ac.o"/>
- <arg value="Data_1_dc.o"/>
- <arg value="Data_Super1_dc.o"/>
- <arg value="Data_2_dc.o"/>
- <arg value="Data_3_dc.o"/>
- <arg value="TestProtocolAttributes.o"/>
- <arg value="TestProtocolWithDataClass.o"/>
- <arg value="Top_ac.o"/>
- <arg value="node5_scTest.o"/>
- <arg value="node5_scTest_Runner.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
-
- <!-- compile and link DataDrivenTest-->
- <mkdir dir="bin/DataDrivenTest"/>
- <exec dir="bin/DataDrivenTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-I../../src-gen/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src-gen/DataDrivenTest/Tester.c"/>
- <arg value="../../src-gen/DataDrivenTest/Testee.c"/>
- <arg value="../../src-gen/DataDrivenTest/Appl.c"/>
- <arg value="../../src-gen/DataDrivenTest/DC.c"/>
- <arg value="../../src-gen/DataDrivenTest/PC.c"/>
- <arg value="../../src-gen/DataDrivenTest/node2_ddTest.c"/>
- <arg value="../../src-gen/DataDrivenTest/node2_ddTest_Runner.c"/>
- <arg value="../../src-gen/room/basic/service/timing/ATimingService.c"/>
- <arg value="../../src-gen/room/basic/service/timing/PTimer.c"/>
- </exec>
- <exec dir="bin/DataDrivenTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L../../../../runtime/org.eclipse.etrice.runtime.c/bin"/>
- <arg value="-oDataDrivenTest.exe"/>
- <arg value="Tester.o"/>
- <arg value="Testee.o"/>
- <arg value="Appl.o"/>
- <arg value="DC.o"/>
- <arg value="PC.o"/>
- <arg value="node2_ddTest.o"/>
- <arg value="node2_ddTest_Runner.o"/>
- <arg value="ATimingService.o"/>
- <arg value="PTimer.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
- </target>
-
- <!--
- run: runs all executables
- -->
- <target name="run" depends="build">
- <mkdir dir="tmp/log"/>
- <echo>start HandlerTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/HandlerTest/HandlerTest.exe">
- <arg value="-run_as_test"/>
- </exec>
- <echo>end HandlerTest</echo>
- <echo>start ChoicePointTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/ChoicePointTest/ChoicePointTest.exe">
- <arg value="-run_as_test"/>
- </exec>
- <echo>end ChoicePointTest</echo>
- <!--
- <echo>start SendingDataTestC</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/SendingDataTestC/SendingDataTestC.exe">
- <arg value="-run_as_test"/>
- </exec>
- <echo>end SendingDataTestC</echo>
- -->
- <echo>start StaticConfigTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/StaticConfigTest/StaticConfigTest.exe">
- <arg value="-run_as_test"/>
- </exec>
- <echo>end StaticConfigTest</echo>
- <echo>start DataDrivenTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/DataDrivenTest/DataDrivenTest.exe">
- <arg value="-run_as_test"/>
- </exec>
- <echo>end DataDrivenTest</echo>
- </target>
-
- <!--
- convert: converts etu- into xunit xml-format
- -->
- <target name="convert" depends="run,set_tp">
- <path id="clspath">
- <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/>
- <fileset dir="${target.platform}/plugins/">
- <include name="org.eclipse.core.runtime_3.9*.jar" />
- <include name="org.eclipse.emf.ecore_2.9*.jar" />
- <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" />
- <include name="org.eclipse.emf.common_2.9*.jar" />
- </fileset>
- </path>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.c.tests.ChoicePointTest"/>
- <arg value="./tmp/ChoicePointTest.etu"/>
- <classpath refid="clspath"/>
- </java>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.c.tests.HandlerTest"/>
- <arg value="./tmp/HandlerTest.etu"/>
- <classpath refid="clspath"/>
- </java>
-
- <!--
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.c.tests.SendingDataTestC"/>
- <arg value="./tmp/SendingDataTestC.etu"/>
- <classpath refid="clspath"/>
- </java>
- -->
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.c.tests.StaticConfigTest"/>
- <arg value="./tmp/StaticConfigTest.etu"/>
- <classpath refid="clspath"/>
- </java>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.c.tests.DataDrivenTest"/>
- <arg value="./tmp/DataDrivenTest.etu"/>
- <classpath refid="clspath"/>
- </java>
- </target>
-
- <!--
- copy_results: copies the *.xml results to their final destination
- -->
- <target name="copy_results" depends="set_tr">
- <move file="./tmp/HandlerTest.xml" tofile="./tmp/CHandlerTest.xml"/>
- <move file="./tmp/ChoicePointTest.xml" tofile="./tmp/CChoicePointTest.xml"/>
- <!--
- <move file="./tmp/SendingDataTestC.xml" tofile="./tmp/CSendingDataTest.xml"/>
- -->
- <move file="./tmp/StaticConfigTest.xml" tofile="./tmp/CStaticConfigTest.xml"/>
- <move file="./tmp/DataDrivenTest.xml" tofile="./tmp/CDataDrivenTest.xml"/>
- <copy todir="${test.results}" >
- <fileset dir="./tmp">
- <include name="*.xml"/>
- </fileset>
- </copy>
- </target>
-
-</project>
+<?xml version="1.0"?> +<!-- + Ant makefile for building and running of tests. + This includes invocation of the Java code generator and conversion of the etunit + results into xunit xml. + + To work locally you should define in your environment + ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation + ETRICE_C_RUNTIME=path to the org.eclipse.etrice.runtime.c folder (relative path doesn't work) + ETRICE_GCC_PATH=folder where gcc resides + + @author Henrik Rentz-Reichert +--> +<project name="project" default="all"> + + <property name="c.tests.model.path" value="./models"/> + <property name="modellib.path" value="../../runtime/org.eclipse.etrice.modellib.c"/> + <property name="runtime.path" value="../../runtime/org.eclipse.etrice.runtime.c"/> + <property name="bin.path" value="./bin"/> + <property name="xml.output" value="./tmp"/> + <property name="output" value="./output"/> + <property environment="env"/> + + + <!-- + all: copies the models, generates, compiles, runs, converts and copies the results + --> + <target name="all" depends="convert,copy_results"> + <echo>done with org.eclipse.etrice.generator.c.tests</echo> + </target> + + <!-- + set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already + --> + <target name="set_tp" unless="target.platform"> + <echo>using local target platform</echo> + <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/> + </target> + + <!-- + set_tr: sets the test.result property if not set already + --> + <target name="set_tr" unless="test.results"> + <echo>using local test result folder</echo> + <property name="test.results" value="./results"/> + </target> + + <!-- + set_platform: sets the runtime.platform property if not set already + --> + <target name="set_platform" unless="runtime.platform"> + <echo>using MinGW runtime platform</echo> + <!-- + <property name="runtime.platform" value="MT_WIN_MinGW"/> + --> + <property name="runtime.platform" value="MT_POSIX_GENERIC_GCC"/> + </target> + + <!-- + set_rp: sets the runtime.path from the ETRICE_C_RUNTIME environment variable property if not set already + --> + <target name="set_rp" unless="c-runtime.path"> + <echo>using local runtime folder</echo> + <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/> + </target> + + <!-- + set_gcc_path: sets the gcc.path property from the ETRICE_GCC_PATH environment variable property if not set already + --> + <target name="set_gcc_path" unless="gcc.path"> + <echo>using gcc from path</echo> + <property name="gcc.path" value="${env.ETRICE_GCC_PATH}"/> + </target> + + <!-- + clean: deletes all folders created by this script + --> + <target name="clean" depends="set_tr,set_rp"> + <delete dir="${bin.path}"/> + <delete dir="${c-runtime.path}/bin"/> + <delete dir="models"/> + <delete dir="${output}"/> + <delete dir="src-gen"/> + <delete dir="tmp"/> + </target> + + <!-- + copy_models: copies the models from their original folders to the build location + --> + <target name="copy_models"> + <copy todir="models" > + <fileset dir="../org.eclipse.etrice.generator.common.tests/models"> + <include name="*.room"/> + <include name="*.config"/> + <include name="*.etmap"/> + <include name="*.etphys"/> + </fileset> + <fileset dir="${modellib.path}/model"> + <include name="TimingService.room"/> + <include name="Types.room"/> + <include name="Language.room"/> + </fileset> + </copy> + <move file="models/StaticConfigTest_C.room" toFile="models/StaticConfigTest.room"/> + </target> + + <!-- + generate: invokes the Java generator for the ROOM models + --> + <target name="generate" depends="set_tp,copy_models"> + <mkdir dir="${output}"/> + <path id="clspath"> + <pathelement location="../../plugins/org.eclipse.etrice.generator.c/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator.doc/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator.config/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.room/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.etphys/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.etmap/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.config/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.genmodel/bin"/> + <fileset dir="${target.platform}/plugins/"> + <include name="org.eclipse.emf.ecore_2.9*.jar" /> + <include name="org.eclipse.emf.common_2.9*.jar" /> + <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" /> + <include name="org.eclipse.xtext_2.4*.jar" /> + <include name="com.google.inject_*.jar" /> + <include name="com.google.guava_1*.jar" /> + <include name="org.eclipse.equinox.common_3.6.*.jar" /> + <include name="org.eclipse.xtext.util_2.4*.jar" /> + <include name="org.eclipse.xtend.lib_2.4*.jar" /> + <include name="org.eclipse.xtext.xbase.lib_2.4*.jar" /> + <include name="org.apache.log4j_1.2*.jar" /> + <include name="org.antlr.runtime_3.2*.jar" /> + <include name="javax.inject_1.0*.jar" /> + </fileset> + </path> + + <java output="${output}/generate.txt" error="${output}/generate_err.txt" classname="org.eclipse.etrice.generator.c.Main" fork="true" failonerror="true"> + <arg value="${c.tests.model.path}/generator.c.tests.etmap"/> + <arg value="${c.tests.model.path}/generator.c.tests.config"/> + <classpath refid="clspath"/> + </java> + </target> + + <!-- + compile_runtime: compiles the C runtime library + --> + <target name="compile_runtime" depends="clean,set_rp,set_gcc_path,set_platform"> + <mkdir dir="${c-runtime.path}/bin"/> + <mkdir dir="${output}"/> + <exec dir="${c-runtime.path}/bin" executable="${gcc.path}/gcc" failonerror="true" output="${output}/compile_runtime.txt"> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../src/common/debugging/etMSCLogger.c"/> + <arg value="../src/common/etUnit/etUnit.c"/> + <arg value="../src/common/messaging/etMessage.c"/> + <arg value="../src/common/messaging/etMessageQueue.c"/> + <arg value="../src/common/messaging/etMessageService.c"/> + <arg value="../src/common/messaging/etSystemProtocol.c"/> + <arg value="../src/common/helpers/etTimeHelpers.c"/> + <arg value="../src/common/runtime/etRuntime.c"/> + <arg value="../src/common/modelbase/etActor.c"/> + <arg value="../src/common/modelbase/etPort.c"/> + <arg value="../src/platforms/${runtime.platform}/etLogger.c"/> + <arg value="../src/platforms/${runtime.platform}/etMutex.c"/> + <arg value="../src/platforms/${runtime.platform}/etPlatformLifecycle.c"/> + <arg value="../src/platforms/${runtime.platform}/etSema.c"/> + <arg value="../src/platforms/${runtime.platform}/etThread.c"/> + <arg value="../src/platforms/${runtime.platform}/etTime.c"/> + <arg value="../src/platforms/${runtime.platform}/etTimer.c"/> + </exec> + <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true"> + <arg value="-r"/> + <arg value="liborg.eclipse.etrice.runtime.c.a"/> + <arg value="etActor.o"/> + <arg value="etLogger.o"/> + <arg value="etMessage.o"/> + <arg value="etMessageQueue.o"/> + <arg value="etMessageService.o"/> + <arg value="etSystemProtocol.o"/> + <arg value="etTimeHelpers.o"/> + <arg value="etRuntime.o"/> + <arg value="etMSCLogger.o"/> + <arg value="etMutex.o"/> + <arg value="etPlatformLifecycle.o"/> + <arg value="etPort.o"/> + <arg value="etSema.o"/> + <arg value="etThread.o"/> + <arg value="etTime.o"/> + <arg value="etTimer.o"/> + <arg value="etUnit.o"/> + </exec> + </target> + + <!-- + build: compiles and links the generated C sources + --> + <target name="build" depends="set_rp,set_gcc_path,set_platform,compile_runtime,generate"> + + <!-- compile and link HandlerTest --> + <mkdir dir="bin/HandlerTest"/> + <exec dir="bin/HandlerTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt"> + <arg value="-I../../src-gen/"/> + <arg value="-I../../src-gen/room/basic/service/timing/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src-gen/HandlerTest/HandlerTest_Top.c"/> + <arg value="../../src-gen/HandlerTest/HandlerUser.c"/> + <arg value="../../src-gen/HandlerTest/node3_hdTest.c"/> + <arg value="../../src-gen/HandlerTest/node3_hdTest_Runner.c"/> + <arg value="../../src-gen/HandlerTest/Tester.c"/> + <arg value="../../src-gen/HandlerTest/TestProtocol.c"/> + <arg value="../../src-gen/room/basic/service/timing/ATimingService.c"/> + <arg value="../../src-gen/room/basic/service/timing/PTimer.c"/> + </exec> + <exec dir="bin/HandlerTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oHandlerTest.exe"/> + <arg value="HandlerTest_Top.o"/> + <arg value="HandlerUser.o"/> + <arg value="Tester.o"/> + <arg value="TestProtocol.o"/> + <arg value="node3_hdTest.o"/> + <arg value="node3_hdTest_Runner.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + + <!-- compile and link ChoicepointTest --> + <mkdir dir="bin/ChoicePointTest"/> + <exec dir="bin/ChoicePointTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-I../../src-gen/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src-gen/ChoicePointTest/CPTest_Top.c"/> + <arg value="../../src-gen/ChoicePointTest/CPTester.c"/> + <arg value="../../src-gen/ChoicePointTest/CPUser.c"/> + <arg value="../../src-gen/ChoicePointTest/node1_cpTest.c"/> + <arg value="../../src-gen/ChoicePointTest/node1_cpTest_Runner.c"/> + <arg value="../../src-gen/ChoicePointTest/TestProtocol.c"/> + </exec> + <exec dir="bin/ChoicePointTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oChoicePointTest.exe"/> + <arg value="CPTest_Top.o"/> + <arg value="CPTester.o"/> + <arg value="CPUser.o"/> + <arg value="node1_cpTest.o"/> + <arg value="node1_cpTest_Runner.o"/> + <arg value="TestProtocol.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + + <!-- compile and link SendingDataTestC --> + <mkdir dir="bin/SendingDataTestC"/> + <exec dir="bin/SendingDataTestC" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-I../../src-gen/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src-gen/SendingDataTestC/MrPing.c"/> + <arg value="../../src-gen/SendingDataTestC/MrPong.c"/> + <arg value="../../src-gen/SendingDataTestC/PingPongData.c"/> + <arg value="../../src-gen/SendingDataTestC/PingPongDataDeep.c"/> + <arg value="../../src-gen/SendingDataTestC/PingPongDataDerived.c"/> + <arg value="../../src-gen/SendingDataTestC/PingPongProtocol.c"/> + <arg value="../../src-gen/SendingDataTestC/SendingDataTop.c"/> + <arg value="../../src-gen/SendingDataTestC/node4_sdTest.c"/> + <arg value="../../src-gen/SendingDataTestC/node4_sdTest_Runner.c"/> + </exec> + <exec dir="bin/SendingDataTestC" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oSendingDataTestC.exe"/> + <arg value="MrPing.o"/> + <arg value="MrPong.o"/> + <arg value="PingPongData.o"/> + <arg value="PingPongDataDeep.o"/> + <arg value="PingPongDataDerived.o"/> + <arg value="PingPongProtocol.o"/> + <arg value="SendingDataTop.o"/> + <arg value="node4_sdTest.o"/> + <arg value="node4_sdTest_Runner.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + + <!-- compile and link StaticConfigTest--> + <mkdir dir="bin/StaticConfigTest"/> + <exec dir="bin/StaticConfigTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-I../../src-gen/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src-gen/StaticConfigTest/Tester_ac.c"/> + <arg value="../../src-gen/StaticConfigTest/Testee_1_ac.c"/> + <arg value="../../src-gen/StaticConfigTest/Testee_2_ac.c"/> + <arg value="../../src-gen/StaticConfigTest/Testee_Super2_ac.c"/> + <arg value="../../src-gen/StaticConfigTest/Data_1_dc.c"/> + <arg value="../../src-gen/StaticConfigTest/Data_Super1_dc.c"/> + <arg value="../../src-gen/StaticConfigTest/Data_2_dc.c"/> + <arg value="../../src-gen/StaticConfigTest/Data_3_dc.c"/> + <arg value="../../src-gen/StaticConfigTest/TestProtocolAttributes.c"/> + <arg value="../../src-gen/StaticConfigTest/TestProtocolWithDataClass.c"/> + <arg value="../../src-gen/StaticConfigTest/Top_ac.c"/> + <arg value="../../src-gen/StaticConfigTest/node5_scTest.c"/> + <arg value="../../src-gen/StaticConfigTest/node5_scTest_Runner.c"/> + </exec> + <exec dir="bin/StaticConfigTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L../../../../runtime/org.eclipse.etrice.runtime.c/bin"/> + <arg value="-oStaticConfigTest.exe"/> + <arg value="Tester_ac.o"/> + <arg value="Testee_1_ac.o"/> + <arg value="Testee_2_ac.o"/> + <arg value="Testee_Super2_ac.o"/> + <arg value="Data_1_dc.o"/> + <arg value="Data_Super1_dc.o"/> + <arg value="Data_2_dc.o"/> + <arg value="Data_3_dc.o"/> + <arg value="TestProtocolAttributes.o"/> + <arg value="TestProtocolWithDataClass.o"/> + <arg value="Top_ac.o"/> + <arg value="node5_scTest.o"/> + <arg value="node5_scTest_Runner.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + + <!-- compile and link DataDrivenTest--> + <mkdir dir="bin/DataDrivenTest"/> + <exec dir="bin/DataDrivenTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-I../../src-gen/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src-gen/DataDrivenTest/Tester.c"/> + <arg value="../../src-gen/DataDrivenTest/Testee.c"/> + <arg value="../../src-gen/DataDrivenTest/Appl.c"/> + <arg value="../../src-gen/DataDrivenTest/DC.c"/> + <arg value="../../src-gen/DataDrivenTest/PC.c"/> + <arg value="../../src-gen/DataDrivenTest/node2_ddTest.c"/> + <arg value="../../src-gen/DataDrivenTest/node2_ddTest_Runner.c"/> + <arg value="../../src-gen/room/basic/service/timing/ATimingService.c"/> + <arg value="../../src-gen/room/basic/service/timing/PTimer.c"/> + </exec> + <exec dir="bin/DataDrivenTest" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L../../../../runtime/org.eclipse.etrice.runtime.c/bin"/> + <arg value="-oDataDrivenTest.exe"/> + <arg value="Tester.o"/> + <arg value="Testee.o"/> + <arg value="Appl.o"/> + <arg value="DC.o"/> + <arg value="PC.o"/> + <arg value="node2_ddTest.o"/> + <arg value="node2_ddTest_Runner.o"/> + <arg value="ATimingService.o"/> + <arg value="PTimer.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + </target> + + <!-- + run: runs all executables + --> + <target name="run" depends="build"> + <mkdir dir="tmp/log"/> + <echo>start HandlerTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/HandlerTest/HandlerTest.exe"> + <arg value="-run_as_test"/> + </exec> + <echo>end HandlerTest</echo> + <echo>start ChoicePointTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/ChoicePointTest/ChoicePointTest.exe"> + <arg value="-run_as_test"/> + </exec> + <echo>end ChoicePointTest</echo> + <!-- + <echo>start SendingDataTestC</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/SendingDataTestC/SendingDataTestC.exe"> + <arg value="-run_as_test"/> + </exec> + <echo>end SendingDataTestC</echo> + --> + <echo>start StaticConfigTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/StaticConfigTest/StaticConfigTest.exe"> + <arg value="-run_as_test"/> + </exec> + <echo>end StaticConfigTest</echo> + <echo>start DataDrivenTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/DataDrivenTest/DataDrivenTest.exe"> + <arg value="-run_as_test"/> + </exec> + <echo>end DataDrivenTest</echo> + </target> + + <!-- + convert: converts etu- into xunit xml-format + --> + <target name="convert" depends="run,set_tp"> + <path id="clspath"> + <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/> + <fileset dir="${target.platform}/plugins/"> + <include name="org.eclipse.core.runtime_3.9*.jar" /> + <include name="org.eclipse.emf.ecore_2.9*.jar" /> + <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" /> + <include name="org.eclipse.emf.common_2.9*.jar" /> + </fileset> + </path> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.c.tests.ChoicePointTest"/> + <arg value="./tmp/ChoicePointTest.etu"/> + <classpath refid="clspath"/> + </java> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.c.tests.HandlerTest"/> + <arg value="./tmp/HandlerTest.etu"/> + <classpath refid="clspath"/> + </java> + + <!-- + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.c.tests.SendingDataTestC"/> + <arg value="./tmp/SendingDataTestC.etu"/> + <classpath refid="clspath"/> + </java> + --> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.c.tests.StaticConfigTest"/> + <arg value="./tmp/StaticConfigTest.etu"/> + <classpath refid="clspath"/> + </java> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.c.tests.DataDrivenTest"/> + <arg value="./tmp/DataDrivenTest.etu"/> + <classpath refid="clspath"/> + </java> + </target> + + <!-- + copy_results: copies the *.xml results to their final destination + --> + <target name="copy_results" depends="set_tr"> + <move file="./tmp/HandlerTest.xml" tofile="./tmp/CHandlerTest.xml"/> + <move file="./tmp/ChoicePointTest.xml" tofile="./tmp/CChoicePointTest.xml"/> + <!-- + <move file="./tmp/SendingDataTestC.xml" tofile="./tmp/CSendingDataTest.xml"/> + --> + <move file="./tmp/StaticConfigTest.xml" tofile="./tmp/CStaticConfigTest.xml"/> + <move file="./tmp/DataDrivenTest.xml" tofile="./tmp/CDataDrivenTest.xml"/> + <copy todir="${test.results}" > + <fileset dir="./tmp"> + <include name="*.xml"/> + </fileset> + </copy> + </target> + +</project> diff --git a/tests/org.eclipse.etrice.generator.common.tests/.project b/tests/org.eclipse.etrice.generator.common.tests/.project index 281491b21..b08f92436 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/.project +++ b/tests/org.eclipse.etrice.generator.common.tests/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.common.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.common.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.common.tests/about.html b/tests/org.eclipse.etrice.generator.common.tests/about.html index 82d49bf5f..d35d5aed6 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/about.html +++ b/tests/org.eclipse.etrice.generator.common.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/org.eclipse.etrice.generator.common.tests/buckminster.cspec b/tests/org.eclipse.etrice.generator.common.tests/buckminster.cspec index 7025f5870..9803fed03 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.generator.common.tests/buckminster.cspec @@ -1 +1 @@ -<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.common.tests" componentType="buckminster" version="0.3.0.qualifier"/>
+<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.common.tests" componentType="buckminster" version="0.3.0.qualifier"/> diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room index cea2beba8..eb4bfe5f3 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room @@ -1,223 +1,223 @@ -RoomModel ChoicePointTest {
-
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_CPTest {
- ActorRef ChoicePointTest_Top: CPTest_Top
-
- LogicalThread dflt_thread
- }
-
- ActorClass CPTest_Top {
- Structure {
- ActorRef cp_tester: CPTester
- ActorRef cp_user: CPUser
- Binding cp_tester.TestPort1 and cp_user.TestPort1
- }
- Behavior { }
- }
-
- ActorClass CPUser {
- Interface {
- Port TestPort1: TestProtocol
- }
- Structure {
- external Port TestPort1
- Attribute counter: int32
- Attribute caseId: int32
- Attribute resultlist[29]: int16 = "{1,2,3,4,5,6,3,4,5,7,8,10,11,12,9,16,3,4,5,17,8,13,15,11,19,12,9,18,20}"
-
- }
- Behavior {
- Operation CPUser() {
- "caseId = etUnit_openAll(\"tmp\", \"ChoicePointTest\", \"org.eclipse.etrice.generator.common.tests.ChoicePointTest\", \"ChoicePointTest_case\");"
- }
- Operation ~CPUser() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition init: initial -> cp cp0 {
- action {
- "counter = 0;"
- "EXPECT_ORDER_START(caseId,resultlist,29);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);"
- }
- }
- Transition tr4: cp cp0 -> ENTRY3_EXIT4 {
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0);"
- }
- }
- Transition EXPECT2: cp cp0 -> ENTRY3_EXIT4 {
- cond {
- "counter == 0"
- }
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);"
- }
- }
- Transition EXPECT5: ENTRY3_EXIT4 -> cp cp1 {
- triggers {
- <msg1: TestPort1>
- }
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 5);"
- }
- }
- Transition EXPECT6: cp cp1 -> ENTRY3_EXIT4 {
- action {
- "counter=3;"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 6);"
- }
- }
- Transition EXPECT17: cp cp1 -> tp0 of ENTRY8_EXIT9 {
- cond {
- "counter == 4"
- }
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 17);"
- }
- }
- Transition EXPECT7: cp cp1 -> ENTRY8_EXIT9 {
- cond {
- "counter == 3"
- }
- action {
- "counter = 1;"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 7);"
- }
- }
- Transition EXPECT16: ENTRY8_EXIT9 -> ENTRY3_EXIT4 {
- triggers {
- <msg1: TestPort1 guard {
- "counter==1"
- }>
- }
- action {
- "counter=4;"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 16);"
- }
- }
- Transition EXPEXT19: my tp0 -> my tp0 {
- triggers {
- <msg1: TestPort1>
- }
- action {
- "counter = 2;"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);"
- }
- }
- Transition EXPECT18: ENTRY8_EXIT9 -> testOk {
- triggers {
- <msg1: TestPort1 guard {
- "counter==2"
- }>
- }
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 18);"
- }
- }
- Transition tr0: ENTRY3_EXIT4 -> cp cp1 {
- triggers {
- <msg2: TestPort1>
- }
- }
- ChoicePoint cp0
- ChoicePoint cp1
- handler TransitionPoint tp0
- State ENTRY3_EXIT4 {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 3);"
- }
- exit {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 4);"
- }
- }
- State ENTRY8_EXIT9 {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);"
- }
- exit {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);"
- }
- subgraph {
- Transition EXPECT13: my tp0 -> cp cp0 {
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 13);"
- }
- }
- Transition EXPECT14: cp cp0 -> ENTRY11_EXIT12 {
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 14);"
- }
- }
- Transition EXPECT15: cp cp0 -> ENTRY11_EXIT12 {
- cond {
- "counter == 4"
- }
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 15);"
- }
- }
- Transition init: initial -> ENTRY11_EXIT12 {
- action {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 10);"
- }
- }
- ChoicePoint cp0
- EntryPoint tp0
- State ENTRY11_EXIT12 {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 11);"
- }
- exit {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 12);"
- }
- }
- }
- }
- State testOk {
- entry {
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 20);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass CPTester {
- Interface {
- conjugated Port TestPort1: TestProtocol
- }
- Structure {
- external Port TestPort1
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "TestPort1.msg1(1);"
- "TestPort1.msg1(2);"
- "TestPort1.msg1(3);"
- "TestPort1.msg1(4);"
- "TestPort1.msg1(5);"
- "TestPort1.msg1(6);"
- }
- }
- State state0
- }
- }
- }
-
- ProtocolClass TestProtocol {
- incoming {
- Message msg1(data: int32)
- Message msg2(data: int32)
- Message msg3(data: int32)
- Message msg4(data: int32)
- Message msg5(data: int32)
- }
- }
-
+RoomModel ChoicePointTest { + + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_CPTest { + ActorRef ChoicePointTest_Top: CPTest_Top + + LogicalThread dflt_thread + } + + ActorClass CPTest_Top { + Structure { + ActorRef cp_tester: CPTester + ActorRef cp_user: CPUser + Binding cp_tester.TestPort1 and cp_user.TestPort1 + } + Behavior { } + } + + ActorClass CPUser { + Interface { + Port TestPort1: TestProtocol + } + Structure { + external Port TestPort1 + Attribute counter: int32 + Attribute caseId: int32 + Attribute resultlist[29]: int16 = "{1,2,3,4,5,6,3,4,5,7,8,10,11,12,9,16,3,4,5,17,8,13,15,11,19,12,9,18,20}" + + } + Behavior { + Operation CPUser() { + "caseId = etUnit_openAll(\"tmp\", \"ChoicePointTest\", \"org.eclipse.etrice.generator.common.tests.ChoicePointTest\", \"ChoicePointTest_case\");" + } + Operation ~CPUser() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition init: initial -> cp cp0 { + action { + "counter = 0;" + "EXPECT_ORDER_START(caseId,resultlist,29);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);" + } + } + Transition tr4: cp cp0 -> ENTRY3_EXIT4 { + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0);" + } + } + Transition EXPECT2: cp cp0 -> ENTRY3_EXIT4 { + cond { + "counter == 0" + } + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);" + } + } + Transition EXPECT5: ENTRY3_EXIT4 -> cp cp1 { + triggers { + <msg1: TestPort1> + } + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 5);" + } + } + Transition EXPECT6: cp cp1 -> ENTRY3_EXIT4 { + action { + "counter=3;" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 6);" + } + } + Transition EXPECT17: cp cp1 -> tp0 of ENTRY8_EXIT9 { + cond { + "counter == 4" + } + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 17);" + } + } + Transition EXPECT7: cp cp1 -> ENTRY8_EXIT9 { + cond { + "counter == 3" + } + action { + "counter = 1;" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 7);" + } + } + Transition EXPECT16: ENTRY8_EXIT9 -> ENTRY3_EXIT4 { + triggers { + <msg1: TestPort1 guard { + "counter==1" + }> + } + action { + "counter=4;" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 16);" + } + } + Transition EXPEXT19: my tp0 -> my tp0 { + triggers { + <msg1: TestPort1> + } + action { + "counter = 2;" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);" + } + } + Transition EXPECT18: ENTRY8_EXIT9 -> testOk { + triggers { + <msg1: TestPort1 guard { + "counter==2" + }> + } + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 18);" + } + } + Transition tr0: ENTRY3_EXIT4 -> cp cp1 { + triggers { + <msg2: TestPort1> + } + } + ChoicePoint cp0 + ChoicePoint cp1 + handler TransitionPoint tp0 + State ENTRY3_EXIT4 { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 3);" + } + exit { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 4);" + } + } + State ENTRY8_EXIT9 { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);" + } + exit { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);" + } + subgraph { + Transition EXPECT13: my tp0 -> cp cp0 { + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 13);" + } + } + Transition EXPECT14: cp cp0 -> ENTRY11_EXIT12 { + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 14);" + } + } + Transition EXPECT15: cp cp0 -> ENTRY11_EXIT12 { + cond { + "counter == 4" + } + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 15);" + } + } + Transition init: initial -> ENTRY11_EXIT12 { + action { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 10);" + } + } + ChoicePoint cp0 + EntryPoint tp0 + State ENTRY11_EXIT12 { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 11);" + } + exit { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 12);" + } + } + } + } + State testOk { + entry { + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 20);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass CPTester { + Interface { + conjugated Port TestPort1: TestProtocol + } + Structure { + external Port TestPort1 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { + action { + "TestPort1.msg1(1);" + "TestPort1.msg1(2);" + "TestPort1.msg1(3);" + "TestPort1.msg1(4);" + "TestPort1.msg1(5);" + "TestPort1.msg1(6);" + } + } + State state0 + } + } + } + + ProtocolClass TestProtocol { + incoming { + Message msg1(data: int32) + Message msg2(data: int32) + Message msg3(data: int32) + Message msg4(data: int32) + Message msg5(data: int32) + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/DataDrivenTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/DataDrivenTest.room index 54640f3f2..1793eec49 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/DataDrivenTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/DataDrivenTest.room @@ -1,115 +1,115 @@ -RoomModel DataDrivenTest {
-
- import room.basic.types.* from "Types.room"
- import room.basic.service.timing.* from "TimingService.room"
-
- SubSystemClass SubSystem_DataDriven {
- ActorRef appl: Appl
- ActorRef timing: ATimingService
- LayerConnection ref appl satisfied_by timing.timer
-
- // all unmapped instances are mapped to the default *physical* thread
- LogicalThread dflt_thread
- ActorInstanceMapping appl -> dflt_thread
- ActorInstanceMapping timing -> dflt_thread
- }
-
- ActorClass Appl {
- Structure {
- ActorRef srv: Tester
- ActorRef cli: Testee
- Binding srv.p0 and cli.p0
- }
- Behavior { }
- }
- async ActorClass Tester {
- Interface {
- conjugated Port p0: PC
- }
- Structure {
- external Port p0
- SAP timer: PTimer
-
- Attribute counter: int32
- }
- Behavior {
- StateMachine {
- Transition init: initial -> Idle {
- action {
- "timer.startTimer(100);"
- "counter = 0;"
- }
- }
- Transition tr0: Idle -> Idle {
- triggers {
- <timeout: timer>
- }
- }
- State Idle {
- entry {
- "p0.in1(counter++);"
- }
- }
- }
- }
- }
- async ActorClass Testee {
- Interface {
- Port p0: PC
- }
- Structure {
- external Port p0
- SAP timer: PTimer
-
- Attribute caseId: int32
- Attribute counter: int32
- Attribute resultlist[10]: int16 = "{1,2,3,4,5,6,7,8,9,10}"
- }
- Behavior {
- Operation Testee() {
- "caseId = etUnit_openAll(\"tmp\", \"DataDrivenTest\", \"org.eclipse.etrice.generator.common.tests.DataDrivenTest\", \"DataDrivenTest_case\");"
- }
- Operation ~Testee() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition init: initial -> Idle {
- action {
- "timer.startTimer(20);"
- "counter = 0;"
- }
- }
- Transition tr0: Idle -> Idle {
- guard {
- "p0.in1==counter"
- }
- action {
- "if (p0.in1==1)"
- " EXPECT_ORDER_START(caseId, resultlist, 10);"
- "if (p0.in1<10)"
- " EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", p0.in1);"
- "else if (counter==10) {"
- " EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 10);"
- " etUnit_testFinished(caseId);"
- "}"
- "++counter;"
- }
- }
- State Idle
- }
- }
- }
-
- datadriven ProtocolClass PC {
- incoming {
- Message in1(data: int32)
- Message in2(data: int8)
- Message in3(data: DC)
- }
- }
-
- DataClass DC {
- Attribute x: float32
- Attribute i: int32
- }
-}
+RoomModel DataDrivenTest { + + import room.basic.types.* from "Types.room" + import room.basic.service.timing.* from "TimingService.room" + + SubSystemClass SubSystem_DataDriven { + ActorRef appl: Appl + ActorRef timing: ATimingService + LayerConnection ref appl satisfied_by timing.timer + + // all unmapped instances are mapped to the default *physical* thread + LogicalThread dflt_thread + ActorInstanceMapping appl -> dflt_thread + ActorInstanceMapping timing -> dflt_thread + } + + ActorClass Appl { + Structure { + ActorRef srv: Tester + ActorRef cli: Testee + Binding srv.p0 and cli.p0 + } + Behavior { } + } + async ActorClass Tester { + Interface { + conjugated Port p0: PC + } + Structure { + external Port p0 + SAP timer: PTimer + + Attribute counter: int32 + } + Behavior { + StateMachine { + Transition init: initial -> Idle { + action { + "timer.startTimer(100);" + "counter = 0;" + } + } + Transition tr0: Idle -> Idle { + triggers { + <timeout: timer> + } + } + State Idle { + entry { + "p0.in1(counter++);" + } + } + } + } + } + async ActorClass Testee { + Interface { + Port p0: PC + } + Structure { + external Port p0 + SAP timer: PTimer + + Attribute caseId: int32 + Attribute counter: int32 + Attribute resultlist[10]: int16 = "{1,2,3,4,5,6,7,8,9,10}" + } + Behavior { + Operation Testee() { + "caseId = etUnit_openAll(\"tmp\", \"DataDrivenTest\", \"org.eclipse.etrice.generator.common.tests.DataDrivenTest\", \"DataDrivenTest_case\");" + } + Operation ~Testee() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition init: initial -> Idle { + action { + "timer.startTimer(20);" + "counter = 0;" + } + } + Transition tr0: Idle -> Idle { + guard { + "p0.in1==counter" + } + action { + "if (p0.in1==1)" + " EXPECT_ORDER_START(caseId, resultlist, 10);" + "if (p0.in1<10)" + " EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", p0.in1);" + "else if (counter==10) {" + " EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 10);" + " etUnit_testFinished(caseId);" + "}" + "++counter;" + } + } + State Idle + } + } + } + + datadriven ProtocolClass PC { + incoming { + Message in1(data: int32) + Message in2(data: int8) + Message in3(data: DC) + } + } + + DataClass DC { + Attribute x: float32 + Attribute i: int32 + } +} diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.config b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.config index 96332ddb0..9d244c619 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.config +++ b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.config @@ -1,117 +1,117 @@ -ConfigModel DynamicTestConfig {
- import DynamicConfigTest.* from "DynamicConfigTest_Java.room"
- SubSystemConfig System_DynConfigTest / subSystem {
- dynamic configuration {
- user import "" user constructor "ConfigSourceTestInstance.getInstance()" polling timer [ms] 200
- }
- }
-
- ActorClassConfig Testee_ac {
- Attr aBool = false
- Attr aInt8 = 0 {
- min = -1 max = 59
- }
- Attr aInt16 = 0 {
- min = -1 max = 59
- }
- Attr aInt32 = 0 {
- min = -1 max = 59
- }
- Attr aInt64 = 0 {
- min = -1 max = 59
- }
- Attr aFloat32 = 0. {
- min = -1. max = 59.
- }
- Attr aFloat64 = 0. {
- min = -1. max = 59.
- }
- Attr aChar = ''
- Attr aString = ""
- Attr aBool_array = false
- Attr aInt8_array = 0 {
- min = -1 max = 59
- }
- Attr aInt16_array = 0 {
- min = -1 max = 59
- }
- Attr aInt32_array = 0 {
- min = -1 max = 59
- }
- Attr aInt64_array = 0 {
- min = -1 max = 59
- }
- Attr aFloat32_array = 0.0 {
- min = -1.0 max = 59.0
- }
- Attr aFloat64_array = 0.0 {
- min = -1.0 max = 59.0
- }
- Attr aChar_array
- Attr dc {
- Attr nested {
- Attr aInt32 = 0 {
- min = -1 max = 59
- }
- }
- }
- }
-
- ActorInstanceConfig System_DynConfigTest / subSystem / testee {
- Attr aInt8 {
- dynamic configuration read
- }
- Attr aInt16 {
- dynamic configuration read
- }
- Attr aInt32 {
- dynamic configuration read
- }
- Attr aInt64 {
- dynamic configuration read
- }
- Attr aFloat32 {
- dynamic configuration read
- }
- Attr aFloat64 {
- dynamic configuration read
- }
- Attr aBool {
- dynamic configuration read
- }
- Attr aChar {
- dynamic configuration read
- }
- Attr aString {
- dynamic configuration read
- }
- Attr aInt8_array {
- dynamic configuration read
- }
- Attr aInt16_array {
- dynamic configuration read
- }
- Attr aInt32_array {
- dynamic configuration read
- }
- Attr aInt64_array {
- dynamic configuration read
- }
- Attr aFloat32_array {
- dynamic configuration read
- }
- Attr aFloat64_array {
- dynamic configuration read
- }
- Attr aBool_array {
- dynamic configuration read
- }
- Attr aChar_array {
- dynamic configuration read
- }
- Attr dc {
- dynamic configuration read
- }
- }
-
+ConfigModel DynamicTestConfig { + import DynamicConfigTest.* from "DynamicConfigTest_Java.room" + SubSystemConfig System_DynConfigTest / subSystem { + dynamic configuration { + user import "" user constructor "ConfigSourceTestInstance.getInstance()" polling timer [ms] 200 + } + } + + ActorClassConfig Testee_ac { + Attr aBool = false + Attr aInt8 = 0 { + min = -1 max = 59 + } + Attr aInt16 = 0 { + min = -1 max = 59 + } + Attr aInt32 = 0 { + min = -1 max = 59 + } + Attr aInt64 = 0 { + min = -1 max = 59 + } + Attr aFloat32 = 0. { + min = -1. max = 59. + } + Attr aFloat64 = 0. { + min = -1. max = 59. + } + Attr aChar = '' + Attr aString = "" + Attr aBool_array = false + Attr aInt8_array = 0 { + min = -1 max = 59 + } + Attr aInt16_array = 0 { + min = -1 max = 59 + } + Attr aInt32_array = 0 { + min = -1 max = 59 + } + Attr aInt64_array = 0 { + min = -1 max = 59 + } + Attr aFloat32_array = 0.0 { + min = -1.0 max = 59.0 + } + Attr aFloat64_array = 0.0 { + min = -1.0 max = 59.0 + } + Attr aChar_array + Attr dc { + Attr nested { + Attr aInt32 = 0 { + min = -1 max = 59 + } + } + } + } + + ActorInstanceConfig System_DynConfigTest / subSystem / testee { + Attr aInt8 { + dynamic configuration read + } + Attr aInt16 { + dynamic configuration read + } + Attr aInt32 { + dynamic configuration read + } + Attr aInt64 { + dynamic configuration read + } + Attr aFloat32 { + dynamic configuration read + } + Attr aFloat64 { + dynamic configuration read + } + Attr aBool { + dynamic configuration read + } + Attr aChar { + dynamic configuration read + } + Attr aString { + dynamic configuration read + } + Attr aInt8_array { + dynamic configuration read + } + Attr aInt16_array { + dynamic configuration read + } + Attr aInt32_array { + dynamic configuration read + } + Attr aInt64_array { + dynamic configuration read + } + Attr aFloat32_array { + dynamic configuration read + } + Attr aFloat64_array { + dynamic configuration read + } + Attr aBool_array { + dynamic configuration read + } + Attr aChar_array { + dynamic configuration read + } + Attr dc { + dynamic configuration read + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.room b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.room index ee8b8ff9f..6b1743cd9 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.room @@ -1,201 +1,201 @@ -RoomModel DynamicConfigTest {
-
- import room.basic.types.* from "Types.room"
-
- import room.basic.service.timing.* from "TimingService.room"
-
- SubSystemClass SubSystem_DynamicConfigTest {
- ActorRef testee: Testee_ac
- ActorRef timingService: ATimingService
- LayerConnection ref testee satisfied_by timingService.timer
-
- LogicalThread dflt_thread
- }
-
- ActorClass Testee_ac {
- Structure {
- usercode1 {
- "import java.util.HashMap;"
- "import java.util.Map;"
- "import org.eclipse.etrice.runtime.java.config.IConfigSource;"
- }
- SAP timer: PTimer
- Attribute caseId: int32
- Attribute testId: int32 = "1"
-
- // no dynConfig
- Attribute sString: string
-
- // dynConfig
- Attribute aInt8: int8
- Attribute aInt16: int16
- Attribute aInt32: int32
- Attribute aInt64: int64
- Attribute aBool: boolean
- Attribute aFloat32: float32
- Attribute aFloat64: float64
- Attribute aChar: char
- Attribute aString: string
- Attribute aInt8_array [ 2 ]: int8
- Attribute aInt16_array [ 2 ]: int16
- Attribute aInt32_array [ 2 ]: int32
- Attribute aInt64_array [ 2 ]: int64
- Attribute aBool_array [ 2 ]: boolean
- Attribute aFloat32_array [ 2 ]: float32
- Attribute aFloat64_array [ 2 ]: float64
- Attribute aChar_array [ 2 ]: char
- Attribute dc: Data_dc
- }
- Behavior {
- Operation Testee_ac() {
- "etUnit_open(\"tmp\", \"DynamicConfigTest\");"
- "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.DynamicConfigTest\");"
- "caseId = etUnit_openTestCase(\"DynamicConfigTest_case_Testee_ac\");"
- }
- Operation ~Testee_ac() {
- "etUnit_closeTestCase(caseId);"
- "etUnit_closeTestSuite();"
- "etUnit_close();"
- }
- StateMachine {
- Transition t0: initial -> ChangeConfigValid { }
- Transition t1: ChangeConfigValid -> Test {
- triggers {
- <timeout: timer>
- }
- action {
- "testId++;"
- }
- }
- Transition t2: Test -> ChangeConfigInvalid {
- triggers {
- <timeout: timer guard {
- "testId==2"
- }>
- }
- }
- Transition t3: ChangeConfigInvalid -> Test {
- triggers {
- <timeout: timer>
- }
- action {
- "testId++;"
- }
- }
- Transition t4: Test -> Done {
- triggers {
- <timeout: timer guard {
- "testId==4"
- }>
- }
- }
- Transition tr0: Test -> ChangeConfigValid {
- triggers {
- <timeout: timer guard {
- "testId==3"
- }>
- }
- }
- State ChangeConfigValid {
- entry {
- "IConfigSource source = ConfigSourceTestInstance.getInstance();"
- "String path = this.getInstancePath();"
- "Map<String, Object> testValues = new HashMap<String, Object>();"
- "testValues.put(path+\"/aInt8\", 50);"
- "testValues.put(path+\"/aInt16\", 51);"
- "testValues.put(path+\"/aInt32\", 52);"
- "testValues.put(path+\"/aInt64\", 53);"
- "testValues.put(path+\"/aFloat32\", 5.4f);"
- "testValues.put(path+\"/aFloat64\", 5.5);"
- "testValues.put(path+\"/aChar\", 'B');"
- "testValues.put(path+\"/aString\", \"Do-NOT-UPDATE-me\");"
- "testValues.put(path+\"/aBool\", true);"
- "testValues.put(path+\"/dc/nested/aInt32\", 56);"
- "testValues.put(path+\"/dc/aString\", \"Okay\");"
- "testValues.put(path+\"/aInt8_array\", new Byte[]{50,40});"
- "testValues.put(path+\"/aInt16_array\", new Short[]{51,41});"
- "testValues.put(path+\"/aInt32_array\", new Integer[]{52,42});"
- "testValues.put(path+\"/aInt64_array\", new Long[]{53L,43L});"
- "testValues.put(path+\"/aFloat32_array\", new Float[]{5.4f, 4.4f});"
- "testValues.put(path+\"/aFloat64_array\", new Double[]{5.5, 4.5});"
- "testValues.put(path+\"/aChar_array\", \"BB\");"
- "testValues.put(path+\"/aBool_array\", new Boolean[]{true, false});"
- "source.writeValues(testValues);"
- "timer.startTimer(400);"
- }
- }
- State ChangeConfigInvalid {
- entry {
- // do not update aString
- "getAStringLock().forbidUpdate();"
-
- "IConfigSource source = ConfigSourceTestInstance.getInstance();"
- "String path = this.getInstancePath();"
- "Map<String, Object> testValues = new HashMap<String, Object>();"
- "testValues.put(path+\"/aInt8\", 128);"
- "testValues.put(path+\"/aInt16\", 61);"
- "testValues.put(path+\"/aInt32\", -2);"
- "testValues.put(path+\"/aInt64\", Long.MAX_VALUE);"
- "testValues.put(path+\"/aFloat32\", -100f);"
- "testValues.put(path+\"/aFloat64\", 100d);"
- "testValues.put(path+\"/aChar\", \"string\");"
- "testValues.put(path+\"/aString\", \"VALID-String\");"
- "testValues.put(path+\"/aBool\", \"true\");"
- "testValues.put(path+\"/dc/aString\", 0.89898);"
- "testValues.put(path+\"/dc/nested/aInt32\", 62);"
- "testValues.put(path+\"/aInt8_array\", 128);"
- "testValues.put(path+\"/aInt16_array\", new Short[]{-1,-2});"
- "testValues.put(path+\"/aInt32_array\", new Integer[]{60,59});"
- "testValues.put(path+\"/aInt64_array\", new Long[]{60000L,60000L});"
- "testValues.put(path+\"/aFloat32_array\", new Float[]{0f, -2f});"
- "testValues.put(path+\"/aFloat64_array\", \"string\");"
- "testValues.put(path+\"/aChar_array\", \"BBB\");"
- "testValues.put(path+\"/aBool_array\", 500);"
- "source.writeValues(testValues);"
- "timer.startTimer(400);"
- }
- }
- State Test {
- entry {
- "EXPECT_EQUAL_INT8(caseId, \"1:Testee_ac\", (byte)50, getAInt8());"
- "EXPECT_EQUAL_INT16(caseId, \"2:Testee_ac\", (short)51, getAInt16());"
- "EXPECT_EQUAL_INT32(caseId, \"3:Testee_ac\", 52, getAInt32());"
- "EXPECT_TRUE(caseId, \"4:Testee_ac\", getAInt64() == 53L);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"5:Testee_ac\", 5.4f, getAFloat32(), 0.1f);"
- "EXPECT_TRUE(caseId, \"6:Testee_ac\", getAFloat64() == 5.5);"
- "EXPECT_TRUE(caseId, \"7:Testee_ac\", getAChar() == 'B');"
- "EXPECT_TRUE(caseId, \"8:Testee_ac\", \"Do-NOT-UPDATE-me\".equals(getAString()));"
- "EXPECT_TRUE(caseId, \"9:Testee_ac\", getABool() == true);"
- "EXPECT_TRUE(caseId, \"10:Testee_ac\", getAInt8_array()[0] == 50 && getAInt8_array()[1] == 40);"
- "EXPECT_TRUE(caseId, \"11:Testee_ac\", getAInt16_array()[0] == 51 && getAInt16_array()[1] == 41);"
- "EXPECT_TRUE(caseId, \"12:Testee_ac\", getAInt32_array()[0] == 52 && getAInt32_array()[1] == 42);"
- "EXPECT_TRUE(caseId, \"13:Testee_ac\", getAInt64_array()[0] == 53L && getAInt64_array()[1] == 43L);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"14.1:Testee_ac\", 5.4f, getAFloat32_array()[0], 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"14.2:Testee_ac\", 4.4f, getAFloat32_array()[1], 0.1f);"
- "EXPECT_TRUE(caseId, \"15:Testee_ac\", getAFloat64_array()[0] == 5.5 && getAFloat64_array()[1] == 4.5);"
- "EXPECT_TRUE(caseId, \"16:Testee_ac\", String.valueOf(getAChar_array()).equals(\"BB\"));"
- "EXPECT_TRUE(caseId, \"18:Testee_ac\", getABool_array()[0] == true && getABool_array()[1] == false);"
- "EXPECT_TRUE(caseId, \"19:Testee_ac\", \"Okay\".equals(getDc().getAString()));"
- "EXPECT_TRUE(caseId, \"20:Testee_ac\", getDc().getNested().getAInt32() == 56);"
- "timer.startTimer(1);"
- }
- }
- State Done {
- entry {
- "\tetUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- DataClass Data_dc {
- Attribute aString:string
- Attribute nested: Data_nested_dc
- }
-
- DataClass Data_nested_dc {
- Attribute aInt32: int32
- }
-
+RoomModel DynamicConfigTest { + + import room.basic.types.* from "Types.room" + + import room.basic.service.timing.* from "TimingService.room" + + SubSystemClass SubSystem_DynamicConfigTest { + ActorRef testee: Testee_ac + ActorRef timingService: ATimingService + LayerConnection ref testee satisfied_by timingService.timer + + LogicalThread dflt_thread + } + + ActorClass Testee_ac { + Structure { + usercode1 { + "import java.util.HashMap;" + "import java.util.Map;" + "import org.eclipse.etrice.runtime.java.config.IConfigSource;" + } + SAP timer: PTimer + Attribute caseId: int32 + Attribute testId: int32 = "1" + + // no dynConfig + Attribute sString: string + + // dynConfig + Attribute aInt8: int8 + Attribute aInt16: int16 + Attribute aInt32: int32 + Attribute aInt64: int64 + Attribute aBool: boolean + Attribute aFloat32: float32 + Attribute aFloat64: float64 + Attribute aChar: char + Attribute aString: string + Attribute aInt8_array [ 2 ]: int8 + Attribute aInt16_array [ 2 ]: int16 + Attribute aInt32_array [ 2 ]: int32 + Attribute aInt64_array [ 2 ]: int64 + Attribute aBool_array [ 2 ]: boolean + Attribute aFloat32_array [ 2 ]: float32 + Attribute aFloat64_array [ 2 ]: float64 + Attribute aChar_array [ 2 ]: char + Attribute dc: Data_dc + } + Behavior { + Operation Testee_ac() { + "etUnit_open(\"tmp\", \"DynamicConfigTest\");" + "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.DynamicConfigTest\");" + "caseId = etUnit_openTestCase(\"DynamicConfigTest_case_Testee_ac\");" + } + Operation ~Testee_ac() { + "etUnit_closeTestCase(caseId);" + "etUnit_closeTestSuite();" + "etUnit_close();" + } + StateMachine { + Transition t0: initial -> ChangeConfigValid { } + Transition t1: ChangeConfigValid -> Test { + triggers { + <timeout: timer> + } + action { + "testId++;" + } + } + Transition t2: Test -> ChangeConfigInvalid { + triggers { + <timeout: timer guard { + "testId==2" + }> + } + } + Transition t3: ChangeConfigInvalid -> Test { + triggers { + <timeout: timer> + } + action { + "testId++;" + } + } + Transition t4: Test -> Done { + triggers { + <timeout: timer guard { + "testId==4" + }> + } + } + Transition tr0: Test -> ChangeConfigValid { + triggers { + <timeout: timer guard { + "testId==3" + }> + } + } + State ChangeConfigValid { + entry { + "IConfigSource source = ConfigSourceTestInstance.getInstance();" + "String path = this.getInstancePath();" + "Map<String, Object> testValues = new HashMap<String, Object>();" + "testValues.put(path+\"/aInt8\", 50);" + "testValues.put(path+\"/aInt16\", 51);" + "testValues.put(path+\"/aInt32\", 52);" + "testValues.put(path+\"/aInt64\", 53);" + "testValues.put(path+\"/aFloat32\", 5.4f);" + "testValues.put(path+\"/aFloat64\", 5.5);" + "testValues.put(path+\"/aChar\", 'B');" + "testValues.put(path+\"/aString\", \"Do-NOT-UPDATE-me\");" + "testValues.put(path+\"/aBool\", true);" + "testValues.put(path+\"/dc/nested/aInt32\", 56);" + "testValues.put(path+\"/dc/aString\", \"Okay\");" + "testValues.put(path+\"/aInt8_array\", new Byte[]{50,40});" + "testValues.put(path+\"/aInt16_array\", new Short[]{51,41});" + "testValues.put(path+\"/aInt32_array\", new Integer[]{52,42});" + "testValues.put(path+\"/aInt64_array\", new Long[]{53L,43L});" + "testValues.put(path+\"/aFloat32_array\", new Float[]{5.4f, 4.4f});" + "testValues.put(path+\"/aFloat64_array\", new Double[]{5.5, 4.5});" + "testValues.put(path+\"/aChar_array\", \"BB\");" + "testValues.put(path+\"/aBool_array\", new Boolean[]{true, false});" + "source.writeValues(testValues);" + "timer.startTimer(400);" + } + } + State ChangeConfigInvalid { + entry { + // do not update aString + "getAStringLock().forbidUpdate();" + + "IConfigSource source = ConfigSourceTestInstance.getInstance();" + "String path = this.getInstancePath();" + "Map<String, Object> testValues = new HashMap<String, Object>();" + "testValues.put(path+\"/aInt8\", 128);" + "testValues.put(path+\"/aInt16\", 61);" + "testValues.put(path+\"/aInt32\", -2);" + "testValues.put(path+\"/aInt64\", Long.MAX_VALUE);" + "testValues.put(path+\"/aFloat32\", -100f);" + "testValues.put(path+\"/aFloat64\", 100d);" + "testValues.put(path+\"/aChar\", \"string\");" + "testValues.put(path+\"/aString\", \"VALID-String\");" + "testValues.put(path+\"/aBool\", \"true\");" + "testValues.put(path+\"/dc/aString\", 0.89898);" + "testValues.put(path+\"/dc/nested/aInt32\", 62);" + "testValues.put(path+\"/aInt8_array\", 128);" + "testValues.put(path+\"/aInt16_array\", new Short[]{-1,-2});" + "testValues.put(path+\"/aInt32_array\", new Integer[]{60,59});" + "testValues.put(path+\"/aInt64_array\", new Long[]{60000L,60000L});" + "testValues.put(path+\"/aFloat32_array\", new Float[]{0f, -2f});" + "testValues.put(path+\"/aFloat64_array\", \"string\");" + "testValues.put(path+\"/aChar_array\", \"BBB\");" + "testValues.put(path+\"/aBool_array\", 500);" + "source.writeValues(testValues);" + "timer.startTimer(400);" + } + } + State Test { + entry { + "EXPECT_EQUAL_INT8(caseId, \"1:Testee_ac\", (byte)50, getAInt8());" + "EXPECT_EQUAL_INT16(caseId, \"2:Testee_ac\", (short)51, getAInt16());" + "EXPECT_EQUAL_INT32(caseId, \"3:Testee_ac\", 52, getAInt32());" + "EXPECT_TRUE(caseId, \"4:Testee_ac\", getAInt64() == 53L);" + "EXPECT_EQUAL_FLOAT32(caseId, \"5:Testee_ac\", 5.4f, getAFloat32(), 0.1f);" + "EXPECT_TRUE(caseId, \"6:Testee_ac\", getAFloat64() == 5.5);" + "EXPECT_TRUE(caseId, \"7:Testee_ac\", getAChar() == 'B');" + "EXPECT_TRUE(caseId, \"8:Testee_ac\", \"Do-NOT-UPDATE-me\".equals(getAString()));" + "EXPECT_TRUE(caseId, \"9:Testee_ac\", getABool() == true);" + "EXPECT_TRUE(caseId, \"10:Testee_ac\", getAInt8_array()[0] == 50 && getAInt8_array()[1] == 40);" + "EXPECT_TRUE(caseId, \"11:Testee_ac\", getAInt16_array()[0] == 51 && getAInt16_array()[1] == 41);" + "EXPECT_TRUE(caseId, \"12:Testee_ac\", getAInt32_array()[0] == 52 && getAInt32_array()[1] == 42);" + "EXPECT_TRUE(caseId, \"13:Testee_ac\", getAInt64_array()[0] == 53L && getAInt64_array()[1] == 43L);" + "EXPECT_EQUAL_FLOAT32(caseId, \"14.1:Testee_ac\", 5.4f, getAFloat32_array()[0], 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"14.2:Testee_ac\", 4.4f, getAFloat32_array()[1], 0.1f);" + "EXPECT_TRUE(caseId, \"15:Testee_ac\", getAFloat64_array()[0] == 5.5 && getAFloat64_array()[1] == 4.5);" + "EXPECT_TRUE(caseId, \"16:Testee_ac\", String.valueOf(getAChar_array()).equals(\"BB\"));" + "EXPECT_TRUE(caseId, \"18:Testee_ac\", getABool_array()[0] == true && getABool_array()[1] == false);" + "EXPECT_TRUE(caseId, \"19:Testee_ac\", \"Okay\".equals(getDc().getAString()));" + "EXPECT_TRUE(caseId, \"20:Testee_ac\", getDc().getNested().getAInt32() == 56);" + "timer.startTimer(1);" + } + } + State Done { + entry { + "\tetUnit_testFinished(caseId);" + } + } + } + } + } + + DataClass Data_dc { + Attribute aString:string + Attribute nested: Data_nested_dc + } + + DataClass Data_nested_dc { + Attribute aInt32: int32 + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.rt-config b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.rt-config index dbf93da01..c27ad68cf 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.rt-config +++ b/tests/org.eclipse.etrice.generator.common.tests/models/DynamicConfigTest_Java.rt-config @@ -1,20 +1,20 @@ -/System_DynConfigTest/subSystem/testee/aBool=true
-/System_DynConfigTest/subSystem/testee/aBool_array={ true,false }
-/System_DynConfigTest/subSystem/testee/aChar="B"
-/System_DynConfigTest/subSystem/testee/aChar_array="BB"
-/System_DynConfigTest/subSystem/testee/aFloat32=5.4
-/System_DynConfigTest/subSystem/testee/aFloat32_array={ 5.4,4.4 }
-/System_DynConfigTest/subSystem/testee/aFloat64=5.5
-/System_DynConfigTest/subSystem/testee/aFloat64_array={ 5.5,4.5 }
-/System_DynConfigTest/subSystem/testee/aInt16=51
-/System_DynConfigTest/subSystem/testee/aInt16_array={ 51,41 }
-/System_DynConfigTest/subSystem/testee/aInt32=52
-/System_DynConfigTest/subSystem/testee/aInt32_array={ 52,42 }
-/System_DynConfigTest/subSystem/testee/aInt64=53
-/System_DynConfigTest/subSystem/testee/aInt64_array={ 53,43 }
-/System_DynConfigTest/subSystem/testee/aInt8=50
-/System_DynConfigTest/subSystem/testee/aInt8_array={ 50,40 }
-/System_DynConfigTest/subSystem/testee/aString="Do-NOT-UPDATE-me"
-/System_DynConfigTest/subSystem/testee/dc/aString="Okay"
-/System_DynConfigTest/subSystem/testee/dc/nested/aInt32=56
-polling_timer[ms]=200
+/System_DynConfigTest/subSystem/testee/aBool=true +/System_DynConfigTest/subSystem/testee/aBool_array={ true,false } +/System_DynConfigTest/subSystem/testee/aChar="B" +/System_DynConfigTest/subSystem/testee/aChar_array="BB" +/System_DynConfigTest/subSystem/testee/aFloat32=5.4 +/System_DynConfigTest/subSystem/testee/aFloat32_array={ 5.4,4.4 } +/System_DynConfigTest/subSystem/testee/aFloat64=5.5 +/System_DynConfigTest/subSystem/testee/aFloat64_array={ 5.5,4.5 } +/System_DynConfigTest/subSystem/testee/aInt16=51 +/System_DynConfigTest/subSystem/testee/aInt16_array={ 51,41 } +/System_DynConfigTest/subSystem/testee/aInt32=52 +/System_DynConfigTest/subSystem/testee/aInt32_array={ 52,42 } +/System_DynConfigTest/subSystem/testee/aInt64=53 +/System_DynConfigTest/subSystem/testee/aInt64_array={ 53,43 } +/System_DynConfigTest/subSystem/testee/aInt8=50 +/System_DynConfigTest/subSystem/testee/aInt8_array={ 50,40 } +/System_DynConfigTest/subSystem/testee/aString="Do-NOT-UPDATE-me" +/System_DynConfigTest/subSystem/testee/dc/aString="Okay" +/System_DynConfigTest/subSystem/testee/dc/nested/aInt32=56 +polling_timer[ms]=200 diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/HandlerTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/HandlerTest.room index 4eacc4ae0..1ab002071 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/HandlerTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/HandlerTest.room @@ -1,314 +1,314 @@ -RoomModel HandlerTest {
-
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_HandlerTest {
- ActorRef HandlerTest_Top: HandlerTest_Top
-
- LogicalThread dflt_thread
- }
-
- ActorClass HandlerTest_Top {
- Structure {
- ActorRef tester: Tester
- ActorRef handlerUser: HandlerUser
-
- Binding tester.TestPort1 and handlerUser.TestPort1
- }
- Behavior { }
- }
-
- ActorClass HandlerUser {
- Interface {
- Port TestPort1: TestProtocol
- }
- Structure {
- external Port TestPort1
- Attribute counter: int32
- Attribute caseId: int32
- Attribute resultlist[44]: int16 = "{13,15,16,22,23,11,24,17,14,12,13,16,23,70,24,17,14,114,113,111,11,70,24,17,120,16,23,24,17,121,18,19,25,18,20,19,21,18,19,25,18,19,14,117}"
- }
- Behavior {
- Operation HandlerUser() {
- "caseId = etUnit_openAll(\"tmp\", \"HandlerTest\", \"org.eclipse.etrice.generator.common.tests.HandlerTest\", \"HandlerTest_case\");"
- }
- Operation ~HandlerUser() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition tr0: my tp0 -> my tp0 {
- triggers {
- <msg1: TestPort1>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 11);"
- }
- }
- Transition tr1: my tp1 -> my tp1 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==3"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 12);"
- }
- }
- Transition init: initial -> tp2 of state0 {
- action {
- "EXPECT_ORDER_START(caseId, resultlist, 44);"
- }
- }
- Transition tr9: state0 -> cp cp1 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==4"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 114);"
- }
- }
- Transition tr5: my tp1 -> my tp1 {
- triggers {
- <msg2: TestPort1 guard {
- "p1==4"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 50);"
- }
- }
- Transition tr7: my tp0 -> state0 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==7"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 70);"
- }
- }
- Transition tr6: my tp0 -> my tp0 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==12"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 110);"
- }
- }
- Transition tr8: cp cp1 -> state1 {
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 113);"
- }
- }
- Transition tr10: cp cp1 -> state0 {
- cond {
- "p1!=4"
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 115);"
- }
- }
- Transition tr4: my tp1 -> testOk {
- triggers {
- <msg6: TestPort1>
- }
- action {
- "EXPECT_ORDER_END(caseId, \"<|MODEL_LOCATION|>\", 117);"
- }
- }
- ChoicePoint cp1
- handler TransitionPoint tp0
- TransitionPoint tp1
- State state0 {
- entry {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 13);"
- }
- exit {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 14);"
- }
- subgraph {
- Transition tr0: state1 -> state2 {
- triggers {
- <msg5: TestPort1>
- }
- }
- Transition tr1: my tp0 -> my tp0 {
- triggers {
- <msg3: TestPort1>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 20);"
- }
- }
- Transition tr2: my tp1 -> my tp1 {
- triggers {
- <msg4: TestPort1>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 21);"
- }
- }
- Transition tr3: state2 -> state2 {
- triggers {
- <msg1: TestPort1>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 25);"
- }
- }
- Transition tr4: my tp2 -> tp0 of state1 {
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 15);"
- }
- }
- Transition tr5: my tp0 -> my tp0 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==5"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 52);"
- }
- }
- Transition init: initial -> state2 {
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 53);"
- }
- }
- Transition tr6: state1 -> state1 {
- triggers {
- <msg1: TestPort1 guard {
- "p1==8"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 54);"
- }
- }
- Transition tr7: my tp1 -> state1 {
- triggers {
- <msg2: TestPort1 guard {
- "p1==5"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 120);"
- }
- }
- Transition tr8: my tp1 -> state2 {
- triggers {
- <msg2: TestPort1 guard {
- "p1==6"
- }>
- }
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 121);"
- }
- }
- handler TransitionPoint tp0
- TransitionPoint tp1
- EntryPoint tp2
- State state1 {
- entry {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 16);"
- }
- exit {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 17);"
- }
- subgraph {
- Transition tr0: my tp0 -> state7 {
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 22);"
- }
- }
- Transition init: initial -> state7 {
- action {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 121);"
- }
- }
- EntryPoint tp0
- State state7 {
- entry {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 23);"
- }
- exit {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 24);"
- }
- }
- }
- }
- State state2 {
- entry {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 18);"
- }
- exit {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 19);"
- }
- }
- }
- }
- State testOk {
- entry {
- "etUnit_testFinished(caseId);"
- }
- }
- State state1 {
- entry {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 111);"
- }
- exit {
- "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 112);"
- }
- }
- }
- }
- }
-
- ActorClass Tester {
- Interface {
- conjugated Port TestPort1: TestProtocol
- }
- Structure {
- external Port TestPort1
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "TestPort1.msg1(2);"
- "TestPort1.msg1(3);"
- "TestPort1.msg1(7);"
- "TestPort1.msg1(4);"
- "TestPort1.msg1(5);"
- "TestPort1.msg1(7);"
- "TestPort1.msg2(5);"
- "TestPort1.msg2(6);"
- "TestPort1.msg1(5);"
- "TestPort1.msg3();"
- "TestPort1.msg4();"
- "TestPort1.msg1(8);"
- "TestPort1.msg6(12);"
- }
- }
- State state0
- }
- }
- }
-
- ProtocolClass TestProtocol {
- incoming {
- Message msg1(p1:int32)
- Message msg2(p1:int32)
- Message msg3()
- Message msg4()
- Message msg5(p1:int32)
- Message msg6(p1:int32)
- }
- }
-
+RoomModel HandlerTest { + + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_HandlerTest { + ActorRef HandlerTest_Top: HandlerTest_Top + + LogicalThread dflt_thread + } + + ActorClass HandlerTest_Top { + Structure { + ActorRef tester: Tester + ActorRef handlerUser: HandlerUser + + Binding tester.TestPort1 and handlerUser.TestPort1 + } + Behavior { } + } + + ActorClass HandlerUser { + Interface { + Port TestPort1: TestProtocol + } + Structure { + external Port TestPort1 + Attribute counter: int32 + Attribute caseId: int32 + Attribute resultlist[44]: int16 = "{13,15,16,22,23,11,24,17,14,12,13,16,23,70,24,17,14,114,113,111,11,70,24,17,120,16,23,24,17,121,18,19,25,18,20,19,21,18,19,25,18,19,14,117}" + } + Behavior { + Operation HandlerUser() { + "caseId = etUnit_openAll(\"tmp\", \"HandlerTest\", \"org.eclipse.etrice.generator.common.tests.HandlerTest\", \"HandlerTest_case\");" + } + Operation ~HandlerUser() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition tr0: my tp0 -> my tp0 { + triggers { + <msg1: TestPort1> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 11);" + } + } + Transition tr1: my tp1 -> my tp1 { + triggers { + <msg1: TestPort1 guard { + "p1==3" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 12);" + } + } + Transition init: initial -> tp2 of state0 { + action { + "EXPECT_ORDER_START(caseId, resultlist, 44);" + } + } + Transition tr9: state0 -> cp cp1 { + triggers { + <msg1: TestPort1 guard { + "p1==4" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 114);" + } + } + Transition tr5: my tp1 -> my tp1 { + triggers { + <msg2: TestPort1 guard { + "p1==4" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 50);" + } + } + Transition tr7: my tp0 -> state0 { + triggers { + <msg1: TestPort1 guard { + "p1==7" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 70);" + } + } + Transition tr6: my tp0 -> my tp0 { + triggers { + <msg1: TestPort1 guard { + "p1==12" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 110);" + } + } + Transition tr8: cp cp1 -> state1 { + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 113);" + } + } + Transition tr10: cp cp1 -> state0 { + cond { + "p1!=4" + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 115);" + } + } + Transition tr4: my tp1 -> testOk { + triggers { + <msg6: TestPort1> + } + action { + "EXPECT_ORDER_END(caseId, \"<|MODEL_LOCATION|>\", 117);" + } + } + ChoicePoint cp1 + handler TransitionPoint tp0 + TransitionPoint tp1 + State state0 { + entry { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 13);" + } + exit { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 14);" + } + subgraph { + Transition tr0: state1 -> state2 { + triggers { + <msg5: TestPort1> + } + } + Transition tr1: my tp0 -> my tp0 { + triggers { + <msg3: TestPort1> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 20);" + } + } + Transition tr2: my tp1 -> my tp1 { + triggers { + <msg4: TestPort1> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 21);" + } + } + Transition tr3: state2 -> state2 { + triggers { + <msg1: TestPort1> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 25);" + } + } + Transition tr4: my tp2 -> tp0 of state1 { + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 15);" + } + } + Transition tr5: my tp0 -> my tp0 { + triggers { + <msg1: TestPort1 guard { + "p1==5" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 52);" + } + } + Transition init: initial -> state2 { + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 53);" + } + } + Transition tr6: state1 -> state1 { + triggers { + <msg1: TestPort1 guard { + "p1==8" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 54);" + } + } + Transition tr7: my tp1 -> state1 { + triggers { + <msg2: TestPort1 guard { + "p1==5" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 120);" + } + } + Transition tr8: my tp1 -> state2 { + triggers { + <msg2: TestPort1 guard { + "p1==6" + }> + } + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 121);" + } + } + handler TransitionPoint tp0 + TransitionPoint tp1 + EntryPoint tp2 + State state1 { + entry { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 16);" + } + exit { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 17);" + } + subgraph { + Transition tr0: my tp0 -> state7 { + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 22);" + } + } + Transition init: initial -> state7 { + action { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 121);" + } + } + EntryPoint tp0 + State state7 { + entry { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 23);" + } + exit { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 24);" + } + } + } + } + State state2 { + entry { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 18);" + } + exit { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 19);" + } + } + } + } + State testOk { + entry { + "etUnit_testFinished(caseId);" + } + } + State state1 { + entry { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 111);" + } + exit { + "EXPECT_ORDER(caseId, \"<|MODEL_LOCATION|>\", 112);" + } + } + } + } + } + + ActorClass Tester { + Interface { + conjugated Port TestPort1: TestProtocol + } + Structure { + external Port TestPort1 + } + Behavior { + StateMachine { + Transition init: initial -> state0 { + action { + "TestPort1.msg1(2);" + "TestPort1.msg1(3);" + "TestPort1.msg1(7);" + "TestPort1.msg1(4);" + "TestPort1.msg1(5);" + "TestPort1.msg1(7);" + "TestPort1.msg2(5);" + "TestPort1.msg2(6);" + "TestPort1.msg1(5);" + "TestPort1.msg3();" + "TestPort1.msg4();" + "TestPort1.msg1(8);" + "TestPort1.msg6(12);" + } + } + State state0 + } + } + } + + ProtocolClass TestProtocol { + incoming { + Message msg1(p1:int32) + Message msg2(p1:int32) + Message msg3() + Message msg4() + Message msg5(p1:int32) + Message msg6(p1:int32) + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room index 03ae75eb6..c61c61107 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room @@ -1,151 +1,151 @@ -RoomModel PingPongThreadTestReplPort {
-
- import room.basic.service.timing.* from "TimingService.room"
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_PingPongReplPort {
- ActorRef application: PingPongTop
- ActorRef services: ATimingService
- LayerConnection ref application satisfied_by services.timer
-
- LogicalThread mrPingThread
- LogicalThread mrPong1Thread
- LogicalThread mrPong2Thread
- LogicalThread mrPong3Thread
- ActorInstanceMapping application/MrPing -> mrPingThread
- ActorInstanceMapping application/MrPong1 -> mrPong1Thread
- ActorInstanceMapping application/MrPong2 -> mrPong2Thread
- ActorInstanceMapping application/MrPong3 -> mrPong3Thread
- }
-
- ActorClass PingPongTop {
- Structure {
- ActorRef MrPing: MrPingActor
- ActorRef MrPong1: MrPongActor1
- ActorRef MrPong2: MrPongActor1
- ActorRef MrPong3: MrPongActor1
- Binding MrPing.PingPongPort and MrPong1.PingPongPort
- Binding MrPing.PingPongPort and MrPong2.PingPongPort
- Binding MrPing.PingPongPort3 and MrPong3.PingPongPort
- }
- Behavior { }
- }
-
- ActorClass MrPingActor {
- Interface {
- conjugated Port PingPongPort [*]: PingPongProtocol
- conjugated Port PingPongPort3 : PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- external Port PingPongPort3
- SAP timer: PTimer
- Attribute count : int32
- Attribute pongCount : int32
- Attribute caseId: int32
- Attribute resultlist[23]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}"
-
- }
- Behavior {
- Operation MrPingActor() {
- "caseId = etUnit_openAll(\"tmp\", \"PingPongThreadTestReplPort\", \"org.eclipse.etrice.generator.common.tests.PingPongThreadTestReplPort\", \"PingPongThreadTestReplPort_case\");"
- }
- Operation ~MrPingActor() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition tr0: initial -> waitForTimer {
- action {
- "count = 0;"
- "timer.startTimeout(50);"
- "EXPECT_ORDER_START(caseId,resultlist,23);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);"
- }
- }
- Transition tr1: waitForTimer -> waitForPong {
- triggers {
- <timeout: timer>
- }
- action {
- "PingPongPort.get(0).ping();"
- "PingPongPort.get(1).ping();"
- "pongCount = 0;"
- }
- }
- Transition tr3: waitForPong -> cp cp0 {
- triggers {
- <pong: PingPongPort>
- }
- action {
- "pongCount++;"
- }
- }
- Transition tr5: cp cp0 -> cp cp1 {
- action {
- "System.out.println(count);"
- }
- }
- Transition tr6: cp cp0 -> waitForPong {
- cond {
- "pongCount < 2"
- }
- }
- Transition tr2: cp cp1 -> test_finished
- Transition tr4: cp cp1 -> waitForTimer {
- cond {
- "count<20"
- }
- action {
- "timer.startTimeout(5);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", count+2);"
- "count++;"
- }
- }
- ChoicePoint cp0
- ChoicePoint cp1
- State waitForTimer
- State waitForPong
- State test_finished {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);"
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass MrPongActor1 {
- Interface {
- Port PingPongPort: PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- }
- Behavior {
- StateMachine {
- Transition tr0: initial -> waitForPing { }
- Transition myTrigger: waitForPing -> waitForPing {
- triggers {
- <ping: PingPongPort>
- }
- action {
- "PingPongPort.pong();"
- }
- }
- State waitForPing
- }
- }
- }
-
- ProtocolClass PingPongProtocol {
- incoming {
- Message ping()
- }
- outgoing {
- Message pong()
- }
- }
-
+RoomModel PingPongThreadTestReplPort { + + import room.basic.service.timing.* from "TimingService.room" + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_PingPongReplPort { + ActorRef application: PingPongTop + ActorRef services: ATimingService + LayerConnection ref application satisfied_by services.timer + + LogicalThread mrPingThread + LogicalThread mrPong1Thread + LogicalThread mrPong2Thread + LogicalThread mrPong3Thread + ActorInstanceMapping application/MrPing -> mrPingThread + ActorInstanceMapping application/MrPong1 -> mrPong1Thread + ActorInstanceMapping application/MrPong2 -> mrPong2Thread + ActorInstanceMapping application/MrPong3 -> mrPong3Thread + } + + ActorClass PingPongTop { + Structure { + ActorRef MrPing: MrPingActor + ActorRef MrPong1: MrPongActor1 + ActorRef MrPong2: MrPongActor1 + ActorRef MrPong3: MrPongActor1 + Binding MrPing.PingPongPort and MrPong1.PingPongPort + Binding MrPing.PingPongPort and MrPong2.PingPongPort + Binding MrPing.PingPongPort3 and MrPong3.PingPongPort + } + Behavior { } + } + + ActorClass MrPingActor { + Interface { + conjugated Port PingPongPort [*]: PingPongProtocol + conjugated Port PingPongPort3 : PingPongProtocol + } + Structure { + external Port PingPongPort + external Port PingPongPort3 + SAP timer: PTimer + Attribute count : int32 + Attribute pongCount : int32 + Attribute caseId: int32 + Attribute resultlist[23]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}" + + } + Behavior { + Operation MrPingActor() { + "caseId = etUnit_openAll(\"tmp\", \"PingPongThreadTestReplPort\", \"org.eclipse.etrice.generator.common.tests.PingPongThreadTestReplPort\", \"PingPongThreadTestReplPort_case\");" + } + Operation ~MrPingActor() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition tr0: initial -> waitForTimer { + action { + "count = 0;" + "timer.startTimeout(50);" + "EXPECT_ORDER_START(caseId,resultlist,23);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);" + } + } + Transition tr1: waitForTimer -> waitForPong { + triggers { + <timeout: timer> + } + action { + "PingPongPort.get(0).ping();" + "PingPongPort.get(1).ping();" + "pongCount = 0;" + } + } + Transition tr3: waitForPong -> cp cp0 { + triggers { + <pong: PingPongPort> + } + action { + "pongCount++;" + } + } + Transition tr5: cp cp0 -> cp cp1 { + action { + "System.out.println(count);" + } + } + Transition tr6: cp cp0 -> waitForPong { + cond { + "pongCount < 2" + } + } + Transition tr2: cp cp1 -> test_finished + Transition tr4: cp cp1 -> waitForTimer { + cond { + "count<20" + } + action { + "timer.startTimeout(5);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", count+2);" + "count++;" + } + } + ChoicePoint cp0 + ChoicePoint cp1 + State waitForTimer + State waitForPong + State test_finished { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);" + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass MrPongActor1 { + Interface { + Port PingPongPort: PingPongProtocol + } + Structure { + external Port PingPongPort + } + Behavior { + StateMachine { + Transition tr0: initial -> waitForPing { } + Transition myTrigger: waitForPing -> waitForPing { + triggers { + <ping: PingPongPort> + } + action { + "PingPongPort.pong();" + } + } + State waitForPing + } + } + } + + ProtocolClass PingPongProtocol { + incoming { + Message ping() + } + outgoing { + Message pong() + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room index f492bf3df..79d5bfd56 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room @@ -1,156 +1,156 @@ -RoomModel PingPongThreadTest {
-
- import room.basic.service.timing.* from "TimingService.room"
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_PingPong {
- ActorRef application: PingPongTop
- ActorRef services: ATimingService
- LayerConnection ref application satisfied_by services.timer
-
- LogicalThread mrPingThread
- LogicalThread mrPong1Thread
- LogicalThread mrPong2Thread
- LogicalThread mrPong3Thread
- ActorInstanceMapping application/MrPing -> mrPingThread
- ActorInstanceMapping application/MrPong1 -> mrPong1Thread
- ActorInstanceMapping application/MrPong2 -> mrPong2Thread
- ActorInstanceMapping application/MrPong3 -> mrPong3Thread
- }
-
- ActorClass PingPongTop {
- Structure {
- ActorRef MrPing: MrPingActor
- ActorRef MrPong1: MrPongActor1
- ActorRef MrPong2: MrPongActor1
- ActorRef MrPong3: MrPongActor1
- Binding MrPing.PingPongPort and MrPong1.PingPongPort
- Binding MrPing.PingPongPort2 and MrPong2.PingPongPort
- Binding MrPing.PingPongPort3 and MrPong3.PingPongPort
- }
- Behavior { }
- }
-
- ActorClass MrPingActor {
- Interface {
- conjugated Port PingPongPort : PingPongProtocol
- conjugated Port PingPongPort2 : PingPongProtocol
- conjugated Port PingPongPort3 : PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- external Port PingPongPort2
- external Port PingPongPort3
- SAP timer: PTimer
- Attribute count : int32
- Attribute pongCount : int32
- Attribute caseId: int32
- Attribute resultlist[23]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}"
-
- }
- Behavior {
- Operation MrPingActor() {
- "caseId = etUnit_openAll(\"tmp\", \"PingPongThreadTest\", \"org.eclipse.etrice.generator.common.tests.PingPongThreadTest\", \"PingPongThreadTest_case\");"
- }
- Operation ~MrPingActor() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition tr0: initial -> waitForTimer {
- action {
- "count = 0;"
- "timer.startTimeout(10);"
- "EXPECT_ORDER_START(caseId,resultlist,23);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);"
-
- }
- }
- Transition tr1: waitForTimer -> waitForPong {
- triggers {
- <timeout: timer>
- }
- action {
- "PingPongPort.ping();"
- "PingPongPort2.ping();"
- "pongCount = 0;"
- }
- }
- Transition tr3: waitForPong -> cp cp0 {
- triggers {
- <pong: PingPongPort2>
- or
- <pong: PingPongPort>
- }
- action {
- "pongCount++;"
- }
- }
- Transition tr5: cp cp0 -> cp cp1 {
- action {
- "System.out.println(count);"
- }
- }
- Transition tr6: cp cp0 -> waitForPong {
- cond {
- "pongCount < 2"
- }
- }
- Transition tr2: cp cp1 -> test_finished
- Transition tr4: cp cp1 -> waitForTimer {
- cond {
- "count<20"
- }
- action {
- "timer.startTimeout(5);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", count+2);"
- "count++;"
- }
- }
- ChoicePoint cp0
- ChoicePoint cp1
- State waitForTimer
- State waitForPong
- State test_finished {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);"
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass MrPongActor1 {
- Interface {
- Port PingPongPort: PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- }
- Behavior {
- StateMachine {
- Transition tr0: initial -> waitForPing { }
- Transition myTrigger: waitForPing -> waitForPing {
- triggers {
- <ping: PingPongPort>
- }
- action {
- "PingPongPort.pong();"
- }
- }
- State waitForPing
- }
- }
- }
-
- ProtocolClass PingPongProtocol {
- incoming {
- Message ping()
- }
- outgoing {
- Message pong()
- }
- }
-
-}
+RoomModel PingPongThreadTest { + + import room.basic.service.timing.* from "TimingService.room" + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_PingPong { + ActorRef application: PingPongTop + ActorRef services: ATimingService + LayerConnection ref application satisfied_by services.timer + + LogicalThread mrPingThread + LogicalThread mrPong1Thread + LogicalThread mrPong2Thread + LogicalThread mrPong3Thread + ActorInstanceMapping application/MrPing -> mrPingThread + ActorInstanceMapping application/MrPong1 -> mrPong1Thread + ActorInstanceMapping application/MrPong2 -> mrPong2Thread + ActorInstanceMapping application/MrPong3 -> mrPong3Thread + } + + ActorClass PingPongTop { + Structure { + ActorRef MrPing: MrPingActor + ActorRef MrPong1: MrPongActor1 + ActorRef MrPong2: MrPongActor1 + ActorRef MrPong3: MrPongActor1 + Binding MrPing.PingPongPort and MrPong1.PingPongPort + Binding MrPing.PingPongPort2 and MrPong2.PingPongPort + Binding MrPing.PingPongPort3 and MrPong3.PingPongPort + } + Behavior { } + } + + ActorClass MrPingActor { + Interface { + conjugated Port PingPongPort : PingPongProtocol + conjugated Port PingPongPort2 : PingPongProtocol + conjugated Port PingPongPort3 : PingPongProtocol + } + Structure { + external Port PingPongPort + external Port PingPongPort2 + external Port PingPongPort3 + SAP timer: PTimer + Attribute count : int32 + Attribute pongCount : int32 + Attribute caseId: int32 + Attribute resultlist[23]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}" + + } + Behavior { + Operation MrPingActor() { + "caseId = etUnit_openAll(\"tmp\", \"PingPongThreadTest\", \"org.eclipse.etrice.generator.common.tests.PingPongThreadTest\", \"PingPongThreadTest_case\");" + } + Operation ~MrPingActor() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition tr0: initial -> waitForTimer { + action { + "count = 0;" + "timer.startTimeout(10);" + "EXPECT_ORDER_START(caseId,resultlist,23);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);" + + } + } + Transition tr1: waitForTimer -> waitForPong { + triggers { + <timeout: timer> + } + action { + "PingPongPort.ping();" + "PingPongPort2.ping();" + "pongCount = 0;" + } + } + Transition tr3: waitForPong -> cp cp0 { + triggers { + <pong: PingPongPort2> + or + <pong: PingPongPort> + } + action { + "pongCount++;" + } + } + Transition tr5: cp cp0 -> cp cp1 { + action { + "System.out.println(count);" + } + } + Transition tr6: cp cp0 -> waitForPong { + cond { + "pongCount < 2" + } + } + Transition tr2: cp cp1 -> test_finished + Transition tr4: cp cp1 -> waitForTimer { + cond { + "count<20" + } + action { + "timer.startTimeout(5);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", count+2);" + "count++;" + } + } + ChoicePoint cp0 + ChoicePoint cp1 + State waitForTimer + State waitForPong + State test_finished { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);" + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass MrPongActor1 { + Interface { + Port PingPongPort: PingPongProtocol + } + Structure { + external Port PingPongPort + } + Behavior { + StateMachine { + Transition tr0: initial -> waitForPing { } + Transition myTrigger: waitForPing -> waitForPing { + triggers { + <ping: PingPongPort> + } + action { + "PingPongPort.pong();" + } + } + State waitForPing + } + } + } + + ProtocolClass PingPongProtocol { + incoming { + Message ping() + } + outgoing { + Message pong() + } + } + +} diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room b/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room index 717e2a4af..e0176bf1a 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room @@ -1,590 +1,590 @@ -RoomModel SendingDataTestC {
-
- import room.basic.types.* from "Types.room"
- import room.basic.language.* from "Language.room"
-
- SubSystemClass SubSystem_SendingData {
- ActorRef top: SendingDataTop
-
- LogicalThread dflt_thread
- }
-
- ActorClass SendingDataTop {
- Structure {
- ActorRef mrPing: MrPing
- ActorRef mrPong: MrPong
- Binding mrPong.PingPongPort and mrPing.PingPongPort
- }
- Behavior { }
- }
-
- ActorClass MrPong {
- Interface {
- Port PingPongPort: PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- }
- Behavior {
- StateMachine {
- Transition tr0: reply -> reply {
- triggers {
- <pingInt16: PingPongPort>
- }
- action {
- "PingPongPort.pongInt16(d);"
- }
- }
- Transition tr1: reply -> reply {
- triggers {
- <pingInt8: PingPongPort>
- }
- action {
- "PingPongPort.pongInt8(d);"
- }
- }
- Transition init: initial -> reply { }
- Transition tr2: reply -> reply {
- triggers {
- <pingInt32: PingPongPort>
- }
- action {
- "PingPongPort.pongInt32(d);"
- }
- }
- Transition tr3: reply -> reply {
- triggers {
- <pingFloat32: PingPongPort>
- }
- action {
- "PingPongPort.pongFloat32(d);"
- }
- }
- Transition tr4: reply -> reply {
- triggers {
- <pingFloat64: PingPongPort>
- }
- action {
- "PingPongPort.pongFloat64(d);"
- }
- }
- Transition tr7: reply -> cp cp0 {
- triggers {
- <pingInt32Ref: PingPongPort guard {
- "(*d)!=0"
- }>
- }
- }
- Transition tr8: cp cp0 -> reply {
- action {
- "PingPongPort.pongInt32((*d)+10);"
- }
- }
- Transition tr6: cp cp0 -> reply {
- cond {
- "(*d)!=5"
- }
- action {
- "PingPongPort.pongInt32(*d);"
- }
- }
- Transition tr9: reply -> reply {
- triggers {
- <pingComplex: PingPongPort>
- }
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr11: reply -> reply {
- triggers {
- <pingComplexRef: PingPongPort>
- }
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr5: reply -> reply {
- triggers {
- <pingInt64: PingPongPort>
- }
- action {
- "PingPongPort.pongInt64(d);"
- }
- }
- Transition tr10: reply -> reply {
- triggers {
- <pingInt16Ref: PingPongPort>
- }
- action {
- "PingPongPort.pongInt16(*d);"
- }
- }
- Transition tr12: reply -> cp cp1 {
- triggers {
- <pingComplexRef: PingPongPort guard {
- "d->i8ValPPD == 5"
- }>
- }
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr13: cp cp1 -> reply {
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr14: cp cp1 -> reply {
- cond {
- "d->i8ValPPD==7"
- }
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr15: reply -> reply {
- triggers {
- <pingComplexDerived: PingPongPort>
- }
- action {
- "PingPongPort.pongComplexDerived(d);"
- }
- }
- ChoicePoint cp0
- ChoicePoint cp1
- State reply
- }
- }
- }
-
- ActorClass MrPing {
- Interface {
- conjugated Port PingPongPort: PingPongProtocol
- }
- Structure {
- external Port PingPongPort
- Attribute i8Val: int8="5"
- Attribute i16Val:int16="19"
- Attribute i32Val: int32 = "4711"
- Attribute i64Val: int64 = "11470815"
- Attribute i32Array [ 10 ]: int32="{0,1,2,3,4,5,6,7,8,9}"
- Attribute f32Val: float32="3.14f"
- Attribute f64Val: float64="7.987654321"
- Attribute data: PingPongData
- Attribute dataD: PingPongDataDerived
- Attribute counter:int32
- Attribute caseId: int32
- Attribute lang: languageIndicator
- Attribute resultlist [ 23 ]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}"
- }
- Behavior {
- StateMachine {
- Transition init: initial -> tp0 of state0 {
- action {
- "caseId = etUnit_openAll(\"tmp\", \"SendingDataTestC\", \"org.eclipse.etrice.generator.common.tests.SendingDataTest\", \"SendingDataTest_case\");"
- "EXPECT_ORDER_START(caseId,resultlist,23);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);"
- "/* send the default values */"
- ""
- "PingPongPort.pingInt8(i8Val);"
- "PingPongPort.pingInt16(i16Val);"
- "PingPongPort.pingInt32(i32Val);"
- "PingPongPort.pingInt64(i64Val);"
- "PingPongPort.pingFloat32(f32Val);"
- "PingPongPort.pingFloat64(f64Val);"
- "PingPongPort.pingInt16Ref(&i16Val);"
- "PingPongPort.pingInt32Ref(&i32Val);"
- "i8Val++;"
- "i16Val++;"
- "i32Val++;"
- "i64Val++;"
- "f32Val+=10.1;"
- "f64Val+=20.2;"
- "PingPongPort.pingInt8(i8Val);"
- "PingPongPort.pingInt16(i16Val);"
- "PingPongPort.pingInt32(i32Val);"
- "PingPongPort.pingInt64(i64Val);"
- "PingPongPort.pingFloat32(f32Val);"
- "PingPongPort.pingFloat64(f64Val);"
- "PingPongPort.pingInt16Ref(&i16Val);"
- "PingPongPort.pingInt32Ref(&i32Val);"
- }
- }
- Transition tr0: tp1 of state0 -> tp0 of state1
- Transition tr1: tp1 of state1 -> test_finished
- State state0 {
- subgraph {
- Transition tr0: my tp0 -> receiveFirst7 {
- action {
- "counter=0;"
- }
- }
- Transition tr1: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongInt8: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==5){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr2: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongInt16: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==19){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 3);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr3: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongInt32: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==4711){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 4);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr4: receiveFirst7 -> receiveSecond7 {
- triggers {
- <pongInt32: PingPongPort guard {
- "counter==7"
- }>
- }
- action {
- "counter=0;"
- "if (lang == 1){"
- "/* Java cannot send references of primitive types */"
- "\tif (d==4711){\t"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);"
- "\t}else{"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "\t}"
- "} "
- "if (lang == 2){"
- "/* C */"
- "\tif (d==4712){\t"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);"
- "\t}else{"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "\t}"
- "}"
- }
- }
- Transition tr6: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongInt64: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==11470815){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 5);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr5: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongFloat32: PingPongPort>
- }
- action {
- "counter++;"
- "if ((d>3)&&(d<4)){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 6);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr7: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongFloat64: PingPongPort>
- }
- action {
- "counter++;"
- "if ((d>7)&&(d<8)){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 7);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr8: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongInt8: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==6){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 10);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr9: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongInt16: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==20){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 11);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr10: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongInt32: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==4712){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 12);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr11: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongInt64: PingPongPort>
- }
- action {
- "counter++;"
- "if (d==11470816){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 13);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr12: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongFloat32: PingPongPort>
- }
- action {
- "counter++;"
- "if ((d>13)&&(d<14)){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 14);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr13: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongFloat64: PingPongPort>
- }
- action {
- "counter++;"
- "if ((d>28)&&(d<29)){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 15);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr14: receiveSecond7 -> my tp1 {
- triggers {
- <pongInt32: PingPongPort guard {
- "counter==7"
- }>
- }
- action {
- "if (d==4712){\t"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 17);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr15: receiveFirst7 -> receiveFirst7 {
- triggers {
- <pongInt16: PingPongPort guard {
- "counter==6"
- }>
- }
- action {
- "counter++;"
- "if (lang == 1){"
- "/* Java cannot send references of primitive types */"
- "\tif (d==19){\t"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);"
- "\t}else{"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "\t}"
- "} "
- "if (lang == 2){"
- "/* C */"
- "\tif (d==20){\t"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);"
- "\t}else{"
- "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "\t}"
- "}"
- }
- }
- Transition tr16: receiveSecond7 -> receiveSecond7 {
- triggers {
- <pongInt16: PingPongPort guard {
- "counter==6"
- }>
- }
- action {
- "counter++;"
- "if (d==20){\t"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 16);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- EntryPoint tp0
- ExitPoint tp1
- State receiveFirst7
- State receiveSecond7
- }
- }
- State test_finished {
- entry {
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);"
- "etUnit_closeAll(caseId);"
- "etUnit_testFinished(caseId);"
- }
- }
- State state1 {
- subgraph {
- Transition tr0: my tp0 -> state0 {
- action {
- "counter=0;"
- "/* send default values */"
- "PingPongPort.pingComplex(&(data));"
- "PingPongPort.pingComplexRef(&(data));"
- }
- }
- Transition tr1: state0 -> state1 {
- triggers {
- <pongComplex: PingPongPort guard {
- "counter==1"
- }>
- }
- action {
- "counter=0;"
- "if (d->i8ValPPD==10){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "if (d->complexVal.i32Val2PPDD==80){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 20);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "dataD.i8ValPPD=11;"
- "PingPongPort.pingComplexDerived(&(dataD));"
- }
- }
- Transition tr2: state0 -> state0 {
- triggers {
- <pongComplex: PingPongPort>
- }
- action {
- "counter++;"
- "if (d->i8ValPPD==10){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 18);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- Transition tr3: state1 -> my tp1 {
- triggers {
- <pongComplexDerived: PingPongPort>
- }
- action {
- "if (d->i8ValPPD==11){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 21);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "if (d->i32Val3PPDe==150){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- }
- }
- EntryPoint tp0
- ExitPoint tp1
- State state0
- State state1
- }
- }
- }
- }
- }
-
- ProtocolClass PingPongProtocol {
- incoming {
- Message pingInt8(d: int8)
- Message pingInt16(d: int16)
- Message pingInt32(d: int32)
- Message pingInt64(d: int64)
- Message pingFloat32(d: float32)
- Message pingFloat64(d: float64)
- Message pingInt16Ref(d: int16 ref)
- Message pingInt32Ref(d: int32 ref)
- Message pingComplex(d: PingPongData)
- Message pingComplexRef(d: PingPongData ref)
- Message pingComplexDerived(d:PingPongDataDerived)
- }
- outgoing {
- Message pongInt8(d: int8)
- Message pongInt16(d: int16)
- Message pongInt32(d: int32)
- Message pongInt64(d:int64)
- Message pongFloat32(d: float32)
- Message pongFloat64(d: float64)
- Message pongComplex(d: PingPongData)
- Message pongComplexDerived(d: PingPongDataDerived)
- }
- }
-
- DataClass PingPongData {
- Attribute i8ValPPD: int8 = "10"
- Attribute i8ValRefPPD: int8 ref
- Attribute i32ArrayPPD [ 3 ]: int32 = "{200,300,400}"
- Attribute i8ArrayRefPPD [ 2 ]: int8 ref
- Attribute complexVal: PingPongDataDeep
- }
-
- DataClass PingPongDataDeep {
- Attribute i32Val1PPDD: int32
- Attribute i32Val2PPDD: int32 = "80"
- }
-
- DataClass PingPongDataDerived extends PingPongData {
- Attribute i32Val3PPDe: int32 = "150"
- }
+RoomModel SendingDataTestC { + + import room.basic.types.* from "Types.room" + import room.basic.language.* from "Language.room" + + SubSystemClass SubSystem_SendingData { + ActorRef top: SendingDataTop + + LogicalThread dflt_thread + } + + ActorClass SendingDataTop { + Structure { + ActorRef mrPing: MrPing + ActorRef mrPong: MrPong + Binding mrPong.PingPongPort and mrPing.PingPongPort + } + Behavior { } + } + + ActorClass MrPong { + Interface { + Port PingPongPort: PingPongProtocol + } + Structure { + external Port PingPongPort + } + Behavior { + StateMachine { + Transition tr0: reply -> reply { + triggers { + <pingInt16: PingPongPort> + } + action { + "PingPongPort.pongInt16(d);" + } + } + Transition tr1: reply -> reply { + triggers { + <pingInt8: PingPongPort> + } + action { + "PingPongPort.pongInt8(d);" + } + } + Transition init: initial -> reply { } + Transition tr2: reply -> reply { + triggers { + <pingInt32: PingPongPort> + } + action { + "PingPongPort.pongInt32(d);" + } + } + Transition tr3: reply -> reply { + triggers { + <pingFloat32: PingPongPort> + } + action { + "PingPongPort.pongFloat32(d);" + } + } + Transition tr4: reply -> reply { + triggers { + <pingFloat64: PingPongPort> + } + action { + "PingPongPort.pongFloat64(d);" + } + } + Transition tr7: reply -> cp cp0 { + triggers { + <pingInt32Ref: PingPongPort guard { + "(*d)!=0" + }> + } + } + Transition tr8: cp cp0 -> reply { + action { + "PingPongPort.pongInt32((*d)+10);" + } + } + Transition tr6: cp cp0 -> reply { + cond { + "(*d)!=5" + } + action { + "PingPongPort.pongInt32(*d);" + } + } + Transition tr9: reply -> reply { + triggers { + <pingComplex: PingPongPort> + } + action { + "PingPongPort.pongComplex(d);" + } + } + Transition tr11: reply -> reply { + triggers { + <pingComplexRef: PingPongPort> + } + action { + "PingPongPort.pongComplex(d);" + } + } + Transition tr5: reply -> reply { + triggers { + <pingInt64: PingPongPort> + } + action { + "PingPongPort.pongInt64(d);" + } + } + Transition tr10: reply -> reply { + triggers { + <pingInt16Ref: PingPongPort> + } + action { + "PingPongPort.pongInt16(*d);" + } + } + Transition tr12: reply -> cp cp1 { + triggers { + <pingComplexRef: PingPongPort guard { + "d->i8ValPPD == 5" + }> + } + action { + "PingPongPort.pongComplex(d);" + } + } + Transition tr13: cp cp1 -> reply { + action { + "PingPongPort.pongComplex(d);" + } + } + Transition tr14: cp cp1 -> reply { + cond { + "d->i8ValPPD==7" + } + action { + "PingPongPort.pongComplex(d);" + } + } + Transition tr15: reply -> reply { + triggers { + <pingComplexDerived: PingPongPort> + } + action { + "PingPongPort.pongComplexDerived(d);" + } + } + ChoicePoint cp0 + ChoicePoint cp1 + State reply + } + } + } + + ActorClass MrPing { + Interface { + conjugated Port PingPongPort: PingPongProtocol + } + Structure { + external Port PingPongPort + Attribute i8Val: int8="5" + Attribute i16Val:int16="19" + Attribute i32Val: int32 = "4711" + Attribute i64Val: int64 = "11470815" + Attribute i32Array [ 10 ]: int32="{0,1,2,3,4,5,6,7,8,9}" + Attribute f32Val: float32="3.14f" + Attribute f64Val: float64="7.987654321" + Attribute data: PingPongData + Attribute dataD: PingPongDataDerived + Attribute counter:int32 + Attribute caseId: int32 + Attribute lang: languageIndicator + Attribute resultlist [ 23 ]: int16 = "{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}" + } + Behavior { + StateMachine { + Transition init: initial -> tp0 of state0 { + action { + "caseId = etUnit_openAll(\"tmp\", \"SendingDataTestC\", \"org.eclipse.etrice.generator.common.tests.SendingDataTest\", \"SendingDataTest_case\");" + "EXPECT_ORDER_START(caseId,resultlist,23);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);" + "/* send the default values */" + "" + "PingPongPort.pingInt8(i8Val);" + "PingPongPort.pingInt16(i16Val);" + "PingPongPort.pingInt32(i32Val);" + "PingPongPort.pingInt64(i64Val);" + "PingPongPort.pingFloat32(f32Val);" + "PingPongPort.pingFloat64(f64Val);" + "PingPongPort.pingInt16Ref(&i16Val);" + "PingPongPort.pingInt32Ref(&i32Val);" + "i8Val++;" + "i16Val++;" + "i32Val++;" + "i64Val++;" + "f32Val+=10.1;" + "f64Val+=20.2;" + "PingPongPort.pingInt8(i8Val);" + "PingPongPort.pingInt16(i16Val);" + "PingPongPort.pingInt32(i32Val);" + "PingPongPort.pingInt64(i64Val);" + "PingPongPort.pingFloat32(f32Val);" + "PingPongPort.pingFloat64(f64Val);" + "PingPongPort.pingInt16Ref(&i16Val);" + "PingPongPort.pingInt32Ref(&i32Val);" + } + } + Transition tr0: tp1 of state0 -> tp0 of state1 + Transition tr1: tp1 of state1 -> test_finished + State state0 { + subgraph { + Transition tr0: my tp0 -> receiveFirst7 { + action { + "counter=0;" + } + } + Transition tr1: receiveFirst7 -> receiveFirst7 { + triggers { + <pongInt8: PingPongPort> + } + action { + "counter++;" + "if (d==5){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr2: receiveFirst7 -> receiveFirst7 { + triggers { + <pongInt16: PingPongPort> + } + action { + "counter++;" + "if (d==19){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 3);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr3: receiveFirst7 -> receiveFirst7 { + triggers { + <pongInt32: PingPongPort> + } + action { + "counter++;" + "if (d==4711){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 4);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr4: receiveFirst7 -> receiveSecond7 { + triggers { + <pongInt32: PingPongPort guard { + "counter==7" + }> + } + action { + "counter=0;" + "if (lang == 1){" + "/* Java cannot send references of primitive types */" + "\tif (d==4711){\t" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);" + "\t}else{" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "\t}" + "} " + "if (lang == 2){" + "/* C */" + "\tif (d==4712){\t" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 9);" + "\t}else{" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "\t}" + "}" + } + } + Transition tr6: receiveFirst7 -> receiveFirst7 { + triggers { + <pongInt64: PingPongPort> + } + action { + "counter++;" + "if (d==11470815){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 5);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr5: receiveFirst7 -> receiveFirst7 { + triggers { + <pongFloat32: PingPongPort> + } + action { + "counter++;" + "if ((d>3)&&(d<4)){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 6);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr7: receiveFirst7 -> receiveFirst7 { + triggers { + <pongFloat64: PingPongPort> + } + action { + "counter++;" + "if ((d>7)&&(d<8)){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 7);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr8: receiveSecond7 -> receiveSecond7 { + triggers { + <pongInt8: PingPongPort> + } + action { + "counter++;" + "if (d==6){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 10);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr9: receiveSecond7 -> receiveSecond7 { + triggers { + <pongInt16: PingPongPort> + } + action { + "counter++;" + "if (d==20){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 11);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr10: receiveSecond7 -> receiveSecond7 { + triggers { + <pongInt32: PingPongPort> + } + action { + "counter++;" + "if (d==4712){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 12);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr11: receiveSecond7 -> receiveSecond7 { + triggers { + <pongInt64: PingPongPort> + } + action { + "counter++;" + "if (d==11470816){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 13);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr12: receiveSecond7 -> receiveSecond7 { + triggers { + <pongFloat32: PingPongPort> + } + action { + "counter++;" + "if ((d>13)&&(d<14)){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 14);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr13: receiveSecond7 -> receiveSecond7 { + triggers { + <pongFloat64: PingPongPort> + } + action { + "counter++;" + "if ((d>28)&&(d<29)){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 15);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr14: receiveSecond7 -> my tp1 { + triggers { + <pongInt32: PingPongPort guard { + "counter==7" + }> + } + action { + "if (d==4712){\t" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 17);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr15: receiveFirst7 -> receiveFirst7 { + triggers { + <pongInt16: PingPongPort guard { + "counter==6" + }> + } + action { + "counter++;" + "if (lang == 1){" + "/* Java cannot send references of primitive types */" + "\tif (d==19){\t" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);" + "\t}else{" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "\t}" + "} " + "if (lang == 2){" + "/* C */" + "\tif (d==20){\t" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 8);" + "\t}else{" + "\t\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "\t}" + "}" + } + } + Transition tr16: receiveSecond7 -> receiveSecond7 { + triggers { + <pongInt16: PingPongPort guard { + "counter==6" + }> + } + action { + "counter++;" + "if (d==20){\t" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 16);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + EntryPoint tp0 + ExitPoint tp1 + State receiveFirst7 + State receiveSecond7 + } + } + State test_finished { + entry { + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 23);" + "etUnit_closeAll(caseId);" + "etUnit_testFinished(caseId);" + } + } + State state1 { + subgraph { + Transition tr0: my tp0 -> state0 { + action { + "counter=0;" + "/* send default values */" + "PingPongPort.pingComplex(&(data));" + "PingPongPort.pingComplexRef(&(data));" + } + } + Transition tr1: state0 -> state1 { + triggers { + <pongComplex: PingPongPort guard { + "counter==1" + }> + } + action { + "counter=0;" + "if (d->i8ValPPD==10){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + "" + "if (d->complexVal.i32Val2PPDD==80){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 20);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + "" + "dataD.i8ValPPD=11;" + "PingPongPort.pingComplexDerived(&(dataD));" + } + } + Transition tr2: state0 -> state0 { + triggers { + <pongComplex: PingPongPort> + } + action { + "counter++;" + "if (d->i8ValPPD==10){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 18);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + Transition tr3: state1 -> my tp1 { + triggers { + <pongComplexDerived: PingPongPort> + } + action { + "if (d->i8ValPPD==11){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 21);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + "" + "if (d->i32Val3PPDe==150){" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 22);" + "}else{" + "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "}" + } + } + EntryPoint tp0 + ExitPoint tp1 + State state0 + State state1 + } + } + } + } + } + + ProtocolClass PingPongProtocol { + incoming { + Message pingInt8(d: int8) + Message pingInt16(d: int16) + Message pingInt32(d: int32) + Message pingInt64(d: int64) + Message pingFloat32(d: float32) + Message pingFloat64(d: float64) + Message pingInt16Ref(d: int16 ref) + Message pingInt32Ref(d: int32 ref) + Message pingComplex(d: PingPongData) + Message pingComplexRef(d: PingPongData ref) + Message pingComplexDerived(d:PingPongDataDerived) + } + outgoing { + Message pongInt8(d: int8) + Message pongInt16(d: int16) + Message pongInt32(d: int32) + Message pongInt64(d:int64) + Message pongFloat32(d: float32) + Message pongFloat64(d: float64) + Message pongComplex(d: PingPongData) + Message pongComplexDerived(d: PingPongDataDerived) + } + } + + DataClass PingPongData { + Attribute i8ValPPD: int8 = "10" + Attribute i8ValRefPPD: int8 ref + Attribute i32ArrayPPD [ 3 ]: int32 = "{200,300,400}" + Attribute i8ArrayRefPPD [ 2 ]: int8 ref + Attribute complexVal: PingPongDataDeep + } + + DataClass PingPongDataDeep { + Attribute i32Val1PPDD: int32 + Attribute i32Val2PPDD: int32 = "80" + } + + DataClass PingPongDataDerived extends PingPongData { + Attribute i32Val3PPDe: int32 = "150" + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest.config b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest.config index 4663baf55..b8b4390d3 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest.config +++ b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest.config @@ -1,138 +1,138 @@ -ConfigModel StaticTestConfig {
- import StaticConfigTest.* from "StaticConfigTest.room"
-
- ActorClassConfig Tester_ac {
- // nothing
- }
-
- ActorClassConfig Testee_1_ac {
- Attr data_1 {
- Attr bool_c = false
- Attr bool_i = false
- Attr int8_c = 24
- Attr int8_i = 24
- Attr int16_c = 48
- Attr int16_i = 48
- Attr int32_c = 96
- Attr int32_i = 96
- Attr int64_c = 192
- Attr int64_i = 192
- Attr float32_c = 9.6
- Attr float32_i = 9.6
- Attr float64_c = 19.2
- Attr float64_i = 19.2
- Attr char_c = "C"
- Attr char_i = "C"
- Attr string_c = ":)"
- Attr string_i = ":)"
-
- Attr bool_array_c = true, false
- Attr bool_array_i = true, false
- Attr int8_array_c = 24, 48
- Attr int8_array_i = 24, 48
- Attr int16_array_c = 48, 96
- Attr int16_array_i = 48, 96
- Attr int32_array_c = 96, 192
- Attr int32_array_i = 96, 192
- Attr int64_array_c = 192, 384
- Attr int64_array_i = 192, 384
- Attr float32_array_c = 9.6
- Attr float32_array_i = 9.6
- Attr float64_array_c = 19.2
- Attr float64_array_i = 19.2
- Attr char_array_c = "Claz"
- Attr char_array_i = "Claz"
-
- Attr data_2 {
- Attr int32_c = 42
- Attr int32_i = 42
- }
- }
- }
-
- ActorClassConfig Testee_Super2_ac {
- Attr float64_super_c = 2.2
- Attr float64_super_i = 2.2
- }
-
- ActorClassConfig Testee_2_ac {
- Attr int32_own_c = 12
- Attr int32_own_i = 12
- }
-
- ProtocolClassConfig TestProtocolAttributes {
- regular Port{
- Attr float_c = 3.0
- Attr float_i = 3.0
- }
- conjugate Port {
- Attr array2_c = 16, 32
- Attr array2_i = 16, 32
- }
- }
-
- ProtocolClassConfig TestProtocolWithDataClass {
- conjugate Port {
- Attr sap_data_2{
- Attr int32_c = 2
- Attr int32_i = 2
- }
- }
- }
-
- ActorInstanceConfig System_StaticConfigTest/subSystem/top/tester {
- // nothing
- }
-
- ActorInstanceConfig System_StaticConfigTest/subSystem/top/testee_1 {
- Attr data_1 {
- Attr bool_i = true
- Attr int8_i = 2
- Attr int16_i = 4
- Attr int32_i = 8
- Attr int64_i = 16
- Attr float32_i = 1.6
- Attr float64_i = 3.2
- Attr char_i = "I"
- Attr string_i = ":]"
-
- Attr bool_array_i = true, true
- Attr int8_array_i = 2, 6
- Attr int16_array_i = 4, 12
- Attr int32_array_i = 8, 24
- Attr int64_array_i = 16, 48
- Attr float32_array_i = 1.6
- Attr float64_array_i = 3.2
- Attr char_array_i = "Inst"
-
- Attr data_2 {
- Attr int32_i = 43
- }
- }
- InterfaceItem conj_port {
- Attr array2_i = 1, 2
- }
- }
-
-
- ActorInstanceConfig System_StaticConfigTest/subSystem/top/tester/testee_super2{
- Attr float64_super_i = 3.3
- InterfaceItem reg_port {
- Attr float_i = 25.0
- }
- }
-
- ActorInstanceConfig System_StaticConfigTest/subSystem/top/testee_1/testee_2 {
- Attr float64_super_i = 4.4
- Attr int32_own_i = 13
- InterfaceItem reg_port {
- Attr float_i = 50.0
- }
- InterfaceItem sap {
- Attr sap_data_2 {
- Attr int32_i = 3
- }
- }
- }
-
+ConfigModel StaticTestConfig { + import StaticConfigTest.* from "StaticConfigTest.room" + + ActorClassConfig Tester_ac { + // nothing + } + + ActorClassConfig Testee_1_ac { + Attr data_1 { + Attr bool_c = false + Attr bool_i = false + Attr int8_c = 24 + Attr int8_i = 24 + Attr int16_c = 48 + Attr int16_i = 48 + Attr int32_c = 96 + Attr int32_i = 96 + Attr int64_c = 192 + Attr int64_i = 192 + Attr float32_c = 9.6 + Attr float32_i = 9.6 + Attr float64_c = 19.2 + Attr float64_i = 19.2 + Attr char_c = "C" + Attr char_i = "C" + Attr string_c = ":)" + Attr string_i = ":)" + + Attr bool_array_c = true, false + Attr bool_array_i = true, false + Attr int8_array_c = 24, 48 + Attr int8_array_i = 24, 48 + Attr int16_array_c = 48, 96 + Attr int16_array_i = 48, 96 + Attr int32_array_c = 96, 192 + Attr int32_array_i = 96, 192 + Attr int64_array_c = 192, 384 + Attr int64_array_i = 192, 384 + Attr float32_array_c = 9.6 + Attr float32_array_i = 9.6 + Attr float64_array_c = 19.2 + Attr float64_array_i = 19.2 + Attr char_array_c = "Claz" + Attr char_array_i = "Claz" + + Attr data_2 { + Attr int32_c = 42 + Attr int32_i = 42 + } + } + } + + ActorClassConfig Testee_Super2_ac { + Attr float64_super_c = 2.2 + Attr float64_super_i = 2.2 + } + + ActorClassConfig Testee_2_ac { + Attr int32_own_c = 12 + Attr int32_own_i = 12 + } + + ProtocolClassConfig TestProtocolAttributes { + regular Port{ + Attr float_c = 3.0 + Attr float_i = 3.0 + } + conjugate Port { + Attr array2_c = 16, 32 + Attr array2_i = 16, 32 + } + } + + ProtocolClassConfig TestProtocolWithDataClass { + conjugate Port { + Attr sap_data_2{ + Attr int32_c = 2 + Attr int32_i = 2 + } + } + } + + ActorInstanceConfig System_StaticConfigTest/subSystem/top/tester { + // nothing + } + + ActorInstanceConfig System_StaticConfigTest/subSystem/top/testee_1 { + Attr data_1 { + Attr bool_i = true + Attr int8_i = 2 + Attr int16_i = 4 + Attr int32_i = 8 + Attr int64_i = 16 + Attr float32_i = 1.6 + Attr float64_i = 3.2 + Attr char_i = "I" + Attr string_i = ":]" + + Attr bool_array_i = true, true + Attr int8_array_i = 2, 6 + Attr int16_array_i = 4, 12 + Attr int32_array_i = 8, 24 + Attr int64_array_i = 16, 48 + Attr float32_array_i = 1.6 + Attr float64_array_i = 3.2 + Attr char_array_i = "Inst" + + Attr data_2 { + Attr int32_i = 43 + } + } + InterfaceItem conj_port { + Attr array2_i = 1, 2 + } + } + + + ActorInstanceConfig System_StaticConfigTest/subSystem/top/tester/testee_super2{ + Attr float64_super_i = 3.3 + InterfaceItem reg_port { + Attr float_i = 25.0 + } + } + + ActorInstanceConfig System_StaticConfigTest/subSystem/top/testee_1/testee_2 { + Attr float64_super_i = 4.4 + Attr int32_own_i = 13 + InterfaceItem reg_port { + Attr float_i = 50.0 + } + InterfaceItem sap { + Attr sap_data_2 { + Attr int32_i = 3 + } + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_C.room b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_C.room index bfea367c4..447ae6b8f 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_C.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_C.room @@ -1,397 +1,397 @@ -RoomModel StaticConfigTest {
-
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_StaticConfigTest {
- ActorRef top: Top_ac
-
- LogicalThread dflt_thread
- }
-
- ActorClass Top_ac {
- Structure {
- ActorRef testee_1: Testee_1_ac
- ActorRef tester: Tester_ac
- LayerConnection ref testee_1 satisfied_by tester.spp
- }
- Behavior {
- Operation Top_ac() {
- "etUnit_open(\"tmp\", \"StaticConfigTest\");"
- "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.StaticConfigTest\");"
- }
- Operation ~Top_ac() {
- "etUnit_closeTestSuite();"
- "etUnit_close();"
- }
- }
- }
-
- ActorClass Tester_ac {
- Interface {
- SPP spp: TestProtocolWithDataClass
- }
- Structure {
- ServiceImplementation of spp
- Attribute caseId: int32
-
- // none config test
- Attribute data_3: Data_3_dc
- ActorRef testee_super2: Testee_Super2_ac
- }
- Behavior {
- Operation Tester_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Tester_ac\");"
- "etUnit_testFinished(caseId);"
- }
- Operation ~Tester_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
- "Data_3_dc_varCheck3(&(data_3), caseId);"
- }
- }
- }
- }
- }
-
- ActorClass Testee_1_ac {
- Interface {
- conjugated Port conj_port: TestProtocolAttributes
- }
- Structure {
- usercode1 {
- "#include \"etUnit/etUnit.h\""
- }
- external Port conj_port
- Attribute caseId: int32
- Attribute data_1: Data_1_dc
- ActorRef testee_2: Testee_2_ac
- }
- Behavior {
- Operation Testee_1_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_1_ac\");"
- "etUnit_testFinished(caseId);"
- }
- Operation ~Testee_1_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
- "Data_1_dc_varCheck1(&(data_1), caseId);"
- "EXPECT_FALSE(caseId,\"testee_1:data_1:1\", data_1.bool_c);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:2\", data_1.int8_c == 24);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:3\", data_1.int16_c == 48);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:4\", data_1.int32_c == 96);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:5\", data_1.int64_c == 192);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:6\", 9.6f, data_1.float32_c, 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId,\"testee_1:data_1:7\", 19.2, data_1.float64_c, 0.1);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:8\", data_1.char_c == \'C\');"
- "EXPECT_TRUE(caseId,\"testee_1:varCheck:8.1\", strcmp(data_1.string_c, \":)\") == 0 );"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:10\", data_1.bool_i);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:11\", data_1.int8_i == 2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:12\", data_1.int16_i == 4);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:13\", data_1.int32_i == 8);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:14\", data_1.int64_i == 16);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:15\", 1.6f, data_1.float32_i, 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId,\"testee_1:data_1:16\", 3.2, data_1.float64_i, 0.1);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:17\", data_1.char_i == \'I\');"
- "EXPECT_TRUE(caseId,\"testee_1:varCheck:18\", strcmp(data_1.string_i, \":]\") == 0 );"
-
- // Array
- "EXPECT_TRUE(caseId,\"testee_1:data_1:19\", data_1.bool_array_c[0] == TRUE && data_1.bool_array_c[1] == FALSE);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:20\", data_1.int8_array_c[0] == 24 && data_1.int8_array_c[1] == 48);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:21\", data_1.int16_array_c[0] == 48 && data_1.int16_array_c[1] == 96);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:22\", data_1.int32_array_c[0] == 96 && data_1.int32_array_c[1] == 192);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:23\", data_1.int64_array_c[0] == 192 && data_1.int64_array_c[1] == 384);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:24_1\", 9.6f, data_1.float32_array_c[0], 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:24_2\", 9.6f, data_1.float32_array_c[1], 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:25_1\", 19.2, data_1.float64_array_c[0], 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:25_2\", 19.2, data_1.float64_array_c[1], 0.1);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:26\", strcmp(data_1.char_array_c, \"Claz\") == 0);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:27\", data_1.bool_array_i[0] == TRUE && data_1.bool_array_i[1] == TRUE);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:28\", data_1.int8_array_i[0] == 2 && data_1.int8_array_i[1] == 6);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:29\", data_1.int16_array_i[0] == 4 && data_1.int16_array_i[1] == 12);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:30\", data_1.int32_array_i[0] == 8 && data_1.int32_array_i[1] == 24);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:31\", data_1.int64_array_i[0] == 16 && data_1.int64_array_i[1] == 48);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:32_1\", 1.6f, data_1.float32_array_i[0], 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:32_2\", 1.6f, data_1.float32_array_i[1], 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:33_1\", 3.2, data_1.float64_array_i[0], 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:33_2\", 3.2, data_1.float64_array_i[1], 0.1);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:34\", strcmp(data_1.char_array_i, \"Inst\") == 0);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:35\", data_1.data_2.int32_c == 42);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:36\", data_1.data_2.int32_i == 43);"
-
- // conj_port
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:36\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_r[0] == 11);"
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:37\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_r[1] == 22);"
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:38\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_c[0] == 16);"
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:39\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_c[1] == 32);"
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:40\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_i[0] == 1);"
- "EXPECT_TRUE(caseId,\"testee_1:conj_port:41\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_i[1] == 2);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass Testee_Super2_ac {
- Interface {
- Port reg_port: TestProtocolAttributes
- }
- Structure {
- usercode1 {
- "#include \"etUnit/etUnit.h\""
- }
- external Port reg_port
- Attribute caseId: int32
-
- // test
- Attribute data_2: Data_2_dc
- Attribute float64_super_r: float64 = "1.1"
- Attribute float64_super_c: float64 = "1.1"
- Attribute float64_super_i: float64 = "1.1"
- }
- Behavior {
- Operation Testee_Super2_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_Super2_ac\");"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:1\", 1.1, float64_super_r, 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:2\", 2.2, float64_super_c, 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:3\", 3.3, float64_super_i, 0.1);"
-
- // reg_port
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:5\", 4.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_r, 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:6\", 3.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_c, 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:7\", 25.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_i, 0.1f);"
- }
- Operation ~Testee_Super2_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- }
- }
-
- ActorClass Testee_2_ac extends Testee_Super2_ac {
- Structure {
- SAP sap: TestProtocolWithDataClass
- Attribute int32_own_r: int32 = "11"
- Attribute int32_own_c: int32 = "11"
- Attribute int32_own_i: int32 = "11"
- }
- Behavior {
- Operation Testee_2_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_2_ac\");"
- "etUnit_testFinished(caseId);"
- }
- Operation ~Testee_2_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
-
- "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_2_ac:1\", 2.2, float64_super_c, 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_2_ac:2\", 4.4, float64_super_i, 0.1);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:3\", int32_own_r == 11);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:4\", int32_own_c == 12);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:5\", int32_own_i == 13);"
-
- // reg_port
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:6\", 4.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_r, 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:7\", 3.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_c, 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:9\", 50.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_i, 0.1f);"
-
- // sap
- "Data_3_dc_varCheck3(&(((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_3), caseId);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:10\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_r == 1);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:11\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_c == 2);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:12\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_i == 3);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ProtocolClass TestProtocolAttributes {
- incoming {
- Message dummy()
- }
- regular PortClass
- {
- Attribute float_r: float32 = "4"
- Attribute float_c: float32 = "16"
- Attribute float_i: float32 = "256"
- }
- conjugate PortClass
- {
- Attribute array2_r [ 2 ]: int64 = "{11,22}"
- Attribute array2_c [ 2 ]: int64 = "{0,0}"
- Attribute array2_i [ 2 ]: int64 = "{0,0}"
- }
- }
-
- ProtocolClass TestProtocolWithDataClass {
- usercode1 {
- "#include \"Data_2_dc.h\""
- "#include \"Data_3_dc.h\""
- }
- incoming {
- Message dummy()
- }
-
- //SAP
- conjugate PortClass
- {
- Attribute sap_data_2: Data_2_dc
-
- // none config test
- Attribute sap_data_3: Data_3_dc
- }
- }
-
- ExternalType extType -> int default "999"
-
- DataClass Data_Super1_dc {
- // PrimitiveType
- Attribute bool_r: boolean = "falSe"
- Attribute bool_c: boolean = "false"
- Attribute bool_i: boolean = "false"
- // Array
- Attribute bool_array_r [ 2 ]: boolean = "{ FALSE, false }"
- Attribute bool_array_c [ 2 ]: boolean = "{ false, false }"
- Attribute bool_array_i [ 2 ]: boolean = "{ false, false }"
- }
-
- DataClass Data_1_dc extends Data_Super1_dc{
- usercode1 {
- "#include \"etUnit/etUnit.h\""
- }
-
- Attribute int8_r: int8 = "8"
- Attribute int8_c: int8 = "8"
- Attribute int8_i: int8 = "8"
- Attribute int16_r: int16 = "16"
- Attribute int16_c: int16 = "16"
- Attribute int16_i: int16 = "16"
- Attribute int32_r: int32 = "32"
- Attribute int32_c: int32 = "32"
- Attribute int32_i: int32 = "32"
- Attribute int64_r: int64 = "64"
- Attribute int64_c: int64 = "64"
- Attribute int64_i: int64 = "64"
- Attribute float32_r: float32 = "3.2"
- Attribute float32_c: float32 = "3.2"
- Attribute float32_i: float32 = "3.2"
- Attribute float64_r: float64 = "6.4"
- Attribute float64_c: float64 = "6.4"
- Attribute float64_i: float64 = "6.4"
- Attribute char_r: char = "R"
- Attribute char_c: char = 'R'
- Attribute char_i: char = "R"
- Attribute string_r: string = ":/"
- Attribute string_c: string = ":/"
- Attribute string_i: string = ":/"
-
- // Array
- Attribute int8_array_r [ 2 ]: int8 = "{ 8, 16 }"
- Attribute int8_array_c [ 2 ]: int8 = "{ 8, 16 }"
- Attribute int8_array_i [ 2 ]: int8 = "{ 8, 16 }"
- Attribute int16_array_r [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int16_array_c [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int16_array_i [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int32_array_r [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int32_array_c [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int32_array_i [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int64_array_r [ 2 ]: int64 = "{ 64, 128 }"
- Attribute int64_array_c [ 2 ]: int64 = "{ 64, 128 }"
- Attribute int64_array_i [ 2 ]: int64 = "{ 64, 128 }"
- Attribute float32_array_r [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float32_array_c [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float32_array_i [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float64_array_r [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute float64_array_c [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute float64_array_i [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute char_array_r [ 5 ]: char = "ROOM"
- Attribute char_array_c [ 5 ]: char = "ROOM"
- Attribute char_array_i [ 5 ]: char = "ROOM"
-
- // ComplexType
- Attribute data_2: Data_2_dc
-
- Operation varCheck1(caseId: int32) {
- "Data_2_dc_varCheck2(&(data_2), caseId);"
-
- // PrimitiveType
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:1\", bool_r == FALSE);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:2\", int8_r == 8);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:3\", int16_r == 16);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:4\", int32_r == 32);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:5\", int64_r == 64);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"Data_1_dc:varCheck:6\", 3.2f, float32_r, 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId,\"Data_1_dc:varCheck:7\", 6.4, float64_r, 0.1);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", char_r == \'R\');"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", strcmp(string_r, \":/\") == 0 );"
-
- // Array
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:10\", bool_array_r[0] == FALSE && bool_array_r[1] == FALSE);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:11\", int8_array_r[0] == 8 && int8_array_r[1] == 16);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:12\", int16_array_r[0] == 16 && int16_array_r[1] == 32);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:13\", int32_array_r[0] == 32 && int32_array_r[1] == 64);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:24\", int64_array_r[0] == 64 && int64_array_r[1] == 128);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Data_1_dc:varCheck:25_1\", 3.2f, float32_array_r[0], 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId, \"Data_1_dc:varCheck:25_2\", 6.4f, float32_array_r[1], 0.1f);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Data_1_dc:varCheck:26_1\", 6.4, float64_array_r[0], 0.1);"
- "EXPECT_EQUAL_FLOAT64(caseId, \"Data_1_dc:varCheck:26_2\", 12.8, float64_array_r[1], 0.1);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:27\", strcmp(char_array_r, \"ROOM\")==0);"
- }
- }
-
- DataClass Data_2_dc {
- usercode1 {
- "#include \"etUnit/etUnit.h\""
- }
- Attribute int32_r: int32 = "1"
- Attribute int32_c: int32 = "1"
- Attribute int32_i: int32 = "1"
- Operation varCheck2(caseId: int32): void {
- "EXPECT_TRUE(caseId, \"Data_2_dc:1\", int32_r == 1);"
- }
- }
-
- DataClass Data_3_dc {
- usercode1 {
- "#include \"etUnit/etUnit.h\""
- }
-
- // none config test
- Attribute primitive_ref: int32 ref
- Attribute primitive_ref_array [ 2 ]: int32 ref
- Attribute dataClass_array [ 2 ]: Data_2_dc
- Attribute dataClass_ref: Data_2_dc ref
- Attribute dataClass_ref_array [ 2 ]: Data_2_dc ref
- Attribute ext_type: extType
- Attribute ext_type_array [ 2 ]: extType
- Attribute ext_type_ref: extType ref
- Attribute ext_type_ref_array [ 2 ]: extType ref
- Operation varCheck3(caseId: int32): void {
- "EXPECT_TRUE(caseId, \"Data_3_dc:1\", primitive_ref == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:2\", primitive_ref_array[0] == NULL && primitive_ref_array[1] == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:3\", dataClass_ref == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_array[0].int32_r == 1 && dataClass_array[0].int32_c == 1 && dataClass_array[0].int32_i == 1);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_array[1].int32_r == 1 && dataClass_array[1].int32_c == 1 && dataClass_array[1].int32_i == 1);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:5\", dataClass_ref == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:6\", dataClass_ref_array[0] == NULL && dataClass_ref_array[1] == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:7\", ext_type == 999);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:8\", ext_type_array[0] == 999 && ext_type_array[1] == 999);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:9\", ext_type_ref == NULL);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:10\", ext_type_ref_array[0] == NULL && dataClass_ref_array[1] == NULL);"
- }
- }
-
+RoomModel StaticConfigTest { + + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_StaticConfigTest { + ActorRef top: Top_ac + + LogicalThread dflt_thread + } + + ActorClass Top_ac { + Structure { + ActorRef testee_1: Testee_1_ac + ActorRef tester: Tester_ac + LayerConnection ref testee_1 satisfied_by tester.spp + } + Behavior { + Operation Top_ac() { + "etUnit_open(\"tmp\", \"StaticConfigTest\");" + "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.StaticConfigTest\");" + } + Operation ~Top_ac() { + "etUnit_closeTestSuite();" + "etUnit_close();" + } + } + } + + ActorClass Tester_ac { + Interface { + SPP spp: TestProtocolWithDataClass + } + Structure { + ServiceImplementation of spp + Attribute caseId: int32 + + // none config test + Attribute data_3: Data_3_dc + ActorRef testee_super2: Testee_Super2_ac + } + Behavior { + Operation Tester_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Tester_ac\");" + "etUnit_testFinished(caseId);" + } + Operation ~Tester_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + "Data_3_dc_varCheck3(&(data_3), caseId);" + } + } + } + } + } + + ActorClass Testee_1_ac { + Interface { + conjugated Port conj_port: TestProtocolAttributes + } + Structure { + usercode1 { + "#include \"etUnit/etUnit.h\"" + } + external Port conj_port + Attribute caseId: int32 + Attribute data_1: Data_1_dc + ActorRef testee_2: Testee_2_ac + } + Behavior { + Operation Testee_1_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_1_ac\");" + "etUnit_testFinished(caseId);" + } + Operation ~Testee_1_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + "Data_1_dc_varCheck1(&(data_1), caseId);" + "EXPECT_FALSE(caseId,\"testee_1:data_1:1\", data_1.bool_c);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:2\", data_1.int8_c == 24);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:3\", data_1.int16_c == 48);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:4\", data_1.int32_c == 96);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:5\", data_1.int64_c == 192);" + "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:6\", 9.6f, data_1.float32_c, 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId,\"testee_1:data_1:7\", 19.2, data_1.float64_c, 0.1);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:8\", data_1.char_c == \'C\');" + "EXPECT_TRUE(caseId,\"testee_1:varCheck:8.1\", strcmp(data_1.string_c, \":)\") == 0 );" + "EXPECT_TRUE(caseId,\"testee_1:data_1:10\", data_1.bool_i);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:11\", data_1.int8_i == 2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:12\", data_1.int16_i == 4);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:13\", data_1.int32_i == 8);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:14\", data_1.int64_i == 16);" + "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:15\", 1.6f, data_1.float32_i, 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId,\"testee_1:data_1:16\", 3.2, data_1.float64_i, 0.1);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:17\", data_1.char_i == \'I\');" + "EXPECT_TRUE(caseId,\"testee_1:varCheck:18\", strcmp(data_1.string_i, \":]\") == 0 );" + + // Array + "EXPECT_TRUE(caseId,\"testee_1:data_1:19\", data_1.bool_array_c[0] == TRUE && data_1.bool_array_c[1] == FALSE);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:20\", data_1.int8_array_c[0] == 24 && data_1.int8_array_c[1] == 48);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:21\", data_1.int16_array_c[0] == 48 && data_1.int16_array_c[1] == 96);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:22\", data_1.int32_array_c[0] == 96 && data_1.int32_array_c[1] == 192);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:23\", data_1.int64_array_c[0] == 192 && data_1.int64_array_c[1] == 384);" + "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:24_1\", 9.6f, data_1.float32_array_c[0], 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:24_2\", 9.6f, data_1.float32_array_c[1], 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:25_1\", 19.2, data_1.float64_array_c[0], 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:25_2\", 19.2, data_1.float64_array_c[1], 0.1);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:26\", strcmp(data_1.char_array_c, \"Claz\") == 0);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:27\", data_1.bool_array_i[0] == TRUE && data_1.bool_array_i[1] == TRUE);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:28\", data_1.int8_array_i[0] == 2 && data_1.int8_array_i[1] == 6);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:29\", data_1.int16_array_i[0] == 4 && data_1.int16_array_i[1] == 12);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:30\", data_1.int32_array_i[0] == 8 && data_1.int32_array_i[1] == 24);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:31\", data_1.int64_array_i[0] == 16 && data_1.int64_array_i[1] == 48);" + "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:32_1\", 1.6f, data_1.float32_array_i[0], 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"testee_1:data_1:32_2\", 1.6f, data_1.float32_array_i[1], 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:33_1\", 3.2, data_1.float64_array_i[0], 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"testee_1:data_1:33_2\", 3.2, data_1.float64_array_i[1], 0.1);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:34\", strcmp(data_1.char_array_i, \"Inst\") == 0);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:35\", data_1.data_2.int32_c == 42);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:36\", data_1.data_2.int32_i == 43);" + + // conj_port + "EXPECT_TRUE(caseId,\"testee_1:conj_port:36\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_r[0] == 11);" + "EXPECT_TRUE(caseId,\"testee_1:conj_port:37\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_r[1] == 22);" + "EXPECT_TRUE(caseId,\"testee_1:conj_port:38\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_c[0] == 16);" + "EXPECT_TRUE(caseId,\"testee_1:conj_port:39\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_c[1] == 32);" + "EXPECT_TRUE(caseId,\"testee_1:conj_port:40\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_i[0] == 1);" + "EXPECT_TRUE(caseId,\"testee_1:conj_port:41\", ((TestProtocolAttributesConjPort_var*)self->constData->conj_port.varData)->array2_i[1] == 2);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass Testee_Super2_ac { + Interface { + Port reg_port: TestProtocolAttributes + } + Structure { + usercode1 { + "#include \"etUnit/etUnit.h\"" + } + external Port reg_port + Attribute caseId: int32 + + // test + Attribute data_2: Data_2_dc + Attribute float64_super_r: float64 = "1.1" + Attribute float64_super_c: float64 = "1.1" + Attribute float64_super_i: float64 = "1.1" + } + Behavior { + Operation Testee_Super2_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_Super2_ac\");" + "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:1\", 1.1, float64_super_r, 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:2\", 2.2, float64_super_c, 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_Super2_ac:3\", 3.3, float64_super_i, 0.1);" + + // reg_port + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:5\", 4.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_r, 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:6\", 3.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_c, 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_Super2_ac:7\", 25.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_i, 0.1f);" + } + Operation ~Testee_Super2_ac() { + "etUnit_closeTestCase(caseId);" + } + } + } + + ActorClass Testee_2_ac extends Testee_Super2_ac { + Structure { + SAP sap: TestProtocolWithDataClass + Attribute int32_own_r: int32 = "11" + Attribute int32_own_c: int32 = "11" + Attribute int32_own_i: int32 = "11" + } + Behavior { + Operation Testee_2_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_2_ac\");" + "etUnit_testFinished(caseId);" + } + Operation ~Testee_2_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + + "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_2_ac:1\", 2.2, float64_super_c, 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"Testee_2_ac:2\", 4.4, float64_super_i, 0.1);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:3\", int32_own_r == 11);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:4\", int32_own_c == 12);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:5\", int32_own_i == 13);" + + // reg_port + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:6\", 4.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_r, 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:7\", 3.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_c, 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Testee_2_ac:9\", 50.0f, ((TestProtocolAttributesPort_var*) self->constData->reg_port.varData)->float_i, 0.1f);" + + // sap + "Data_3_dc_varCheck3(&(((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_3), caseId);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:10\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_r == 1);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:11\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_c == 2);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:sap:12\", ((TestProtocolWithDataClassConjPort_var*)self->constData->sap.varData)->sap_data_2.int32_i == 3);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ProtocolClass TestProtocolAttributes { + incoming { + Message dummy() + } + regular PortClass + { + Attribute float_r: float32 = "4" + Attribute float_c: float32 = "16" + Attribute float_i: float32 = "256" + } + conjugate PortClass + { + Attribute array2_r [ 2 ]: int64 = "{11,22}" + Attribute array2_c [ 2 ]: int64 = "{0,0}" + Attribute array2_i [ 2 ]: int64 = "{0,0}" + } + } + + ProtocolClass TestProtocolWithDataClass { + usercode1 { + "#include \"Data_2_dc.h\"" + "#include \"Data_3_dc.h\"" + } + incoming { + Message dummy() + } + + //SAP + conjugate PortClass + { + Attribute sap_data_2: Data_2_dc + + // none config test + Attribute sap_data_3: Data_3_dc + } + } + + ExternalType extType -> int default "999" + + DataClass Data_Super1_dc { + // PrimitiveType + Attribute bool_r: boolean = "falSe" + Attribute bool_c: boolean = "false" + Attribute bool_i: boolean = "false" + // Array + Attribute bool_array_r [ 2 ]: boolean = "{ FALSE, false }" + Attribute bool_array_c [ 2 ]: boolean = "{ false, false }" + Attribute bool_array_i [ 2 ]: boolean = "{ false, false }" + } + + DataClass Data_1_dc extends Data_Super1_dc{ + usercode1 { + "#include \"etUnit/etUnit.h\"" + } + + Attribute int8_r: int8 = "8" + Attribute int8_c: int8 = "8" + Attribute int8_i: int8 = "8" + Attribute int16_r: int16 = "16" + Attribute int16_c: int16 = "16" + Attribute int16_i: int16 = "16" + Attribute int32_r: int32 = "32" + Attribute int32_c: int32 = "32" + Attribute int32_i: int32 = "32" + Attribute int64_r: int64 = "64" + Attribute int64_c: int64 = "64" + Attribute int64_i: int64 = "64" + Attribute float32_r: float32 = "3.2" + Attribute float32_c: float32 = "3.2" + Attribute float32_i: float32 = "3.2" + Attribute float64_r: float64 = "6.4" + Attribute float64_c: float64 = "6.4" + Attribute float64_i: float64 = "6.4" + Attribute char_r: char = "R" + Attribute char_c: char = 'R' + Attribute char_i: char = "R" + Attribute string_r: string = ":/" + Attribute string_c: string = ":/" + Attribute string_i: string = ":/" + + // Array + Attribute int8_array_r [ 2 ]: int8 = "{ 8, 16 }" + Attribute int8_array_c [ 2 ]: int8 = "{ 8, 16 }" + Attribute int8_array_i [ 2 ]: int8 = "{ 8, 16 }" + Attribute int16_array_r [ 2 ]: int16 = "{ 16, 32 }" + Attribute int16_array_c [ 2 ]: int16 = "{ 16, 32 }" + Attribute int16_array_i [ 2 ]: int16 = "{ 16, 32 }" + Attribute int32_array_r [ 2 ]: int32 = "{ 32, 64 }" + Attribute int32_array_c [ 2 ]: int32 = "{ 32, 64 }" + Attribute int32_array_i [ 2 ]: int32 = "{ 32, 64 }" + Attribute int64_array_r [ 2 ]: int64 = "{ 64, 128 }" + Attribute int64_array_c [ 2 ]: int64 = "{ 64, 128 }" + Attribute int64_array_i [ 2 ]: int64 = "{ 64, 128 }" + Attribute float32_array_r [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float32_array_c [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float32_array_i [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float64_array_r [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute float64_array_c [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute float64_array_i [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute char_array_r [ 5 ]: char = "ROOM" + Attribute char_array_c [ 5 ]: char = "ROOM" + Attribute char_array_i [ 5 ]: char = "ROOM" + + // ComplexType + Attribute data_2: Data_2_dc + + Operation varCheck1(caseId: int32) { + "Data_2_dc_varCheck2(&(data_2), caseId);" + + // PrimitiveType + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:1\", bool_r == FALSE);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:2\", int8_r == 8);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:3\", int16_r == 16);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:4\", int32_r == 32);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:5\", int64_r == 64);" + "EXPECT_EQUAL_FLOAT32(caseId,\"Data_1_dc:varCheck:6\", 3.2f, float32_r, 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId,\"Data_1_dc:varCheck:7\", 6.4, float64_r, 0.1);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", char_r == \'R\');" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", strcmp(string_r, \":/\") == 0 );" + + // Array + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:10\", bool_array_r[0] == FALSE && bool_array_r[1] == FALSE);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:11\", int8_array_r[0] == 8 && int8_array_r[1] == 16);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:12\", int16_array_r[0] == 16 && int16_array_r[1] == 32);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:13\", int32_array_r[0] == 32 && int32_array_r[1] == 64);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:24\", int64_array_r[0] == 64 && int64_array_r[1] == 128);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Data_1_dc:varCheck:25_1\", 3.2f, float32_array_r[0], 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId, \"Data_1_dc:varCheck:25_2\", 6.4f, float32_array_r[1], 0.1f);" + "EXPECT_EQUAL_FLOAT64(caseId, \"Data_1_dc:varCheck:26_1\", 6.4, float64_array_r[0], 0.1);" + "EXPECT_EQUAL_FLOAT64(caseId, \"Data_1_dc:varCheck:26_2\", 12.8, float64_array_r[1], 0.1);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:27\", strcmp(char_array_r, \"ROOM\")==0);" + } + } + + DataClass Data_2_dc { + usercode1 { + "#include \"etUnit/etUnit.h\"" + } + Attribute int32_r: int32 = "1" + Attribute int32_c: int32 = "1" + Attribute int32_i: int32 = "1" + Operation varCheck2(caseId: int32): void { + "EXPECT_TRUE(caseId, \"Data_2_dc:1\", int32_r == 1);" + } + } + + DataClass Data_3_dc { + usercode1 { + "#include \"etUnit/etUnit.h\"" + } + + // none config test + Attribute primitive_ref: int32 ref + Attribute primitive_ref_array [ 2 ]: int32 ref + Attribute dataClass_array [ 2 ]: Data_2_dc + Attribute dataClass_ref: Data_2_dc ref + Attribute dataClass_ref_array [ 2 ]: Data_2_dc ref + Attribute ext_type: extType + Attribute ext_type_array [ 2 ]: extType + Attribute ext_type_ref: extType ref + Attribute ext_type_ref_array [ 2 ]: extType ref + Operation varCheck3(caseId: int32): void { + "EXPECT_TRUE(caseId, \"Data_3_dc:1\", primitive_ref == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:2\", primitive_ref_array[0] == NULL && primitive_ref_array[1] == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:3\", dataClass_ref == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_array[0].int32_r == 1 && dataClass_array[0].int32_c == 1 && dataClass_array[0].int32_i == 1);" + "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_array[1].int32_r == 1 && dataClass_array[1].int32_c == 1 && dataClass_array[1].int32_i == 1);" + "EXPECT_TRUE(caseId, \"Data_3_dc:5\", dataClass_ref == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:6\", dataClass_ref_array[0] == NULL && dataClass_ref_array[1] == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:7\", ext_type == 999);" + "EXPECT_TRUE(caseId, \"Data_3_dc:8\", ext_type_array[0] == 999 && ext_type_array[1] == 999);" + "EXPECT_TRUE(caseId, \"Data_3_dc:9\", ext_type_ref == NULL);" + "EXPECT_TRUE(caseId, \"Data_3_dc:10\", ext_type_ref_array[0] == NULL && dataClass_ref_array[1] == NULL);" + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_Java.room b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_Java.room index 3d84563c0..18a31d58d 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_Java.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/StaticConfigTest_Java.room @@ -1,377 +1,377 @@ -RoomModel StaticConfigTest {
-
- import room.basic.types.* from "Types.room"
-
- SubSystemClass SubSystem_StaticConfigTest {
- ActorRef top: Top_ac
-
- LogicalThread dflt_thread
- }
-
- ActorClass Top_ac {
- Structure {
- ActorRef testee_1: Testee_1_ac
- ActorRef tester: Tester_ac
- LayerConnection ref testee_1 satisfied_by tester.spp
- }
- Behavior {
- Operation Top_ac() {
- "etUnit_open(\"tmp\", \"StaticConfigTest\");"
- "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.StaticConfigTest\");"
- }
- Operation ~Top_ac() {
- "etUnit_closeTestSuite();"
- "etUnit_close();"
- }
- }
- }
-
- ActorClass Tester_ac {
- Interface {
- SPP spp: TestProtocolWithDataClass
- }
- Structure {
- ServiceImplementation of spp
- Attribute caseId: int32
-
- // none config test
- Attribute data_3: Data_3_dc
- ActorRef testee_super2: Testee_Super2_ac
- }
- Behavior {
- Operation Tester_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Tester_ac\");"
- }
- Operation ~Tester_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
- "data_3.varCheck3(caseId);"
- "SubSystemClassBase subSystem = (SubSystemClassBase) ((ActorClassBase)getParent()).getParent();"
- "Testee_Super2_ac testee_super2 = (Testee_Super2_ac) subSystem.getInstance(\"/System_StaticConfigTest/subSystem/top/tester/testee_super2\");"
- "int caseId_2 = testee_super2.getCaseId();"
- "testee_super2.getReg_port().varCheck(caseId_2);"
- "EXPECT_TRUE(caseId_2, \"Tester_ac:1\", testee_super2.getFloat64_super_r() == 1.1);"
- "EXPECT_TRUE(caseId_2, \"Tester_ac:2\", testee_super2.getFloat64_super_c() == 2.2);"
- "EXPECT_TRUE(caseId_2, \"Tester_ac:3\", testee_super2.getFloat64_super_i() == 3.3);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"Tester_ac:4\", 25.f, testee_super2.getReg_port().getFloat_i(), 0.1f);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass Testee_1_ac {
- Interface {
- conjugated Port conj_port: TestProtocolAttributes
- }
- Structure {
- external Port conj_port
- Attribute caseId: int32
- Attribute data_1: Data_1_dc
- ActorRef testee_2: Testee_2_ac
- }
- Behavior {
- Operation Testee_1_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_1_ac\");"
- }
- Operation ~Testee_1_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
- "conj_port.varCheck();"
- "data_1.varCheck1(caseId);"
- "EXPECT_FALSE(caseId,\"testee_1:data_1:1\", getData_1().getBool_c());"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:2\", getData_1().getInt8_c() == 24);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:3\", getData_1().getInt16_c() == 48);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:4\", getData_1().getInt32_c() == 96);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:5\", getData_1().getInt64_c() == 192);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:6\", 9.6f, getData_1().getFloat32_c(), 0.1f);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:7\", getData_1().getFloat64_c() == 19.2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:8\", getData_1().getChar_c() == \'C\');"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:9\", getData_1().getString_c().equals(\":)\"));"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:10\", getData_1().getBool_i());"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:11\", getData_1().getInt8_i() == 2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:12\", getData_1().getInt16_i() == 4);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:13\", getData_1().getInt32_i() == 8);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:14\", getData_1().getInt64_i() == 16);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:15\", 1.6f, getData_1().getFloat32_i(), 0.1f);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:16\", getData_1().getFloat64_i() == 3.2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:17\", getData_1().getChar_i() == \'I\');"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:18\", getData_1().getString_i().equals(\":]\"));"
-
- // Array
- "EXPECT_TRUE(caseId,\"testee_1:data_1:19\", getData_1().getBool_array_c()[0] == true && getData_1().getBool_array_c()[1] == false);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:20\", getData_1().getInt8_array_c()[0] == 24 && getData_1().getInt8_array_c()[1] == 48);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:21\", getData_1().getInt16_array_c()[0] == 48 && getData_1().getInt16_array_c()[1] == 96);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:22\", getData_1().getInt32_array_c()[0] == 96 && getData_1().getInt32_array_c()[1] == 192);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:23\", getData_1().getInt64_array_c()[0] == 192 && getData_1().getInt64_array_c()[1] == 384);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:24\", getData_1().getFloat32_array_c()[0] == 9.6f && getData_1().getFloat32_array_c()[1] == 9.6f);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:25\", getData_1().getFloat64_array_c()[0] == 19.2 && getData_1().getFloat64_array_c()[1] == 19.2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:26\", String.valueOf(getData_1().getChar_array_c()).equals(\"Claz\"));"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:27\", getData_1().getBool_array_i()[0] == true && getData_1().getBool_array_i()[1] == true);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:28\", getData_1().getInt8_array_i()[0] == 2 && getData_1().getInt8_array_i()[1] == 6);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:29\", getData_1().getInt16_array_i()[0] == 4 && getData_1().getInt16_array_i()[1] == 12);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:30\", getData_1().getInt32_array_i()[0] == 8 && getData_1().getInt32_array_i()[1] == 24);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:31\", getData_1().getInt64_array_i()[0] == 16 && getData_1().getInt64_array_i()[1] == 48);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:32\", getData_1().getFloat32_array_i()[0] == 1.6f && getData_1().getFloat32_array_i()[1] == 1.6f);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:33\", getData_1().getFloat64_array_i()[0] == 3.2 && getData_1().getFloat64_array_i()[1] == 3.2);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:34\", String.valueOf(getData_1().getChar_array_i()).equals(\"Inst\"));"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:35\", getData_1().getData_2().getInt32_c() == 42);"
- "EXPECT_TRUE(caseId,\"testee_1:data_1:36\", getData_1().getData_2().getInt32_i() == 43);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ActorClass Testee_Super2_ac {
- Interface {
- Port reg_port: TestProtocolAttributes
- }
- Structure {
- external Port reg_port
- Attribute caseId: int32
-
- // test
- Attribute data_2: Data_2_dc
- Attribute float64_super_r: float64 = "1.1"
- Attribute float64_super_c: float64 = "1.1"
- Attribute float64_super_i: float64 = "1.1"
- }
- Behavior {
- Operation Testee_Super2_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_Super2_ac\");"
- }
- Operation ~Testee_Super2_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- }
- }
-
- ActorClass Testee_2_ac extends Testee_Super2_ac {
- Structure {
- SAP sap: TestProtocolWithDataClass
- Attribute int32_own_r: int32 = "11"
- Attribute int32_own_c: int32 = "11"
- Attribute int32_own_i: int32 = "11"
- }
- Behavior {
- Operation Testee_2_ac() {
- "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_2_ac\");"
- }
- Operation ~Testee_2_ac() {
- "etUnit_closeTestCase(caseId);"
- }
- StateMachine {
- Transition init: initial -> s1 { }
- State s1 {
- entry {
- "sap.varCheck(caseId);"
- "reg_port.varCheck(caseId);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:1\", float64_super_c == 2.2);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:2\", float64_super_i == 4.4);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:3\", int32_own_r == 11);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:4\", int32_own_c == 12);"
- "EXPECT_TRUE(caseId, \"Testee_2_ac:5\", int32_own_i == 13);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"Testee_2_ac:reg_port:6\", 50.f, reg_port.getFloat_i(), 0.1f);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
-
- ProtocolClass TestProtocolAttributes {
- incoming {
- Message dummy()
- }
- regular PortClass
- {
- Attribute float_r: float32 = "4"
- Attribute float_c: float32 = "16"
- Attribute float_i: float32 = "256"
- Operation varCheck(caseId: int32): void {
- "EXPECT_EQUAL_FLOAT32(caseId,\"TestProtocolAttributes:1\", 4.f, float_r, 0.1f);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"TestProtocolAttributes:2\", 3.f, float_c, 0.1f);"
- }
- }
- conjugate PortClass
- {
- Attribute array2_r [ 2 ]: int64 = "{11,22}"
- Attribute array2_c [ 2 ]: int64 = "{0,0}"
- Attribute array2_i [ 2 ]: int64 = "{0,0}"
- Operation varCheck(): void {
- "int caseId = etUnit_openTestCase(\"ConfigTest_case_PortProtocol_conjugated\");"
- "EXPECT_TRUE(caseId,\"array2_r[0]: <|MODEL_LOCATION|>\", array2_r[0] == 11);"
- "EXPECT_TRUE(caseId,\"array2_r[1]: <|MODEL_LOCATION|>\", array2_r[1] == 22);"
- "EXPECT_TRUE(caseId,\"array2_c[0]: <|MODEL_LOCATION|>\", array2_c[0] == 16);"
- "EXPECT_TRUE(caseId,\"array2_c[1]: <|MODEL_LOCATION|>\", array2_c[1] == 32);"
- "EXPECT_TRUE(caseId,\"array2_i[0]: <|MODEL_LOCATION|>\", array2_i[0] == 1);"
- "EXPECT_TRUE(caseId,\"array2_i[1]: <|MODEL_LOCATION|>\", array2_i[1] == 2);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
-
- ProtocolClass TestProtocolWithDataClass {
- incoming {
- Message dummy()
- }
-
- //SAP
- conjugate PortClass
- {
- Attribute sap_data_2: Data_2_dc
-
- // none config test
- Attribute sap_data_3: Data_3_dc
- Operation varCheck(caseId: int32): void {
- "sap_data_2.varCheck2(caseId);"
- "sap_data_3.varCheck3(caseId);"
- "EXPECT_TRUE(caseId, \"TestProtocolWithDataClass:1\", getSap_data_2().getInt32_c() == 2);"
- "EXPECT_TRUE(caseId, \"TestProtocolWithDataClass:1\", getSap_data_2().getInt32_i() == 3);"
- }
- }
- }
-
- ExternalType extType -> External_Type_Test
-
- DataClass Data_Super1_dc {
-
- // PrimitiveType
- Attribute bool_r: boolean = "falSe"
- Attribute bool_c: boolean = "false"
- Attribute bool_i: boolean = "false"
- Attribute int8_r: int8 = "8"
- Attribute int8_c: int8 = "8"
- Attribute int8_i: int8 = "8"
-
- // Array
- Attribute bool_array_r [ 2 ]: boolean = "{ FALSE, false }"
- Attribute bool_array_c [ 2 ]: boolean = "{ false, false }"
- Attribute bool_array_i [ 2 ]: boolean = "{ false, false }"
- Attribute int8_array_r [ 2 ]: int8 = "{ 8, 16 }"
- Attribute int8_array_c [ 2 ]: int8 = "{ 8, 16 }"
- Attribute int8_array_i [ 2 ]: int8 = "{ 8, 16 }"
- }
-
- DataClass Data_1_dc extends Data_Super1_dc {
- Attribute int16_r: int16 = "16"
- Attribute int16_c: int16 = "16"
- Attribute int16_i: int16 = "16"
- Attribute int32_r: int32 = "32"
- Attribute int32_c: int32 = "32"
- Attribute int32_i: int32 = "32"
- Attribute int64_r: int64 = "64"
- Attribute int64_c: int64 = "64"
- Attribute int64_i: int64 = "64"
- Attribute float32_r: float32 = "3.2"
- Attribute float32_c: float32 = "3.2"
- Attribute float32_i: float32 = "3.2"
- Attribute float64_r: float64 = "6.4"
- Attribute float64_c: float64 = "6.4"
- Attribute float64_i: float64 = "6.4"
- Attribute char_r: char = "R"
- Attribute char_c: char = 'R'
- Attribute char_i: char = "R"
- Attribute string_r: string = ":/"
- Attribute string_c: string = ":/"
- Attribute string_i: string = ":/"
-
- // Array
- Attribute int16_array_r [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int16_array_c [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int16_array_i [ 2 ]: int16 = "{ 16, 32 }"
- Attribute int32_array_r [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int32_array_c [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int32_array_i [ 2 ]: int32 = "{ 32, 64 }"
- Attribute int64_array_r [ 2 ]: int64 = "{ 64, 128 }"
- Attribute int64_array_c [ 2 ]: int64 = "{ 64, 128 }"
- Attribute int64_array_i [ 2 ]: int64 = "{ 64, 128 }"
- Attribute float32_array_r [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float32_array_c [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float32_array_i [ 2 ]: float32 = "{ 3.2, 6.4 }"
- Attribute float64_array_r [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute float64_array_c [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute float64_array_i [ 2 ]: float64 = "{ 6.4, 12.8 }"
- Attribute char_array_r [ 5 ]: char = "ROOM"
- Attribute char_array_c [ 5 ]: char = "ROOM"
- Attribute char_array_i [ 5 ]: char = "ROOM"
-
- // ComplexType
- Attribute data_2: Data_2_dc
- Operation varCheck1(caseId: int32) {
- "data_2.varCheck2(caseId);"
-
- // PrimitiveType
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:1\", bool_r == false);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:2\", int8_r == 8);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:3\", int16_r == 16);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:4\", int32_r == 32);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:5\", int64_r == 64);"
- "EXPECT_EQUAL_FLOAT32(caseId,\"Data_1_dc:varCheck:6\", 3.2f, float32_r, 0.1f);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:7\", float64_r == 6.4);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", char_r == \'R\');"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:9\", string_r.equals(\":/\"));"
-
- // Array
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:10\", bool_array_r[0] == false && bool_array_r[1] == false);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:11\", int8_array_r[0] == 8 && int8_array_r[1] == 16);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:12\", int16_array_r[0] == 16 && int16_array_r[1] == 32);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:13\", int32_array_r[0] == 32 && int32_array_r[1] == 64);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:24\", int64_array_r[0] == 64 && int64_array_r[1] == 128);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:25\", float32_array_r[0] == 3.2f && float32_array_r[1] == 6.4f);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:26\", float64_array_r[0] == 6.4 && float64_array_r[1] == 12.8);"
- "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:27\", String.valueOf(char_array_r).equals(\"ROOM\"));"
- }
- }
-
- DataClass Data_2_dc {
- Attribute int32_r: int32 = "1"
- Attribute int32_c: int32 = "1"
- Attribute int32_i: int32 = "1"
- Operation varCheck2(caseId: int32): void {
- "EXPECT_TRUE(caseId, \"Data_2_dc:1\", int32_r == 1);"
- }
- }
-
- DataClass Data_3_dc {
-
- // none config test
- Attribute dataClass_array [ 2 ]: Data_2_dc
- Attribute dataClass_ref: Data_2_dc ref
- Attribute dataClass_ref_array [ 2 ]: Data_2_dc ref
- Attribute ext_type: extType
- Attribute ext_type_array [ 2 ]: extType
- Attribute ext_type_ref: extType ref
- Attribute ext_type_ref_array [ 2 ]: extType ref
- Attribute primitive_array_ref [ 2 ]: int8 ref
- Attribute string_ref: string ref
-
- // no check at all
- Attribute primitive1_ref: int8 ref
- Attribute primitive3_ref: char ref
- Operation varCheck3(caseId: int32): void {
- "EXPECT_TRUE(caseId, \"Data_3_dc:1\", dataClass_ref == null);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:2\", dataClass_array[0].getInt32_r() == 1);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:3\", dataClass_array[1].getInt32_c() == 1);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_ref_array[0] == null && dataClass_ref_array[1] == null);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:5\", ext_type instanceof External_Type_Test);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:6\", ext_type_array[0] instanceof External_Type_Test && ext_type_array[1] instanceof External_Type_Test);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:7\", ext_type_ref == null);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:8\", ext_type_ref_array[0] == null && ext_type_ref_array[1] == null);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:9\", primitive_array_ref instanceof byte[]);"
- "EXPECT_TRUE(caseId, \"Data_3_dc:10\", string_ref == null);"
- }
- }
-
-}
+RoomModel StaticConfigTest { + + import room.basic.types.* from "Types.room" + + SubSystemClass SubSystem_StaticConfigTest { + ActorRef top: Top_ac + + LogicalThread dflt_thread + } + + ActorClass Top_ac { + Structure { + ActorRef testee_1: Testee_1_ac + ActorRef tester: Tester_ac + LayerConnection ref testee_1 satisfied_by tester.spp + } + Behavior { + Operation Top_ac() { + "etUnit_open(\"tmp\", \"StaticConfigTest\");" + "etUnit_openTestSuite(\"org.eclipse.etrice.generator.common.tests.StaticConfigTest\");" + } + Operation ~Top_ac() { + "etUnit_closeTestSuite();" + "etUnit_close();" + } + } + } + + ActorClass Tester_ac { + Interface { + SPP spp: TestProtocolWithDataClass + } + Structure { + ServiceImplementation of spp + Attribute caseId: int32 + + // none config test + Attribute data_3: Data_3_dc + ActorRef testee_super2: Testee_Super2_ac + } + Behavior { + Operation Tester_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Tester_ac\");" + } + Operation ~Tester_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + "data_3.varCheck3(caseId);" + "SubSystemClassBase subSystem = (SubSystemClassBase) ((ActorClassBase)getParent()).getParent();" + "Testee_Super2_ac testee_super2 = (Testee_Super2_ac) subSystem.getInstance(\"/System_StaticConfigTest/subSystem/top/tester/testee_super2\");" + "int caseId_2 = testee_super2.getCaseId();" + "testee_super2.getReg_port().varCheck(caseId_2);" + "EXPECT_TRUE(caseId_2, \"Tester_ac:1\", testee_super2.getFloat64_super_r() == 1.1);" + "EXPECT_TRUE(caseId_2, \"Tester_ac:2\", testee_super2.getFloat64_super_c() == 2.2);" + "EXPECT_TRUE(caseId_2, \"Tester_ac:3\", testee_super2.getFloat64_super_i() == 3.3);" + "EXPECT_EQUAL_FLOAT32(caseId,\"Tester_ac:4\", 25.f, testee_super2.getReg_port().getFloat_i(), 0.1f);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass Testee_1_ac { + Interface { + conjugated Port conj_port: TestProtocolAttributes + } + Structure { + external Port conj_port + Attribute caseId: int32 + Attribute data_1: Data_1_dc + ActorRef testee_2: Testee_2_ac + } + Behavior { + Operation Testee_1_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_1_ac\");" + } + Operation ~Testee_1_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + "conj_port.varCheck();" + "data_1.varCheck1(caseId);" + "EXPECT_FALSE(caseId,\"testee_1:data_1:1\", getData_1().getBool_c());" + "EXPECT_TRUE(caseId,\"testee_1:data_1:2\", getData_1().getInt8_c() == 24);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:3\", getData_1().getInt16_c() == 48);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:4\", getData_1().getInt32_c() == 96);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:5\", getData_1().getInt64_c() == 192);" + "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:6\", 9.6f, getData_1().getFloat32_c(), 0.1f);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:7\", getData_1().getFloat64_c() == 19.2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:8\", getData_1().getChar_c() == \'C\');" + "EXPECT_TRUE(caseId,\"testee_1:data_1:9\", getData_1().getString_c().equals(\":)\"));" + "EXPECT_TRUE(caseId,\"testee_1:data_1:10\", getData_1().getBool_i());" + "EXPECT_TRUE(caseId,\"testee_1:data_1:11\", getData_1().getInt8_i() == 2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:12\", getData_1().getInt16_i() == 4);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:13\", getData_1().getInt32_i() == 8);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:14\", getData_1().getInt64_i() == 16);" + "EXPECT_EQUAL_FLOAT32(caseId,\"testee_1:data_1:15\", 1.6f, getData_1().getFloat32_i(), 0.1f);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:16\", getData_1().getFloat64_i() == 3.2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:17\", getData_1().getChar_i() == \'I\');" + "EXPECT_TRUE(caseId,\"testee_1:data_1:18\", getData_1().getString_i().equals(\":]\"));" + + // Array + "EXPECT_TRUE(caseId,\"testee_1:data_1:19\", getData_1().getBool_array_c()[0] == true && getData_1().getBool_array_c()[1] == false);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:20\", getData_1().getInt8_array_c()[0] == 24 && getData_1().getInt8_array_c()[1] == 48);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:21\", getData_1().getInt16_array_c()[0] == 48 && getData_1().getInt16_array_c()[1] == 96);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:22\", getData_1().getInt32_array_c()[0] == 96 && getData_1().getInt32_array_c()[1] == 192);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:23\", getData_1().getInt64_array_c()[0] == 192 && getData_1().getInt64_array_c()[1] == 384);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:24\", getData_1().getFloat32_array_c()[0] == 9.6f && getData_1().getFloat32_array_c()[1] == 9.6f);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:25\", getData_1().getFloat64_array_c()[0] == 19.2 && getData_1().getFloat64_array_c()[1] == 19.2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:26\", String.valueOf(getData_1().getChar_array_c()).equals(\"Claz\"));" + "EXPECT_TRUE(caseId,\"testee_1:data_1:27\", getData_1().getBool_array_i()[0] == true && getData_1().getBool_array_i()[1] == true);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:28\", getData_1().getInt8_array_i()[0] == 2 && getData_1().getInt8_array_i()[1] == 6);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:29\", getData_1().getInt16_array_i()[0] == 4 && getData_1().getInt16_array_i()[1] == 12);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:30\", getData_1().getInt32_array_i()[0] == 8 && getData_1().getInt32_array_i()[1] == 24);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:31\", getData_1().getInt64_array_i()[0] == 16 && getData_1().getInt64_array_i()[1] == 48);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:32\", getData_1().getFloat32_array_i()[0] == 1.6f && getData_1().getFloat32_array_i()[1] == 1.6f);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:33\", getData_1().getFloat64_array_i()[0] == 3.2 && getData_1().getFloat64_array_i()[1] == 3.2);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:34\", String.valueOf(getData_1().getChar_array_i()).equals(\"Inst\"));" + "EXPECT_TRUE(caseId,\"testee_1:data_1:35\", getData_1().getData_2().getInt32_c() == 42);" + "EXPECT_TRUE(caseId,\"testee_1:data_1:36\", getData_1().getData_2().getInt32_i() == 43);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ActorClass Testee_Super2_ac { + Interface { + Port reg_port: TestProtocolAttributes + } + Structure { + external Port reg_port + Attribute caseId: int32 + + // test + Attribute data_2: Data_2_dc + Attribute float64_super_r: float64 = "1.1" + Attribute float64_super_c: float64 = "1.1" + Attribute float64_super_i: float64 = "1.1" + } + Behavior { + Operation Testee_Super2_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_Super2_ac\");" + } + Operation ~Testee_Super2_ac() { + "etUnit_closeTestCase(caseId);" + } + } + } + + ActorClass Testee_2_ac extends Testee_Super2_ac { + Structure { + SAP sap: TestProtocolWithDataClass + Attribute int32_own_r: int32 = "11" + Attribute int32_own_c: int32 = "11" + Attribute int32_own_i: int32 = "11" + } + Behavior { + Operation Testee_2_ac() { + "caseId = etUnit_openTestCase(\"AttrConfigTest_case_Testee_2_ac\");" + } + Operation ~Testee_2_ac() { + "etUnit_closeTestCase(caseId);" + } + StateMachine { + Transition init: initial -> s1 { } + State s1 { + entry { + "sap.varCheck(caseId);" + "reg_port.varCheck(caseId);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:1\", float64_super_c == 2.2);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:2\", float64_super_i == 4.4);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:3\", int32_own_r == 11);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:4\", int32_own_c == 12);" + "EXPECT_TRUE(caseId, \"Testee_2_ac:5\", int32_own_i == 13);" + "EXPECT_EQUAL_FLOAT32(caseId,\"Testee_2_ac:reg_port:6\", 50.f, reg_port.getFloat_i(), 0.1f);" + "etUnit_testFinished(caseId);" + } + } + } + } + } + + ProtocolClass TestProtocolAttributes { + incoming { + Message dummy() + } + regular PortClass + { + Attribute float_r: float32 = "4" + Attribute float_c: float32 = "16" + Attribute float_i: float32 = "256" + Operation varCheck(caseId: int32): void { + "EXPECT_EQUAL_FLOAT32(caseId,\"TestProtocolAttributes:1\", 4.f, float_r, 0.1f);" + "EXPECT_EQUAL_FLOAT32(caseId,\"TestProtocolAttributes:2\", 3.f, float_c, 0.1f);" + } + } + conjugate PortClass + { + Attribute array2_r [ 2 ]: int64 = "{11,22}" + Attribute array2_c [ 2 ]: int64 = "{0,0}" + Attribute array2_i [ 2 ]: int64 = "{0,0}" + Operation varCheck(): void { + "int caseId = etUnit_openTestCase(\"ConfigTest_case_PortProtocol_conjugated\");" + "EXPECT_TRUE(caseId,\"array2_r[0]: <|MODEL_LOCATION|>\", array2_r[0] == 11);" + "EXPECT_TRUE(caseId,\"array2_r[1]: <|MODEL_LOCATION|>\", array2_r[1] == 22);" + "EXPECT_TRUE(caseId,\"array2_c[0]: <|MODEL_LOCATION|>\", array2_c[0] == 16);" + "EXPECT_TRUE(caseId,\"array2_c[1]: <|MODEL_LOCATION|>\", array2_c[1] == 32);" + "EXPECT_TRUE(caseId,\"array2_i[0]: <|MODEL_LOCATION|>\", array2_i[0] == 1);" + "EXPECT_TRUE(caseId,\"array2_i[1]: <|MODEL_LOCATION|>\", array2_i[1] == 2);" + "etUnit_testFinished(caseId);" + } + } + } + + ProtocolClass TestProtocolWithDataClass { + incoming { + Message dummy() + } + + //SAP + conjugate PortClass + { + Attribute sap_data_2: Data_2_dc + + // none config test + Attribute sap_data_3: Data_3_dc + Operation varCheck(caseId: int32): void { + "sap_data_2.varCheck2(caseId);" + "sap_data_3.varCheck3(caseId);" + "EXPECT_TRUE(caseId, \"TestProtocolWithDataClass:1\", getSap_data_2().getInt32_c() == 2);" + "EXPECT_TRUE(caseId, \"TestProtocolWithDataClass:1\", getSap_data_2().getInt32_i() == 3);" + } + } + } + + ExternalType extType -> External_Type_Test + + DataClass Data_Super1_dc { + + // PrimitiveType + Attribute bool_r: boolean = "falSe" + Attribute bool_c: boolean = "false" + Attribute bool_i: boolean = "false" + Attribute int8_r: int8 = "8" + Attribute int8_c: int8 = "8" + Attribute int8_i: int8 = "8" + + // Array + Attribute bool_array_r [ 2 ]: boolean = "{ FALSE, false }" + Attribute bool_array_c [ 2 ]: boolean = "{ false, false }" + Attribute bool_array_i [ 2 ]: boolean = "{ false, false }" + Attribute int8_array_r [ 2 ]: int8 = "{ 8, 16 }" + Attribute int8_array_c [ 2 ]: int8 = "{ 8, 16 }" + Attribute int8_array_i [ 2 ]: int8 = "{ 8, 16 }" + } + + DataClass Data_1_dc extends Data_Super1_dc { + Attribute int16_r: int16 = "16" + Attribute int16_c: int16 = "16" + Attribute int16_i: int16 = "16" + Attribute int32_r: int32 = "32" + Attribute int32_c: int32 = "32" + Attribute int32_i: int32 = "32" + Attribute int64_r: int64 = "64" + Attribute int64_c: int64 = "64" + Attribute int64_i: int64 = "64" + Attribute float32_r: float32 = "3.2" + Attribute float32_c: float32 = "3.2" + Attribute float32_i: float32 = "3.2" + Attribute float64_r: float64 = "6.4" + Attribute float64_c: float64 = "6.4" + Attribute float64_i: float64 = "6.4" + Attribute char_r: char = "R" + Attribute char_c: char = 'R' + Attribute char_i: char = "R" + Attribute string_r: string = ":/" + Attribute string_c: string = ":/" + Attribute string_i: string = ":/" + + // Array + Attribute int16_array_r [ 2 ]: int16 = "{ 16, 32 }" + Attribute int16_array_c [ 2 ]: int16 = "{ 16, 32 }" + Attribute int16_array_i [ 2 ]: int16 = "{ 16, 32 }" + Attribute int32_array_r [ 2 ]: int32 = "{ 32, 64 }" + Attribute int32_array_c [ 2 ]: int32 = "{ 32, 64 }" + Attribute int32_array_i [ 2 ]: int32 = "{ 32, 64 }" + Attribute int64_array_r [ 2 ]: int64 = "{ 64, 128 }" + Attribute int64_array_c [ 2 ]: int64 = "{ 64, 128 }" + Attribute int64_array_i [ 2 ]: int64 = "{ 64, 128 }" + Attribute float32_array_r [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float32_array_c [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float32_array_i [ 2 ]: float32 = "{ 3.2, 6.4 }" + Attribute float64_array_r [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute float64_array_c [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute float64_array_i [ 2 ]: float64 = "{ 6.4, 12.8 }" + Attribute char_array_r [ 5 ]: char = "ROOM" + Attribute char_array_c [ 5 ]: char = "ROOM" + Attribute char_array_i [ 5 ]: char = "ROOM" + + // ComplexType + Attribute data_2: Data_2_dc + Operation varCheck1(caseId: int32) { + "data_2.varCheck2(caseId);" + + // PrimitiveType + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:1\", bool_r == false);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:2\", int8_r == 8);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:3\", int16_r == 16);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:4\", int32_r == 32);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:5\", int64_r == 64);" + "EXPECT_EQUAL_FLOAT32(caseId,\"Data_1_dc:varCheck:6\", 3.2f, float32_r, 0.1f);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:7\", float64_r == 6.4);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:8\", char_r == \'R\');" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:9\", string_r.equals(\":/\"));" + + // Array + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:10\", bool_array_r[0] == false && bool_array_r[1] == false);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:11\", int8_array_r[0] == 8 && int8_array_r[1] == 16);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:12\", int16_array_r[0] == 16 && int16_array_r[1] == 32);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:13\", int32_array_r[0] == 32 && int32_array_r[1] == 64);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:24\", int64_array_r[0] == 64 && int64_array_r[1] == 128);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:25\", float32_array_r[0] == 3.2f && float32_array_r[1] == 6.4f);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:26\", float64_array_r[0] == 6.4 && float64_array_r[1] == 12.8);" + "EXPECT_TRUE(caseId,\"Data_1_dc:varCheck:27\", String.valueOf(char_array_r).equals(\"ROOM\"));" + } + } + + DataClass Data_2_dc { + Attribute int32_r: int32 = "1" + Attribute int32_c: int32 = "1" + Attribute int32_i: int32 = "1" + Operation varCheck2(caseId: int32): void { + "EXPECT_TRUE(caseId, \"Data_2_dc:1\", int32_r == 1);" + } + } + + DataClass Data_3_dc { + + // none config test + Attribute dataClass_array [ 2 ]: Data_2_dc + Attribute dataClass_ref: Data_2_dc ref + Attribute dataClass_ref_array [ 2 ]: Data_2_dc ref + Attribute ext_type: extType + Attribute ext_type_array [ 2 ]: extType + Attribute ext_type_ref: extType ref + Attribute ext_type_ref_array [ 2 ]: extType ref + Attribute primitive_array_ref [ 2 ]: int8 ref + Attribute string_ref: string ref + + // no check at all + Attribute primitive1_ref: int8 ref + Attribute primitive3_ref: char ref + Operation varCheck3(caseId: int32): void { + "EXPECT_TRUE(caseId, \"Data_3_dc:1\", dataClass_ref == null);" + "EXPECT_TRUE(caseId, \"Data_3_dc:2\", dataClass_array[0].getInt32_r() == 1);" + "EXPECT_TRUE(caseId, \"Data_3_dc:3\", dataClass_array[1].getInt32_c() == 1);" + "EXPECT_TRUE(caseId, \"Data_3_dc:4\", dataClass_ref_array[0] == null && dataClass_ref_array[1] == null);" + "EXPECT_TRUE(caseId, \"Data_3_dc:5\", ext_type instanceof External_Type_Test);" + "EXPECT_TRUE(caseId, \"Data_3_dc:6\", ext_type_array[0] instanceof External_Type_Test && ext_type_array[1] instanceof External_Type_Test);" + "EXPECT_TRUE(caseId, \"Data_3_dc:7\", ext_type_ref == null);" + "EXPECT_TRUE(caseId, \"Data_3_dc:8\", ext_type_ref_array[0] == null && ext_type_ref_array[1] == null);" + "EXPECT_TRUE(caseId, \"Data_3_dc:9\", primitive_array_ref instanceof byte[]);" + "EXPECT_TRUE(caseId, \"Data_3_dc:10\", string_ref == null);" + } + } + +} diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/TCPTest.room b/tests/org.eclipse.etrice.generator.common.tests/models/TCPTest.room index 0ab7afb74..d92f49edc 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/TCPTest.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/TCPTest.room @@ -1,163 +1,163 @@ -RoomModel TCPTest {
- import room.basic.types.* from "Types.room"
- import room.basic.service.tcp.* from "TcpService.room"
-
- SubSystemClass SubSystem_TCPTest {
- ActorRef TCPTestTopRef:TCPTestTop
-
- LogicalThread dflt_thread
- }
-
- ActorClass TCPTestTop {
- Structure {
- ActorRef ref0: ATcpServer
- ActorRef ref1 [ 5 ]: ATcpClient
- ActorRef ref2: Tester
- Binding ref2.p1 and ref0.PayloadPort
- Binding ref2.p0 and ref0.ControlPort
- Binding ref2.p2 and ref1.ControlPort
- Binding ref2.p3 and ref1.PayloadPort
- }
- Behavior { }
- }
-
- ActorClass Tester {
- Interface {
- conjugated Port p0: PTcpControl
- conjugated Port p1: PTcpPayload
- conjugated Port p2 [*]: PTcpControl
- conjugated Port p3 [5]: PTcpPayload
- }
- Structure {
- external Port p0
- external Port p1
- external Port p2
- external Port p3
- Attribute controlData:DTcpControl
- Attribute testData:DTcpPayload
- Attribute counter:int32
- Attribute resultPattern:int32
- Attribute pattern:int32
- Attribute caseId: int32
- Attribute resultlist[3]: int16 = "{1,2,3}"
-
- }
- Behavior {
- Operation Tester() {
- "caseId = etUnit_openAll(\"tmp\", \"TCPTest\", \"org.eclipse.etrice.generator.common.tests.TCPTest\", \"TCPTest_case\");"
- }
- Operation ~Tester() {
- "etUnit_closeAll(caseId);"
- }
- StateMachine {
- Transition init: initial -> state0 {
- action {
- "EXPECT_ORDER_START(caseId,resultlist,3);"
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);"
- "// open Server"
- "controlData.setIPAddr(\"127.0.0.1\");"
- "controlData.setTcpPort(4711);"
- "p0.open(controlData);"
- }
- }
- Transition tr0: state0 -> state1 {
- triggers {
- <established: p0>
- }
- action {
- "// open 5 clients"
- "for (int i=0;i<p2.getReplication();i++){"
- "p2[i].open(controlData);"
- "}"
- "counter=0;"
- }
- }
- Transition tr1: state1 -> cp cp0 {
- triggers {
- <established: p2>
- }
- action {
- "counter++;"
- }
- }
- Transition tr4: cp cp0 -> state1
- Transition tr5: cp cp0 -> state2 {
- cond {
- "counter>=p2.getReplication()"
- }
- action {
- "String s=new String (\"Test!\");"
- "testData.setData(s.getBytes());"
- "testData.setLength(s.length());"
- "testData.setConnectionId(0);"
- "for (int i=0; i<p3.getReplication();i++){"
- "\tp3[i].send(testData);"
- "}"
- "counter=0;"
- "resultPattern=0;"
- }
- }
- Transition tr8: state2 -> cp cp2 {
- triggers {
- <receive: p3>
- }
- action {
- "resultPattern+=p3.getIndexOf(ifitem);"
- "//System.out.printf(\"c:%d, Idx:%d!\\n\", counter,p3.getIndexOf(ifitem));"
- "counter++;"
- }
- }
- Transition tr9: cp cp2 -> state2
- Transition tr10: cp cp2 -> cp cp1 {
- cond {
- "counter>=p2.getReplication()"
- }
- action {
- "int i;"
- "p0.close();"
- "// close all clients"
- "p2.close();"
- "pattern=0;"
- "for (i=0;i<p2.getReplication();i++){"
- "\tpattern+=i;"
- "}"
- }
- }
- Transition tr3: state2 -> state2 {
- triggers {
- <receive: p1>
- }
- action {
- "p1.send(data);"
- }
- }
- Transition tr2: cp cp1 -> test_failed
- Transition tr6: cp cp1 -> test_ok {
- cond {
- "pattern==resultPattern"
- }
- }
- ChoicePoint cp0
- ChoicePoint cp2
- ChoicePoint cp1
- State state0
- State state1
- State state2
- State test_ok {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);"
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 3);"
- "etUnit_testFinished(caseId);"
- }
- }
- State test_failed {
- entry {
- "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 3);"
- "etUnit_testFinished(caseId);"
- }
- }
- }
- }
- }
+RoomModel TCPTest { + import room.basic.types.* from "Types.room" + import room.basic.service.tcp.* from "TcpService.room" + + SubSystemClass SubSystem_TCPTest { + ActorRef TCPTestTopRef:TCPTestTop + + LogicalThread dflt_thread + } + + ActorClass TCPTestTop { + Structure { + ActorRef ref0: ATcpServer + ActorRef ref1 [ 5 ]: ATcpClient + ActorRef ref2: Tester + Binding ref2.p1 and ref0.PayloadPort + Binding ref2.p0 and ref0.ControlPort + Binding ref2.p2 and ref1.ControlPort + Binding ref2.p3 and ref1.PayloadPort + } + Behavior { } + } + + ActorClass Tester { + Interface { + conjugated Port p0: PTcpControl + conjugated Port p1: PTcpPayload + conjugated Port p2 [*]: PTcpControl + conjugated Port p3 [5]: PTcpPayload + } + Structure { + external Port p0 + external Port p1 + external Port p2 + external Port p3 + Attribute controlData:DTcpControl + Attribute testData:DTcpPayload + Attribute counter:int32 + Attribute resultPattern:int32 + Attribute pattern:int32 + Attribute caseId: int32 + Attribute resultlist[3]: int16 = "{1,2,3}" + + } + Behavior { + Operation Tester() { + "caseId = etUnit_openAll(\"tmp\", \"TCPTest\", \"org.eclipse.etrice.generator.common.tests.TCPTest\", \"TCPTest_case\");" + } + Operation ~Tester() { + "etUnit_closeAll(caseId);" + } + StateMachine { + Transition init: initial -> state0 { + action { + "EXPECT_ORDER_START(caseId,resultlist,3);" + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 1);" + "// open Server" + "controlData.setIPAddr(\"127.0.0.1\");" + "controlData.setTcpPort(4711);" + "p0.open(controlData);" + } + } + Transition tr0: state0 -> state1 { + triggers { + <established: p0> + } + action { + "// open 5 clients" + "for (int i=0;i<p2.getReplication();i++){" + "p2[i].open(controlData);" + "}" + "counter=0;" + } + } + Transition tr1: state1 -> cp cp0 { + triggers { + <established: p2> + } + action { + "counter++;" + } + } + Transition tr4: cp cp0 -> state1 + Transition tr5: cp cp0 -> state2 { + cond { + "counter>=p2.getReplication()" + } + action { + "String s=new String (\"Test!\");" + "testData.setData(s.getBytes());" + "testData.setLength(s.length());" + "testData.setConnectionId(0);" + "for (int i=0; i<p3.getReplication();i++){" + "\tp3[i].send(testData);" + "}" + "counter=0;" + "resultPattern=0;" + } + } + Transition tr8: state2 -> cp cp2 { + triggers { + <receive: p3> + } + action { + "resultPattern+=p3.getIndexOf(ifitem);" + "//System.out.printf(\"c:%d, Idx:%d!\\n\", counter,p3.getIndexOf(ifitem));" + "counter++;" + } + } + Transition tr9: cp cp2 -> state2 + Transition tr10: cp cp2 -> cp cp1 { + cond { + "counter>=p2.getReplication()" + } + action { + "int i;" + "p0.close();" + "// close all clients" + "p2.close();" + "pattern=0;" + "for (i=0;i<p2.getReplication();i++){" + "\tpattern+=i;" + "}" + } + } + Transition tr3: state2 -> state2 { + triggers { + <receive: p1> + } + action { + "p1.send(data);" + } + } + Transition tr2: cp cp1 -> test_failed + Transition tr6: cp cp1 -> test_ok { + cond { + "pattern==resultPattern" + } + } + ChoicePoint cp0 + ChoicePoint cp2 + ChoicePoint cp1 + State state0 + State state1 + State state2 + State test_ok { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 2);" + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 3);" + "etUnit_testFinished(caseId);" + } + } + State test_failed { + entry { + "EXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);" + "EXPECT_ORDER_END(caseId,\"<|MODEL_LOCATION|>\", 3);" + "etUnit_testFinished(caseId);" + } + } + } + } + }
}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.config b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.config index 651408da8..9d691ad01 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.config +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.config @@ -1,140 +1,140 @@ -ConfigModel StaticTestConfig {
-
- import CGenTests.* from "generator.c.tests.room"
- import StaticConfigTest.* from "StaticConfigTest.room"
-
- ActorClassConfig Tester_ac {
- // nothing
- }
-
- ActorClassConfig Testee_1_ac {
- Attr data_1 {
- Attr bool_c = false
- Attr bool_i = false
- Attr int8_c = 24
- Attr int8_i = 24
- Attr int16_c = 48
- Attr int16_i = 48
- Attr int32_c = 96
- Attr int32_i = 96
- Attr int64_c = 192
- Attr int64_i = 192
- Attr float32_c = 9.6
- Attr float32_i = 9.6
- Attr float64_c = 19.2
- Attr float64_i = 19.2
- Attr char_c = "C"
- Attr char_i = "C"
- Attr string_c = ":)"
- Attr string_i = ":)"
-
- Attr bool_array_c = true, false
- Attr bool_array_i = true, false
- Attr int8_array_c = 24, 48
- Attr int8_array_i = 24, 48
- Attr int16_array_c = 48, 96
- Attr int16_array_i = 48, 96
- Attr int32_array_c = 96, 192
- Attr int32_array_i = 96, 192
- Attr int64_array_c = 192, 384
- Attr int64_array_i = 192, 384
- Attr float32_array_c = 9.6
- Attr float32_array_i = 9.6
- Attr float64_array_c = 19.2
- Attr float64_array_i = 19.2
- Attr char_array_c = "Claz"
- Attr char_array_i = "Claz"
-
- Attr data_2 {
- Attr int32_c = 42
- Attr int32_i = 42
- }
- }
- }
-
- ActorClassConfig Testee_Super2_ac {
- Attr float64_super_c = 2.2
- Attr float64_super_i = 2.2
- }
-
- ActorClassConfig Testee_2_ac {
- Attr int32_own_c = 12
- Attr int32_own_i = 12
- }
-
- ProtocolClassConfig TestProtocolAttributes {
- regular Port{
- Attr float_c = 3.0
- Attr float_i = 3.0
- }
- conjugate Port {
- Attr array2_c = 16, 32
- Attr array2_i = 16, 32
- }
- }
-
- ProtocolClassConfig TestProtocolWithDataClass {
- conjugate Port {
- Attr sap_data_2{
- Attr int32_c = 2
- Attr int32_i = 2
- }
- }
- }
-
- ActorInstanceConfig CGenTests/scTest/top/tester {
- // nothing
- }
-
- ActorInstanceConfig CGenTests/scTest/top/testee_1 {
- Attr data_1 {
- Attr bool_i = true
- Attr int8_i = 2
- Attr int16_i = 4
- Attr int32_i = 8
- Attr int64_i = 16
- Attr float32_i = 1.6
- Attr float64_i = 3.2
- Attr char_i = "I"
- Attr string_i = ":]"
-
- Attr bool_array_i = true, true
- Attr int8_array_i = 2, 6
- Attr int16_array_i = 4, 12
- Attr int32_array_i = 8, 24
- Attr int64_array_i = 16, 48
- Attr float32_array_i = 1.6
- Attr float64_array_i = 3.2
- Attr char_array_i = "Inst"
-
- Attr data_2 {
- Attr int32_i = 43
- }
- }
- InterfaceItem conj_port {
- Attr array2_i = 1, 2
- }
- }
-
-
- ActorInstanceConfig CGenTests/scTest/top/tester/testee_super2{
- Attr float64_super_i = 3.3
- InterfaceItem reg_port {
- Attr float_i = 25.0
- }
- }
-
- ActorInstanceConfig CGenTests/scTest/top/testee_1/testee_2 {
- Attr float64_super_i = 4.4
- Attr int32_own_i = 13
- InterfaceItem reg_port {
- Attr float_i = 50.0
- }
- InterfaceItem sap {
- Attr sap_data_2 {
- Attr int32_i = 3
- }
- }
- }
-
+ConfigModel StaticTestConfig { + + import CGenTests.* from "generator.c.tests.room" + import StaticConfigTest.* from "StaticConfigTest.room" + + ActorClassConfig Tester_ac { + // nothing + } + + ActorClassConfig Testee_1_ac { + Attr data_1 { + Attr bool_c = false + Attr bool_i = false + Attr int8_c = 24 + Attr int8_i = 24 + Attr int16_c = 48 + Attr int16_i = 48 + Attr int32_c = 96 + Attr int32_i = 96 + Attr int64_c = 192 + Attr int64_i = 192 + Attr float32_c = 9.6 + Attr float32_i = 9.6 + Attr float64_c = 19.2 + Attr float64_i = 19.2 + Attr char_c = "C" + Attr char_i = "C" + Attr string_c = ":)" + Attr string_i = ":)" + + Attr bool_array_c = true, false + Attr bool_array_i = true, false + Attr int8_array_c = 24, 48 + Attr int8_array_i = 24, 48 + Attr int16_array_c = 48, 96 + Attr int16_array_i = 48, 96 + Attr int32_array_c = 96, 192 + Attr int32_array_i = 96, 192 + Attr int64_array_c = 192, 384 + Attr int64_array_i = 192, 384 + Attr float32_array_c = 9.6 + Attr float32_array_i = 9.6 + Attr float64_array_c = 19.2 + Attr float64_array_i = 19.2 + Attr char_array_c = "Claz" + Attr char_array_i = "Claz" + + Attr data_2 { + Attr int32_c = 42 + Attr int32_i = 42 + } + } + } + + ActorClassConfig Testee_Super2_ac { + Attr float64_super_c = 2.2 + Attr float64_super_i = 2.2 + } + + ActorClassConfig Testee_2_ac { + Attr int32_own_c = 12 + Attr int32_own_i = 12 + } + + ProtocolClassConfig TestProtocolAttributes { + regular Port{ + Attr float_c = 3.0 + Attr float_i = 3.0 + } + conjugate Port { + Attr array2_c = 16, 32 + Attr array2_i = 16, 32 + } + } + + ProtocolClassConfig TestProtocolWithDataClass { + conjugate Port { + Attr sap_data_2{ + Attr int32_c = 2 + Attr int32_i = 2 + } + } + } + + ActorInstanceConfig CGenTests/scTest/top/tester { + // nothing + } + + ActorInstanceConfig CGenTests/scTest/top/testee_1 { + Attr data_1 { + Attr bool_i = true + Attr int8_i = 2 + Attr int16_i = 4 + Attr int32_i = 8 + Attr int64_i = 16 + Attr float32_i = 1.6 + Attr float64_i = 3.2 + Attr char_i = "I" + Attr string_i = ":]" + + Attr bool_array_i = true, true + Attr int8_array_i = 2, 6 + Attr int16_array_i = 4, 12 + Attr int32_array_i = 8, 24 + Attr int64_array_i = 16, 48 + Attr float32_array_i = 1.6 + Attr float64_array_i = 3.2 + Attr char_array_i = "Inst" + + Attr data_2 { + Attr int32_i = 43 + } + } + InterfaceItem conj_port { + Attr array2_i = 1, 2 + } + } + + + ActorInstanceConfig CGenTests/scTest/top/tester/testee_super2{ + Attr float64_super_i = 3.3 + InterfaceItem reg_port { + Attr float_i = 25.0 + } + } + + ActorInstanceConfig CGenTests/scTest/top/testee_1/testee_2 { + Attr float64_super_i = 4.4 + Attr int32_own_i = 13 + InterfaceItem reg_port { + Attr float_i = 50.0 + } + InterfaceItem sap { + Attr sap_data_2 { + Attr int32_i = 3 + } + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.etmap b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.etmap index 436a905a4..33600088e 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.etmap +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.etmap @@ -1,24 +1,24 @@ -MappingModel CGenTest {
-
- import CGenTests.* from "generator.c.tests.room"
- import Standard.* from "standard.etphys"
-
- Mapping CGenTests -> Sys {
- SubSystemMapping cpTest -> node1 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping ddTest -> node2 {
- ThreadMapping dflt_thread -> MixedThread
- }
- SubSystemMapping hdTest -> node3 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping sdTest -> node4 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping scTest -> node5 {
- ThreadMapping dflt_thread -> DfltThread
- }
-
- }
+MappingModel CGenTest { + + import CGenTests.* from "generator.c.tests.room" + import Standard.* from "standard.etphys" + + Mapping CGenTests -> Sys { + SubSystemMapping cpTest -> node1 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping ddTest -> node2 { + ThreadMapping dflt_thread -> MixedThread + } + SubSystemMapping hdTest -> node3 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping sdTest -> node4 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping scTest -> node5 { + ThreadMapping dflt_thread -> DfltThread + } + + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.room b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.room index 1d2bc0fb6..782246258 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.c.tests.room @@ -1,16 +1,16 @@ -RoomModel CGenTests {
-
- import ChoicePointTest.* from "ChoicePointTest.room"
- import DataDrivenTest.* from "DataDrivenTest.room"
- import HandlerTest.* from "HandlerTest.room"
- import SendingDataTestC.* from "SendingDataTestC.room"
- import StaticConfigTest.* from "StaticConfigTest.room"
-
- LogicalSystem CGenTests {
- SubSystemRef cpTest: SubSystem_CPTest
- SubSystemRef ddTest: SubSystem_DataDriven
- SubSystemRef hdTest: SubSystem_HandlerTest
- SubSystemRef sdTest: SubSystem_SendingData
- SubSystemRef scTest: SubSystem_StaticConfigTest
- }
+RoomModel CGenTests { + + import ChoicePointTest.* from "ChoicePointTest.room" + import DataDrivenTest.* from "DataDrivenTest.room" + import HandlerTest.* from "HandlerTest.room" + import SendingDataTestC.* from "SendingDataTestC.room" + import StaticConfigTest.* from "StaticConfigTest.room" + + LogicalSystem CGenTests { + SubSystemRef cpTest: SubSystem_CPTest + SubSystemRef ddTest: SubSystem_DataDriven + SubSystemRef hdTest: SubSystem_HandlerTest + SubSystemRef sdTest: SubSystem_SendingData + SubSystemRef scTest: SubSystem_StaticConfigTest + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.config b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.config index b28502a46..57b220bc3 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.config +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.config @@ -1,256 +1,256 @@ -ConfigModel StaticTestConfig {
-
- import JavaGenTests.* from "generator.java.tests.room"
- import StaticConfigTest.* from "StaticConfigTest.room"
- import DynamicConfigTest.* from "DynamicConfigTest_Java.room"
-
- ActorClassConfig Tester_ac {
- // nothing
- }
-
- ActorClassConfig Testee_1_ac {
- Attr data_1 {
- Attr bool_c = false
- Attr bool_i = false
- Attr int8_c = 24
- Attr int8_i = 24
- Attr int16_c = 48
- Attr int16_i = 48
- Attr int32_c = 96
- Attr int32_i = 96
- Attr int64_c = 192
- Attr int64_i = 192
- Attr float32_c = 9.6
- Attr float32_i = 9.6
- Attr float64_c = 19.2
- Attr float64_i = 19.2
- Attr char_c = "C"
- Attr char_i = "C"
- Attr string_c = ":)"
- Attr string_i = ":)"
-
- Attr bool_array_c = true, false
- Attr bool_array_i = true, false
- Attr int8_array_c = 24, 48
- Attr int8_array_i = 24, 48
- Attr int16_array_c = 48, 96
- Attr int16_array_i = 48, 96
- Attr int32_array_c = 96, 192
- Attr int32_array_i = 96, 192
- Attr int64_array_c = 192, 384
- Attr int64_array_i = 192, 384
- Attr float32_array_c = 9.6
- Attr float32_array_i = 9.6
- Attr float64_array_c = 19.2
- Attr float64_array_i = 19.2
- Attr char_array_c = "Claz"
- Attr char_array_i = "Claz"
-
- Attr data_2 {
- Attr int32_c = 42
- Attr int32_i = 42
- }
- }
- }
-
- ActorClassConfig Testee_Super2_ac {
- Attr float64_super_c = 2.2
- Attr float64_super_i = 2.2
- }
-
- ActorClassConfig Testee_2_ac {
- Attr int32_own_c = 12
- Attr int32_own_i = 12
- }
-
- ProtocolClassConfig TestProtocolAttributes {
- regular Port{
- Attr float_c = 3.0
- Attr float_i = 3.0
- }
- conjugate Port {
- Attr array2_c = 16, 32
- Attr array2_i = 16, 32
- }
- }
-
- ProtocolClassConfig TestProtocolWithDataClass {
- conjugate Port {
- Attr sap_data_2{
- Attr int32_c = 2
- Attr int32_i = 2
- }
- }
- }
-
- ActorInstanceConfig JavaGenTests/scTest/top/tester {
- // nothing
- }
-
- ActorInstanceConfig JavaGenTests/scTest/top/testee_1 {
- Attr data_1 {
- Attr bool_i = true
- Attr int8_i = 2
- Attr int16_i = 4
- Attr int32_i = 8
- Attr int64_i = 16
- Attr float32_i = 1.6
- Attr float64_i = 3.2
- Attr char_i = "I"
- Attr string_i = ":]"
-
- Attr bool_array_i = true, true
- Attr int8_array_i = 2, 6
- Attr int16_array_i = 4, 12
- Attr int32_array_i = 8, 24
- Attr int64_array_i = 16, 48
- Attr float32_array_i = 1.6
- Attr float64_array_i = 3.2
- Attr char_array_i = "Inst"
-
- Attr data_2 {
- Attr int32_i = 43
- }
- }
- InterfaceItem conj_port {
- Attr array2_i = 1, 2
- }
- }
-
-
- ActorInstanceConfig JavaGenTests/scTest/top/tester/testee_super2{
- Attr float64_super_i = 3.3
- InterfaceItem reg_port {
- Attr float_i = 25.0
- }
- }
-
- ActorInstanceConfig JavaGenTests/scTest/top/testee_1/testee_2 {
- Attr float64_super_i = 4.4
- Attr int32_own_i = 13
- InterfaceItem reg_port {
- Attr float_i = 50.0
- }
- InterfaceItem sap {
- Attr sap_data_2 {
- Attr int32_i = 3
- }
- }
- }
-
- SubSystemConfig JavaGenTests / dcTest {
- dynamic configuration {
- user import ""
- user constructor "ConfigSourceTestInstance.getInstance()"
- polling timer [ms] 200
- }
- }
-
- ActorClassConfig Testee_ac {
- Attr aBool = false
- Attr aInt8 = 0 {
- min = -1 max = 59
- }
- Attr aInt16 = 0 {
- min = -1 max = 59
- }
- Attr aInt32 = 0 {
- min = -1 max = 59
- }
- Attr aInt64 = 0 {
- min = -1 max = 59
- }
- Attr aFloat32 = 0. {
- min = -1. max = 59.
- }
- Attr aFloat64 = 0. {
- min = -1. max = 59.
- }
- Attr aChar = ''
- Attr aString = ""
- Attr aBool_array = false
- Attr aInt8_array = 0 {
- min = -1 max = 59
- }
- Attr aInt16_array = 0 {
- min = -1 max = 59
- }
- Attr aInt32_array = 0 {
- min = -1 max = 59
- }
- Attr aInt64_array = 0 {
- min = -1 max = 59
- }
- Attr aFloat32_array = 0.0 {
- min = -1.0 max = 59.0
- }
- Attr aFloat64_array = 0.0 {
- min = -1.0 max = 59.0
- }
- Attr aChar_array
- Attr dc {
- Attr nested {
- Attr aInt32 = 0 {
- min = -1 max = 59
- }
- }
- }
- }
-
- ActorInstanceConfig JavaGenTests / dcTest / testee {
- Attr aInt8 {
- dynamic configuration read
- }
- Attr aInt16 {
- dynamic configuration read
- }
- Attr aInt32 {
- dynamic configuration read
- }
- Attr aInt64 {
- dynamic configuration read
- }
- Attr aFloat32 {
- dynamic configuration read
- }
- Attr aFloat64 {
- dynamic configuration read
- }
- Attr aBool {
- dynamic configuration read
- }
- Attr aChar {
- dynamic configuration read
- }
- Attr aString {
- dynamic configuration read
- }
- Attr aInt8_array {
- dynamic configuration read
- }
- Attr aInt16_array {
- dynamic configuration read
- }
- Attr aInt32_array {
- dynamic configuration read
- }
- Attr aInt64_array {
- dynamic configuration read
- }
- Attr aFloat32_array {
- dynamic configuration read
- }
- Attr aFloat64_array {
- dynamic configuration read
- }
- Attr aBool_array {
- dynamic configuration read
- }
- Attr aChar_array {
- dynamic configuration read
- }
- Attr dc {
- dynamic configuration read
- }
- }
-}
+ConfigModel StaticTestConfig { + + import JavaGenTests.* from "generator.java.tests.room" + import StaticConfigTest.* from "StaticConfigTest.room" + import DynamicConfigTest.* from "DynamicConfigTest_Java.room" + + ActorClassConfig Tester_ac { + // nothing + } + + ActorClassConfig Testee_1_ac { + Attr data_1 { + Attr bool_c = false + Attr bool_i = false + Attr int8_c = 24 + Attr int8_i = 24 + Attr int16_c = 48 + Attr int16_i = 48 + Attr int32_c = 96 + Attr int32_i = 96 + Attr int64_c = 192 + Attr int64_i = 192 + Attr float32_c = 9.6 + Attr float32_i = 9.6 + Attr float64_c = 19.2 + Attr float64_i = 19.2 + Attr char_c = "C" + Attr char_i = "C" + Attr string_c = ":)" + Attr string_i = ":)" + + Attr bool_array_c = true, false + Attr bool_array_i = true, false + Attr int8_array_c = 24, 48 + Attr int8_array_i = 24, 48 + Attr int16_array_c = 48, 96 + Attr int16_array_i = 48, 96 + Attr int32_array_c = 96, 192 + Attr int32_array_i = 96, 192 + Attr int64_array_c = 192, 384 + Attr int64_array_i = 192, 384 + Attr float32_array_c = 9.6 + Attr float32_array_i = 9.6 + Attr float64_array_c = 19.2 + Attr float64_array_i = 19.2 + Attr char_array_c = "Claz" + Attr char_array_i = "Claz" + + Attr data_2 { + Attr int32_c = 42 + Attr int32_i = 42 + } + } + } + + ActorClassConfig Testee_Super2_ac { + Attr float64_super_c = 2.2 + Attr float64_super_i = 2.2 + } + + ActorClassConfig Testee_2_ac { + Attr int32_own_c = 12 + Attr int32_own_i = 12 + } + + ProtocolClassConfig TestProtocolAttributes { + regular Port{ + Attr float_c = 3.0 + Attr float_i = 3.0 + } + conjugate Port { + Attr array2_c = 16, 32 + Attr array2_i = 16, 32 + } + } + + ProtocolClassConfig TestProtocolWithDataClass { + conjugate Port { + Attr sap_data_2{ + Attr int32_c = 2 + Attr int32_i = 2 + } + } + } + + ActorInstanceConfig JavaGenTests/scTest/top/tester { + // nothing + } + + ActorInstanceConfig JavaGenTests/scTest/top/testee_1 { + Attr data_1 { + Attr bool_i = true + Attr int8_i = 2 + Attr int16_i = 4 + Attr int32_i = 8 + Attr int64_i = 16 + Attr float32_i = 1.6 + Attr float64_i = 3.2 + Attr char_i = "I" + Attr string_i = ":]" + + Attr bool_array_i = true, true + Attr int8_array_i = 2, 6 + Attr int16_array_i = 4, 12 + Attr int32_array_i = 8, 24 + Attr int64_array_i = 16, 48 + Attr float32_array_i = 1.6 + Attr float64_array_i = 3.2 + Attr char_array_i = "Inst" + + Attr data_2 { + Attr int32_i = 43 + } + } + InterfaceItem conj_port { + Attr array2_i = 1, 2 + } + } + + + ActorInstanceConfig JavaGenTests/scTest/top/tester/testee_super2{ + Attr float64_super_i = 3.3 + InterfaceItem reg_port { + Attr float_i = 25.0 + } + } + + ActorInstanceConfig JavaGenTests/scTest/top/testee_1/testee_2 { + Attr float64_super_i = 4.4 + Attr int32_own_i = 13 + InterfaceItem reg_port { + Attr float_i = 50.0 + } + InterfaceItem sap { + Attr sap_data_2 { + Attr int32_i = 3 + } + } + } + + SubSystemConfig JavaGenTests / dcTest { + dynamic configuration { + user import "" + user constructor "ConfigSourceTestInstance.getInstance()" + polling timer [ms] 200 + } + } + + ActorClassConfig Testee_ac { + Attr aBool = false + Attr aInt8 = 0 { + min = -1 max = 59 + } + Attr aInt16 = 0 { + min = -1 max = 59 + } + Attr aInt32 = 0 { + min = -1 max = 59 + } + Attr aInt64 = 0 { + min = -1 max = 59 + } + Attr aFloat32 = 0. { + min = -1. max = 59. + } + Attr aFloat64 = 0. { + min = -1. max = 59. + } + Attr aChar = '' + Attr aString = "" + Attr aBool_array = false + Attr aInt8_array = 0 { + min = -1 max = 59 + } + Attr aInt16_array = 0 { + min = -1 max = 59 + } + Attr aInt32_array = 0 { + min = -1 max = 59 + } + Attr aInt64_array = 0 { + min = -1 max = 59 + } + Attr aFloat32_array = 0.0 { + min = -1.0 max = 59.0 + } + Attr aFloat64_array = 0.0 { + min = -1.0 max = 59.0 + } + Attr aChar_array + Attr dc { + Attr nested { + Attr aInt32 = 0 { + min = -1 max = 59 + } + } + } + } + + ActorInstanceConfig JavaGenTests / dcTest / testee { + Attr aInt8 { + dynamic configuration read + } + Attr aInt16 { + dynamic configuration read + } + Attr aInt32 { + dynamic configuration read + } + Attr aInt64 { + dynamic configuration read + } + Attr aFloat32 { + dynamic configuration read + } + Attr aFloat64 { + dynamic configuration read + } + Attr aBool { + dynamic configuration read + } + Attr aChar { + dynamic configuration read + } + Attr aString { + dynamic configuration read + } + Attr aInt8_array { + dynamic configuration read + } + Attr aInt16_array { + dynamic configuration read + } + Attr aInt32_array { + dynamic configuration read + } + Attr aInt64_array { + dynamic configuration read + } + Attr aFloat32_array { + dynamic configuration read + } + Attr aFloat64_array { + dynamic configuration read + } + Attr aBool_array { + dynamic configuration read + } + Attr aChar_array { + dynamic configuration read + } + Attr dc { + dynamic configuration read + } + } +} diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.etmap b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.etmap index 3b84bf275..96b72e6d0 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.etmap +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.etmap @@ -1,41 +1,41 @@ -MappingModel JavaGenTest {
-
- import JavaGenTests.* from "generator.java.tests.room"
- import Standard.* from "standard.etphys"
-
- Mapping JavaGenTests -> Sys {
- SubSystemMapping cpTest -> node1 {
- ThreadMapping dflt_thread -> DfltThread
- } - SubSystemMapping ddTest -> node2 {
- ThreadMapping dflt_thread -> MixedThread
- }
- SubSystemMapping hdTest -> node3 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping sdTest -> node4 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping scTest -> node5 {
- ThreadMapping dflt_thread -> DfltThread
- }
- SubSystemMapping ppTest -> node6 {
+MappingModel JavaGenTest { + + import JavaGenTests.* from "generator.java.tests.room" + import Standard.* from "standard.etphys" + + Mapping JavaGenTests -> Sys { + SubSystemMapping cpTest -> node1 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping ddTest -> node2 { + ThreadMapping dflt_thread -> MixedThread + } + SubSystemMapping hdTest -> node3 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping sdTest -> node4 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping scTest -> node5 { + ThreadMapping dflt_thread -> DfltThread + } + SubSystemMapping ppTest -> node6 { ThreadMapping mrPingThread -> DfltThread ThreadMapping mrPong1Thread -> Thread1 ThreadMapping mrPong2Thread -> Thread2 ThreadMapping mrPong3Thread -> Thread3 - }
+ } SubSystemMapping prTest -> node7 { ThreadMapping mrPingThread -> DfltThread ThreadMapping mrPong1Thread -> Thread1 ThreadMapping mrPong2Thread -> Thread2 ThreadMapping mrPong3Thread -> Thread3 - }
+ } SubSystemMapping tcTest -> node8 { ThreadMapping dflt_thread -> DfltThread - }
+ } SubSystemMapping dcTest -> node9 { ThreadMapping dflt_thread -> DfltThread - }
- }
+ } + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.room b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.room index 0573f6841..3bf37c1c4 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.room +++ b/tests/org.eclipse.etrice.generator.common.tests/models/generator.java.tests.room @@ -1,24 +1,24 @@ -RoomModel JavaGenTests {
-
- import HandlerTest.* from "HandlerTest.room"
- import ChoicePointTest.* from "ChoicePointTest.room"
- import PingPongThreadTest.* from "PingPongThreadTest.room"
- import PingPongThreadTestReplPort.* from "PingPongThreadReplPortTest.room"
- import SendingDataTestJava.* from "SendingDataTestJava.room"
- import TCPTest.* from "TCPTest.room"
- import StaticConfigTest.* from "StaticConfigTest.room"
- import DynamicConfigTest.* from "DynamicConfigTest_Java.room"
- import DataDrivenTest.* from "DataDrivenTest.room"
-
- LogicalSystem JavaGenTests {
- SubSystemRef hdTest: SubSystem_HandlerTest
- SubSystemRef cpTest: SubSystem_CPTest
- SubSystemRef ppTest: SubSystem_PingPong
- SubSystemRef prTest: SubSystem_PingPongReplPort
- SubSystemRef sdTest: SubSystem_SendingData
- SubSystemRef tcTest: SubSystem_TCPTest
- SubSystemRef scTest: SubSystem_StaticConfigTest
- SubSystemRef dcTest: SubSystem_DynamicConfigTest
- SubSystemRef ddTest: SubSystem_DataDriven
- }
+RoomModel JavaGenTests { + + import HandlerTest.* from "HandlerTest.room" + import ChoicePointTest.* from "ChoicePointTest.room" + import PingPongThreadTest.* from "PingPongThreadTest.room" + import PingPongThreadTestReplPort.* from "PingPongThreadReplPortTest.room" + import SendingDataTestJava.* from "SendingDataTestJava.room" + import TCPTest.* from "TCPTest.room" + import StaticConfigTest.* from "StaticConfigTest.room" + import DynamicConfigTest.* from "DynamicConfigTest_Java.room" + import DataDrivenTest.* from "DataDrivenTest.room" + + LogicalSystem JavaGenTests { + SubSystemRef hdTest: SubSystem_HandlerTest + SubSystemRef cpTest: SubSystem_CPTest + SubSystemRef ppTest: SubSystem_PingPong + SubSystemRef prTest: SubSystem_PingPongReplPort + SubSystemRef sdTest: SubSystem_SendingData + SubSystemRef tcTest: SubSystem_TCPTest + SubSystemRef scTest: SubSystem_StaticConfigTest + SubSystemRef dcTest: SubSystem_DynamicConfigTest + SubSystemRef ddTest: SubSystem_DataDriven + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.common.tests/models/standard.etphys b/tests/org.eclipse.etrice.generator.common.tests/models/standard.etphys index ade1b02e3..61f6aa2b4 100644 --- a/tests/org.eclipse.etrice.generator.common.tests/models/standard.etphys +++ b/tests/org.eclipse.etrice.generator.common.tests/models/standard.etphys @@ -1,65 +1,65 @@ -PhysicalModel Standard {
-
- PhysicalSystem Sys {
- NodeRef node1: PC
- NodeRef node2: PC
- NodeRef node3: PC
- NodeRef node4: PC
- NodeRef node5: PC
- NodeRef node6: PC
- NodeRef node7: PC
- NodeRef node8: PC
- NodeRef node9: PC
- }
-
- NodeClass PC {
- runtime = PC
- priomin = 1
- priomax = 5
-
- DefaultThread DfltThread {
- execmode = blocked
- prio = 5
- stacksize = 1024
- msgblocksize = 64
- msgpoolsize = 32
- }
-
- Thread Thread1 {
- execmode = blocked
- prio = 5
- stacksize = 1024
- msgblocksize = 64
- msgpoolsize = 32
- }
-
- Thread Thread2 {
- execmode = blocked
- prio = 5
- stacksize = 1024
- msgblocksize = 64
- msgpoolsize = 32
- }
-
- Thread Thread3 {
- execmode = blocked
- prio = 5
- stacksize = 1024
- msgblocksize = 64
- msgpoolsize = 32
- }
-
- Thread MixedThread {
- execmode = mixed
- interval = 100 ms
- prio = 5
- stacksize = 1024
- msgblocksize = 64
- msgpoolsize = 32
- }
- }
-
- RuntimeClass PC {
- model = multiThreaded
- }
+PhysicalModel Standard { + + PhysicalSystem Sys { + NodeRef node1: PC + NodeRef node2: PC + NodeRef node3: PC + NodeRef node4: PC + NodeRef node5: PC + NodeRef node6: PC + NodeRef node7: PC + NodeRef node8: PC + NodeRef node9: PC + } + + NodeClass PC { + runtime = PC + priomin = 1 + priomax = 5 + + DefaultThread DfltThread { + execmode = blocked + prio = 5 + stacksize = 1024 + msgblocksize = 64 + msgpoolsize = 32 + } + + Thread Thread1 { + execmode = blocked + prio = 5 + stacksize = 1024 + msgblocksize = 64 + msgpoolsize = 32 + } + + Thread Thread2 { + execmode = blocked + prio = 5 + stacksize = 1024 + msgblocksize = 64 + msgpoolsize = 32 + } + + Thread Thread3 { + execmode = blocked + prio = 5 + stacksize = 1024 + msgblocksize = 64 + msgpoolsize = 32 + } + + Thread MixedThread { + execmode = mixed + interval = 100 ms + prio = 5 + stacksize = 1024 + msgblocksize = 64 + msgpoolsize = 32 + } + } + + RuntimeClass PC { + model = multiThreaded + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.classpath b/tests/org.eclipse.etrice.generator.cpp.tests/.classpath index bb2b15cfe..a2e404af1 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.classpath +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.cproject b/tests/org.eclipse.etrice.generator.cpp.tests/.cproject index 8793c4b69..d680aed9c 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.cproject +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.cproject @@ -1,139 +1,139 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
- <storageModule moduleId="org.eclipse.cdt.core.settings">
- <cconfiguration id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002">
- <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002" moduleId="org.eclipse.cdt.core.settings" name="Debug">
- <externalSettings/>
- <extensions>
- <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
- <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
- <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
- </extensions>
- </storageModule>
- <storageModule moduleId="cdtBuildSystem" version="4.0.0">
- <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002" name="Debug" parent="cdt.managedbuild.config.gnu.mingw.exe.debug">
- <folderInfo id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002." name="/" resourcePath="">
- <toolChain id="cdt.managedbuild.toolchain.gnu.mingw.exe.debug.242769122" name="MinGW GCC" superClass="cdt.managedbuild.toolchain.gnu.mingw.exe.debug">
- <targetPlatform id="cdt.managedbuild.target.gnu.platform.mingw.exe.debug.2057244616" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.mingw.exe.debug"/>
- <builder buildPath="${workspace_loc:/org.eclipse.etrice.generator.cpp.tests/Debug}" id="cdt.managedbuild.tool.gnu.builder.mingw.base.2069078114" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="cdt.managedbuild.tool.gnu.builder.mingw.base"/>
- <tool id="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug.1433668364" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug">
- <option id="gnu.both.asm.option.include.paths.382244560" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.assembler.input.55067378" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.archiver.mingw.base.567572926" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.mingw.base"/>
- <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug.177246759" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug">
- <option id="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level.430807243" name="Optimization Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
- <option id="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level.1383669374" name="Debug Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
- <option id="gnu.cpp.compiler.option.include.paths.761725209" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.346603627" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.220478217" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug">
- <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.mingw.exe.debug.option.optimization.level.395258590" name="Optimization Level" superClass="gnu.c.compiler.mingw.exe.debug.option.optimization.level" valueType="enumerated"/>
- <option id="gnu.c.compiler.mingw.exe.debug.option.debugging.level.1189953766" name="Debug Level" superClass="gnu.c.compiler.mingw.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
- <option id="gnu.c.compiler.option.include.paths.1403500428" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1023039306" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug.1145094544" name="MinGW C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug"/>
- <tool id="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug.1671086433" name="MinGW C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug">
- <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.940229505" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
- <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
- <additionalInput kind="additionalinput" paths="$(LIBS)"/>
- </inputType>
- </tool>
- </toolChain>
- </folderInfo>
- </configuration>
- </storageModule>
- <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
- </cconfiguration>
- <cconfiguration id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644">
- <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644" moduleId="org.eclipse.cdt.core.settings" name="Release">
- <externalSettings/>
- <extensions>
- <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
- <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
- <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
- </extensions>
- </storageModule>
- <storageModule moduleId="cdtBuildSystem" version="4.0.0">
- <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644" name="Release" parent="cdt.managedbuild.config.gnu.mingw.exe.release">
- <folderInfo id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644." name="/" resourcePath="">
- <toolChain id="cdt.managedbuild.toolchain.gnu.mingw.exe.release.1858381959" name="MinGW GCC" superClass="cdt.managedbuild.toolchain.gnu.mingw.exe.release">
- <targetPlatform id="cdt.managedbuild.target.gnu.platform.mingw.exe.release.922694920" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.mingw.exe.release"/>
- <builder buildPath="${workspace_loc:/org.eclipse.etrice.generator.cpp.tests/Release}" id="cdt.managedbuild.tool.gnu.builder.mingw.base.176559771" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="cdt.managedbuild.tool.gnu.builder.mingw.base"/>
- <tool id="cdt.managedbuild.tool.gnu.assembler.mingw.exe.release.551795651" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.mingw.exe.release">
- <option id="gnu.both.asm.option.include.paths.704004951" superClass="gnu.both.asm.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.assembler.input.1813992405" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.archiver.mingw.base.1263735881" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.mingw.base"/>
- <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release.534767751" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release">
- <option id="gnu.cpp.compiler.mingw.exe.release.option.optimization.level.386438785" name="Optimization Level" superClass="gnu.cpp.compiler.mingw.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
- <option id="gnu.cpp.compiler.mingw.exe.release.option.debugging.level.1289489549" name="Debug Level" superClass="gnu.cpp.compiler.mingw.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
- <option id="gnu.cpp.compiler.option.include.paths.503000588" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.521340645" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release.1308261136" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release">
- <option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.mingw.exe.release.option.optimization.level.1790493807" name="Optimization Level" superClass="gnu.c.compiler.mingw.exe.release.option.optimization.level" valueType="enumerated"/>
- <option id="gnu.c.compiler.mingw.exe.release.option.debugging.level.1970954673" name="Debug Level" superClass="gnu.c.compiler.mingw.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
- <option id="gnu.c.compiler.option.include.paths.1950967305" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/>
- <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/>
- </option>
- <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1597770877" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
- </tool>
- <tool id="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.release.186940136" name="MinGW C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.release"/>
- <tool id="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.release.646213702" name="MinGW C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.release">
- <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.388077354" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
- <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
- <additionalInput kind="additionalinput" paths="$(LIBS)"/>
- </inputType>
- </tool>
- </toolChain>
- </folderInfo>
- </configuration>
- </storageModule>
- <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
- </cconfiguration>
- </storageModule>
- <storageModule moduleId="cdtBuildSystem" version="4.0.0">
- <project id="org.eclipse.etrice.generator.cpp.tests.cdt.managedbuild.target.gnu.mingw.exe.545973248" name="Executable" projectType="cdt.managedbuild.target.gnu.mingw.exe"/>
- </storageModule>
- <storageModule moduleId="scannerConfiguration">
- <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
- <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644;cdt.managedbuild.config.gnu.mingw.exe.release.1781534644.;cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release.534767751;cdt.managedbuild.tool.gnu.cpp.compiler.input.521340645">
- <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
- </scannerConfigBuildInfo>
- <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002;cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002.;cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.220478217;cdt.managedbuild.tool.gnu.c.compiler.input.1023039306">
- <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
- </scannerConfigBuildInfo>
- <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644;cdt.managedbuild.config.gnu.mingw.exe.release.1781534644.;cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release.1308261136;cdt.managedbuild.tool.gnu.c.compiler.input.1597770877">
- <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
- </scannerConfigBuildInfo>
- <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002;cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002.;cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug.177246759;cdt.managedbuild.tool.gnu.cpp.compiler.input.346603627">
- <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
- </scannerConfigBuildInfo>
- </storageModule>
- <storageModule moduleId="org.eclipse.cdt.core.pathentry"/>
- <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
-</cproject>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> + <storageModule moduleId="org.eclipse.cdt.core.settings"> + <cconfiguration id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002" moduleId="org.eclipse.cdt.core.settings" name="Debug"> + <externalSettings/> + <extensions> + <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002" name="Debug" parent="cdt.managedbuild.config.gnu.mingw.exe.debug"> + <folderInfo id="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002." name="/" resourcePath=""> + <toolChain id="cdt.managedbuild.toolchain.gnu.mingw.exe.debug.242769122" name="MinGW GCC" superClass="cdt.managedbuild.toolchain.gnu.mingw.exe.debug"> + <targetPlatform id="cdt.managedbuild.target.gnu.platform.mingw.exe.debug.2057244616" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.mingw.exe.debug"/> + <builder buildPath="${workspace_loc:/org.eclipse.etrice.generator.cpp.tests/Debug}" id="cdt.managedbuild.tool.gnu.builder.mingw.base.2069078114" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="cdt.managedbuild.tool.gnu.builder.mingw.base"/> + <tool id="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug.1433668364" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.mingw.exe.debug"> + <option id="gnu.both.asm.option.include.paths.382244560" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.assembler.input.55067378" superClass="cdt.managedbuild.tool.gnu.assembler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.archiver.mingw.base.567572926" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.mingw.base"/> + <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug.177246759" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug"> + <option id="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level.430807243" name="Optimization Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/> + <option id="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level.1383669374" name="Debug Level" superClass="gnu.cpp.compiler.mingw.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/> + <option id="gnu.cpp.compiler.option.include.paths.761725209" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.346603627" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.220478217" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug"> + <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.mingw.exe.debug.option.optimization.level.395258590" name="Optimization Level" superClass="gnu.c.compiler.mingw.exe.debug.option.optimization.level" valueType="enumerated"/> + <option id="gnu.c.compiler.mingw.exe.debug.option.debugging.level.1189953766" name="Debug Level" superClass="gnu.c.compiler.mingw.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/> + <option id="gnu.c.compiler.option.include.paths.1403500428" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1023039306" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug.1145094544" name="MinGW C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.debug"/> + <tool id="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug.1671086433" name="MinGW C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.debug"> + <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.940229505" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input"> + <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> + <additionalInput kind="additionalinput" paths="$(LIBS)"/> + </inputType> + </tool> + </toolChain> + </folderInfo> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + <cconfiguration id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644" moduleId="org.eclipse.cdt.core.settings" name="Release"> + <externalSettings/> + <extensions> + <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/> + <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644" name="Release" parent="cdt.managedbuild.config.gnu.mingw.exe.release"> + <folderInfo id="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644." name="/" resourcePath=""> + <toolChain id="cdt.managedbuild.toolchain.gnu.mingw.exe.release.1858381959" name="MinGW GCC" superClass="cdt.managedbuild.toolchain.gnu.mingw.exe.release"> + <targetPlatform id="cdt.managedbuild.target.gnu.platform.mingw.exe.release.922694920" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.mingw.exe.release"/> + <builder buildPath="${workspace_loc:/org.eclipse.etrice.generator.cpp.tests/Release}" id="cdt.managedbuild.tool.gnu.builder.mingw.base.176559771" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="cdt.managedbuild.tool.gnu.builder.mingw.base"/> + <tool id="cdt.managedbuild.tool.gnu.assembler.mingw.exe.release.551795651" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.mingw.exe.release"> + <option id="gnu.both.asm.option.include.paths.704004951" superClass="gnu.both.asm.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.assembler.input.1813992405" superClass="cdt.managedbuild.tool.gnu.assembler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.archiver.mingw.base.1263735881" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.mingw.base"/> + <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release.534767751" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release"> + <option id="gnu.cpp.compiler.mingw.exe.release.option.optimization.level.386438785" name="Optimization Level" superClass="gnu.cpp.compiler.mingw.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/> + <option id="gnu.cpp.compiler.mingw.exe.release.option.debugging.level.1289489549" name="Debug Level" superClass="gnu.cpp.compiler.mingw.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/> + <option id="gnu.cpp.compiler.option.include.paths.503000588" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.521340645" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release.1308261136" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release"> + <option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.mingw.exe.release.option.optimization.level.1790493807" name="Optimization Level" superClass="gnu.c.compiler.mingw.exe.release.option.optimization.level" valueType="enumerated"/> + <option id="gnu.c.compiler.mingw.exe.release.option.debugging.level.1970954673" name="Debug Level" superClass="gnu.c.compiler.mingw.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> + <option id="gnu.c.compiler.option.include.paths.1950967305" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.modellib.cpp/src-gen}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src}""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/org.eclipse.etrice.runtime.cpp/src/common/platform}""/> + </option> + <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1597770877" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> + </tool> + <tool id="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.release.186940136" name="MinGW C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.mingw.exe.release"/> + <tool id="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.release.646213702" name="MinGW C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.mingw.exe.release"> + <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.388077354" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input"> + <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> + <additionalInput kind="additionalinput" paths="$(LIBS)"/> + </inputType> + </tool> + </toolChain> + </folderInfo> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <project id="org.eclipse.etrice.generator.cpp.tests.cdt.managedbuild.target.gnu.mingw.exe.545973248" name="Executable" projectType="cdt.managedbuild.target.gnu.mingw.exe"/> + </storageModule> + <storageModule moduleId="scannerConfiguration"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> + <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644;cdt.managedbuild.config.gnu.mingw.exe.release.1781534644.;cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.release.534767751;cdt.managedbuild.tool.gnu.cpp.compiler.input.521340645"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/> + </scannerConfigBuildInfo> + <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002;cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002.;cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.debug.220478217;cdt.managedbuild.tool.gnu.c.compiler.input.1023039306"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/> + </scannerConfigBuildInfo> + <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.release.1781534644;cdt.managedbuild.config.gnu.mingw.exe.release.1781534644.;cdt.managedbuild.tool.gnu.c.compiler.mingw.exe.release.1308261136;cdt.managedbuild.tool.gnu.c.compiler.input.1597770877"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/> + </scannerConfigBuildInfo> + <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002;cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002.;cdt.managedbuild.tool.gnu.cpp.compiler.mingw.exe.debug.177246759;cdt.managedbuild.tool.gnu.cpp.compiler.input.346603627"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/> + </scannerConfigBuildInfo> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.pathentry"/> + <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> +</cproject> diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.gitignore b/tests/org.eclipse.etrice.generator.cpp.tests/.gitignore index 04907272d..8d74feca6 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.gitignore +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.gitignore @@ -1,6 +1,6 @@ -/bin
-/models
-/output
-/results
-/src-gen
-/tmp
+/bin +/models +/output +/results +/src-gen +/tmp diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.project b/tests/org.eclipse.etrice.generator.cpp.tests/.project index 2d5f8a80c..9a006b980 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.project +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.cpp.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.cpp.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs index 0027346bc..379aa6fc1 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs @@ -1,13 +1,13 @@ -eclipse.preferences.version=1
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPLUS_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPLUS_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/appendContributed=true
+eclipse.preferences.version=1 +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPLUS_INCLUDE_PATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/CPLUS_INCLUDE_PATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/C_INCLUDE_PATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/C_INCLUDE_PATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/append=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/appendContributed=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/LIBRARY_PATH/delimiter=; +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/LIBRARY_PATH/operation=remove +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/append=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1467322002/appendContributed=true diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.jdt.core.prefs index 54e493c07..8000cd6ca 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.generator.cpp.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,11 +1,11 @@ -eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Async.seq b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Async.seq index c14ac2284..edcad3a02 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Async.seq +++ b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Async.seq @@ -1,27 +1,27 @@ -#generated MSC for Trace2UML
- /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top executeInitialTransition
- /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester executeInitialTransition
- /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user executeInitialTransition
- /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top executeInitialTransition
- /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top/cp_tester executeInitialTransition
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >>> state0
- /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user executeInitialTransition
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12
- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1
- /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> testOk
+#generated MSC for Trace2UML + /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top executeInitialTransition + /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_tester executeInitialTransition + /SubSystem_CPTest >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user executeInitialTransition + /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top executeInitialTransition + /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top/cp_tester executeInitialTransition + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >-- /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester >>> state0 + /SubSystem_CPTest --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user executeInitialTransition + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY3_EXIT4 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> ENTRY8_EXIT9_ENTRY11_EXIT12 + /SubSystem_CPTest/ChoicePointTest_Top/cp_tester --> /SubSystem_CPTest/ChoicePointTest_Top/cp_user msg1 + /SubSystem_CPTest/ChoicePointTest_Top/cp_user >>> testOk diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Sync.seq b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Sync.seq index 50058ecdd..58543452e 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Sync.seq +++ b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_CPTest_Sync.seq @@ -1 +1 @@ -#generated MSC for Trace2UML
+#generated MSC for Trace2UML diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Async.seq b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Async.seq index aab3bbf3d..2cc8000c4 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Async.seq +++ b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Async.seq @@ -1,48 +1,48 @@ -#generated MSC for Trace2UML
- /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top executeInitialTransition
- /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top/tester executeInitialTransition
- /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser executeInitialTransition
- /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top executeInitialTransition
- /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top/tester executeInitialTransition
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg3
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg4
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg6
- /SubSystem_HandlerTest/HandlerTest_Top/tester >>> state0
- /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser executeInitialTransition
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state1
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state1
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg3
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg4
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2
- /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg6
- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> testOk
+#generated MSC for Trace2UML + /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top executeInitialTransition + /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top/tester executeInitialTransition + /SubSystem_HandlerTest >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser executeInitialTransition + /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top executeInitialTransition + /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top/tester executeInitialTransition + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg3 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg4 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/tester >-- /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg6 + /SubSystem_HandlerTest/HandlerTest_Top/tester >>> state0 + /SubSystem_HandlerTest --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser executeInitialTransition + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state1 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state1 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state1_state7 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg2 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg3 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg4 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg1 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> state0_state2 + /SubSystem_HandlerTest/HandlerTest_Top/tester --> /SubSystem_HandlerTest/HandlerTest_Top/handlerUser msg6 + /SubSystem_HandlerTest/HandlerTest_Top/handlerUser >>> testOk diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Sync.seq b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Sync.seq index 50058ecdd..58543452e 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Sync.seq +++ b/tests/org.eclipse.etrice.generator.cpp.tests/SubSystem_HandlerTest_Sync.seq @@ -1 +1 @@ -#generated MSC for Trace2UML
+#generated MSC for Trace2UML diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/about.html b/tests/org.eclipse.etrice.generator.cpp.tests/about.html index 82d49bf5f..d35d5aed6 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/about.html +++ b/tests/org.eclipse.etrice.generator.cpp.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/buckminster.cspec b/tests/org.eclipse.etrice.generator.cpp.tests/buckminster.cspec index ac05dbe67..30787894b 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.generator.cpp.tests/buckminster.cspec @@ -1,11 +1,11 @@ -<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.cpp.tests" componentType="buckminster" version="0.3.0.qualifier">
- <cs:actions>
- <cs:public name="run_tests" actor="ant">
- <cs:actorProperties>
- <cs:property key="buildFile" value="make.xml"/>
- <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/>
- <cs:property key="targets" value="all"/>
- </cs:actorProperties>
- </cs:public>
- </cs:actions>
-</cs:cspec>
+<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.cpp.tests" componentType="buckminster" version="0.3.0.qualifier"> + <cs:actions> + <cs:public name="run_tests" actor="ant"> + <cs:actorProperties> + <cs:property key="buildFile" value="make.xml"/> + <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/> + <cs:property key="targets" value="all"/> + </cs:actorProperties> + </cs:public> + </cs:actions> +</cs:cspec> diff --git a/tests/org.eclipse.etrice.generator.cpp.tests/make.xml b/tests/org.eclipse.etrice.generator.cpp.tests/make.xml index d64452aec..c0097b699 100644 --- a/tests/org.eclipse.etrice.generator.cpp.tests/make.xml +++ b/tests/org.eclipse.etrice.generator.cpp.tests/make.xml @@ -1,371 +1,371 @@ -<?xml version="1.0"?>
-<!--
- Ant makefile for building and running of tests.
- This includes invocation of the Java code generator and conversion of the etunit
- results into xunit xml.
-
- To work locally you should define in your environment
- ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation
- ETRICE_CPP_RUNTIME=path to the org.eclipse.etrice.runtime.cpp folder (relative path doesn't work)
-
- @author Henrik Rentz-Reichert
--->
-<project name="project" default="all">
-
- <property name="cpp.tests.model.path" value="./models"/>
- <property name="modellib.path" value="../../runtime/org.eclipse.etrice.modellib.cpp"/>
- <property name="bin.path" value="./bin"/>
- <property name="xml.output" value="./tmp"/>
- <property name="output" value="./output"/>
- <property environment="env"/>
-
-
- <!--
- all: copies the models, generates, compiles, runs, converts and copies the results
- -->
- <target name="all" depends="convert,copy_results">
- <echo>done with org.eclipse.etrice.generator.cpp.tests</echo>
- </target>
-
- <!--
- set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already
- -->
- <target name="set_tp" unless="target.platform">
- <echo>using local target platform</echo>
- <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/>
- </target>
-
- <!--
- set_tr: sets the test.result property if not set already
- -->
- <target name="set_tr" unless="test.results">
- <echo>using local test result folder</echo>
- <property name="test.results" value="./results"/>
- </target>
-
- <!--
- set_rp: sets the runtime.path from the ETRICE_CPP_RUNTIME environment variable property if not set already
- -->
- <target name="set_rp" unless="c-runtime.path,cpp-runtime.path">
- <echo>using local runtime folder</echo>
- <property name="cpp-runtime.path" value="${env.ETRICE_CPP_RUNTIME}"/>
- <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/>
- </target>
-
- <!--
- clean: deletes all folders created by this script
- -->
- <target name="clean" depends="set_tr,set_rp">
- <delete dir="${bin.path}"/>
- <delete dir="${c-runtime.path}/bin"/>
- <delete dir="${cpp-runtime.path}/bin"/>
- <delete dir="models"/>
- <delete dir="${output}"/>
- <delete dir="src-gen"/>
- <delete dir="tmp"/>
- </target>
-
- <!--
- copy_models: copies the models from their original folders to the build location
- -->
- <target name="copy_models">
- <copy todir="models" >
- <fileset dir="../org.eclipse.etrice.generator.common.tests/models">
- <include name="*.room"/>
- </fileset>
- <fileset dir="${modellib.path}/model">
- <include name="TimingService.room"/>
- <include name="Types.room"/>
- <include name="Language.room"/>
- </fileset>
- </copy>
- </target>
-
- <!--
- generate: invokes the Java generator for the ROOM models
- -->
- <target name="generate" depends="set_tp,copy_models">
- <mkdir dir="${output}"/>
- <path id="clspath">
- <pathelement location="../../plugins/org.eclipse.etrice.generator.cpp/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator.doc/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator.config/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.generator/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.room/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.etphys/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.etmap/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.config/bin"/>
- <pathelement location="../../plugins/org.eclipse.etrice.core.genmodel/bin"/>
- <fileset dir="${target.platform}/plugins/">
- <include name="org.eclipse.emf.ecore_2.9*.jar" />
- <include name="org.eclipse.emf.common_2.9*.jar" />
- <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" />
- <include name="org.eclipse.xtext_2.*.jar" />
- <include name="com.google.inject_*.jar" />
- <include name="com.google.guava_10.*.jar" />
- <include name="org.eclipse.equinox.common_3.6.*.jar" />
- <include name="org.eclipse.xtext.util_2.*.jar" />
- <include name="org.eclipse.xtend.lib_2.*.jar" />
- <include name="org.eclipse.xtext.xbase.lib_2.*.jar" />
- <include name="org.apache.log4j_1.2*.jar" />
- <include name="org.antlr.runtime_3.2*.jar" />
- <include name="javax.inject_1.0*.jar" />
- </fileset>
- </path>
-
- <java output="${output}/generate.txt" classname="org.eclipse.etrice.generator.cpp.Main" fork="true" failonerror="true">
- <arg value="${cpp.tests.model.path}/ChoicePointTest.room"/>
- <arg value="${cpp.tests.model.path}/HandlerTest.room"/>
- <arg value="-etunit"/>
- <classpath refid="clspath"/>
- </java>
- </target>
-
- <!--
- compile_c_runtime: compiles the C runtime library
- -->
- <target name="compile_c_runtime" depends="clean,set_rp">
- <mkdir dir="${c-runtime.path}/bin"/>
- <mkdir dir="${output}"/>
- <exec dir="${c-runtime.path}/bin" executable="gcc" failonerror="true" output="${output}/compile_c_runtime.txt">
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/generic"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <arg value="../src/common/debugging/etMSCLogger.c"/>
- <arg value="../src/common/etUnit/etUnit.c"/>
- <arg value="../src/common/messaging/etMessage.c"/>
- <arg value="../src/common/messaging/etMessageQueue.c"/>
- <arg value="../src/common/messaging/etMessageService.c"/>
- <arg value="../src/common/modelbase/etActor.c"/>
- <arg value="../src/common/modelbase/etPort.c"/>
- <arg value="../src/platforms/generic/etLogger.c"/>
- <arg value="../src/platforms/generic/etPlatform.c"/>
- <arg value="../src/platforms/generic/etTimer.c"/>
- </exec>
- <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_c_runtime.txt" append="true">
- <arg value="-r"/>
- <arg value="liborg.eclipse.etrice.runtime.c.a"/>
- <arg value="etMSCLogger.o"/>
- <arg value="etUnit.o"/>
- <arg value="etMessage.o"/>
- <arg value="etMessageQueue.o"/>
- <arg value="etMessageService.o"/>
- <arg value="etActor.o"/>
- <arg value="etPort.o"/>
- <arg value="etLogger.o"/>
- <arg value="etPlatform.o"/>
- <arg value="etTimer.o"/>
- </exec>
- </target>
-
- <!--
- compile_runtime: compiles the CPP runtime library
- -->
- <target name="compile_runtime" depends="set_rp">
- <mkdir dir="${cpp-runtime.path}/bin"/>
- <mkdir dir="${output}"/>
- <exec dir="${cpp-runtime.path}/bin" executable="gcc" failonerror="true" output="${output}/compile_runtime.txt">
- <arg value="-I${cpp-runtime.path}/src"/>
- <arg value="-I${cpp-runtime.path}/src/platforms/generic"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <arg value="../src/common/debugging/DebuggingService.cpp"/>
- <arg value="../src/common/debugging/MSCFilter.cpp"/>
- <arg value="../src/common/debugging/MSCLogger.cpp"/>
- <!--arg value="../src/common/etUnit/etUnit.c"/-->
- <arg value="../src/common/messaging/Address.cpp"/>
- <arg value="../src/common/messaging/IMessageReceiver.cpp"/>
- <arg value="../src/common/messaging/IRTObject.cpp"/>
- <arg value="../src/common/messaging/Message.cpp"/>
- <arg value="../src/common/messaging/MessageDispatcher.cpp"/>
- <arg value="../src/common/messaging/MessageSeQueue.cpp"/>
- <arg value="../src/common/messaging/MessageService.cpp"/>
- <arg value="../src/common/messaging/MessageServiceController.cpp"/>
- <arg value="../src/common/messaging/RTObject.cpp"/>
- <arg value="../src/common/messaging/RTServices.cpp"/>
- <arg value="../src/common/messaging/RTSystemServicesProtocol.cpp"/>
- <arg value="../src/common/modelbase/ActorClassBase.cpp"/>
- <arg value="../src/common/modelbase/EventReceiver.cpp"/>
- <arg value="../src/common/modelbase/IEventReceiver.cpp"/>
- <arg value="../src/common/modelbase/InterfaceItemBase.cpp"/>
- <arg value="../src/common/modelbase/PortBase.cpp"/>
- <arg value="../src/common/modelbase/SubSystemClassBase.cpp"/>
- <arg value="../src/common/modelbase/SubSystemRunnerBase.cpp"/>
- <arg value="../src/common/modelbase/TestSemaphore.cpp"/>
- </exec>
- <exec dir="${cpp-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true">
- <arg value="-r"/>
- <arg value="liborg.eclipse.etrice.runtime.cpp.a"/>
- <arg value="DebuggingService.o"/>
- <arg value="MSCFilter.o"/>
- <arg value="MSCLogger.o"/>
- <arg value="Address.o"/>
- <arg value="IMessageReceiver.o"/>
- <arg value="IRTObject.o"/>
- <arg value="Message.o"/>
- <arg value="MessageDispatcher.o"/>
- <arg value="MessageSeQueue.o"/>
- <arg value="MessageService.o"/>
- <arg value="MessageServiceController.o"/>
- <arg value="RTObject.o"/>
- <arg value="RTServices.o"/>
- <arg value="RTSystemServicesProtocol.o"/>
- <arg value="ActorClassBase.o"/>
- <arg value="EventReceiver.o"/>
- <arg value="IEventReceiver.o"/>
- <arg value="InterfaceItemBase.o"/>
- <arg value="PortBase.o"/>
- <arg value="SubSystemClassBase.o"/>
- <arg value="SubSystemRunnerBase.o"/>
- <arg value="TestSemaphore.o"/>
- </exec>
- </target>
-
- <!--
- compile: compiles the generated C sources
- -->
- <target name="build" depends="set_rp,compile_c_runtime,compile_runtime,generate">
-
- <!-- compile and link HandlerTest -->
- <mkdir dir="bin/HandlerTest"/>
- <exec dir="bin/HandlerTest" executable="gcc" failonerror="true" output="${output}/build.txt">
- <arg value="-I../../src-gen/ChoicePointTest"/>
- <arg value="-I../../src-gen/HandlerTest"/>
- <arg value="-I../../src-gen"/>
- <arg value="-I${cpp-runtime.path}/src"/>
- <arg value="-I${cpp-runtime.path}/src/platforms/generic"/>
- <arg value="-I${c-runtime.path}/src/common/etUnit"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <arg value="../../src-gen/HandlerTest/HandlerTest_Top.cpp"/>
- <arg value="../../src-gen/HandlerTest/HandlerUser.cpp"/>
- <arg value="../../src-gen/HandlerTest/SubSystem_HandlerTest.cpp"/>
- <arg value="../../src-gen/HandlerTest/SubSystem_HandlerTest_Runner.cpp"/>
- <arg value="../../src-gen/HandlerTest/Tester.cpp"/>
- <arg value="../../src-gen/HandlerTest/TestProtocol.cpp"/>
- </exec>
- <exec dir="bin/HandlerTest" executable="g++" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${cpp-runtime.path}/bin"/>
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oHandlerTest.exe"/>
- <arg value="HandlerTest_Top.o"/>
- <arg value="HandlerUser.o"/>
- <arg value="SubSystem_HandlerTest.o"/>
- <arg value="Tester.o"/>
- <arg value="TestProtocol.o"/>
- <arg value="SubSystem_HandlerTest_Runner.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.cpp"/>
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- </exec>
-
- <!-- compile and link ChoicepointTest -->
- <mkdir dir="bin/ChoicePointTest"/>
- <exec dir="bin/ChoicePointTest" executable="gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-I../../src-gen/ChoicePointTest"/>
- <arg value="-I../../src-gen/HandlerTest"/>
- <arg value="-I../../src-gen"/>
- <arg value="-I${cpp-runtime.path}/src"/>
- <arg value="-I${cpp-runtime.path}/src/platforms/generic"/>
- <arg value="-I${c-runtime.path}/src/common/etUnit"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <arg value="../../src-gen/ChoicePointTest/CPTest_Top.cpp"/>
- <arg value="../../src-gen/ChoicePointTest/CPTester.cpp"/>
- <arg value="../../src-gen/ChoicePointTest/CPUser.cpp"/>
- <arg value="../../src-gen/ChoicePointTest/SubSystem_CPTest.cpp"/>
- <arg value="../../src-gen/ChoicePointTest/SubSystem_CPTest_Runner.cpp"/>
- <arg value="../../src-gen/ChoicePointTest/TestProtocol.cpp"/>
- </exec>
- <exec dir="bin/ChoicePointTest" executable="g++" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${cpp-runtime.path}/bin"/>
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oChoicePointTest.exe"/>
- <arg value="CPTest_Top.o"/>
- <arg value="CPTester.o"/>
- <arg value="CPUser.o"/>
- <arg value="SubSystem_CPTest.o"/>
- <arg value="SubSystem_CPTest_Runner.o"/>
- <arg value="TestProtocol.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.cpp"/>
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- </exec>
- </target>
-
- <!--
- run: runs all executables
- -->
- <target name="run" depends="build">
- <mkdir dir="tmp/log"/>
- <echo>start HandlerTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/HandlerTest/HandlerTest.exe">
- <arg value="-run_as_test_single_threaded"/>
- <arg value="200"/>
- </exec>
- <echo>end HandlerTest</echo>
- <echo>start ChoicePointTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/ChoicePointTest/ChoicePointTest.exe">
- <arg value="-run_as_test_single_threaded"/>
- <arg value="200"/>
- </exec>
- <echo>end ChoicePointTest</echo>
- </target>
-
- <!--
- convert: converts etu- into xunit xml-format
- -->
- <target name="convert" depends="run,set_tp">
- <path id="clspath">
- <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/>
- <fileset dir="${target.platform}/plugins/">
- <include name="org.eclipse.core.runtime_3.0*.jar" />
- <include name="org.eclipse.emf.ecore_2.9*.jar" />
- <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" />
- <include name="org.eclipse.emf.common_2.9*.jar" />
- </fileset>
- </path>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.cpp.tests.ChoicePointTest"/>
- <arg value="./tmp/ChoicePointTest.etu"/>
- <classpath refid="clspath"/>
- </java>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.generator.cpp.tests.HandlerTest"/>
- <arg value="./tmp/HandlerTest.etu"/>
- <classpath refid="clspath"/>
- </java>
- </target>
-
- <!--
- copy_results: copies the *.xml results to their final destination
- -->
- <target name="copy_results" depends="set_tr">
- <move file="./tmp/HandlerTest.xml" tofile="./tmp/CPPHandlerTest.xml"/>
- <move file="./tmp/ChoicePointTest.xml" tofile="./tmp/CPPChoicePointTest.xml"/>
- <copy todir="${test.results}" >
- <fileset dir="./tmp">
- <include name="*.xml"/>
- </fileset>
- </copy>
- </target>
-
-</project>
+<?xml version="1.0"?> +<!-- + Ant makefile for building and running of tests. + This includes invocation of the Java code generator and conversion of the etunit + results into xunit xml. + + To work locally you should define in your environment + ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation + ETRICE_CPP_RUNTIME=path to the org.eclipse.etrice.runtime.cpp folder (relative path doesn't work) + + @author Henrik Rentz-Reichert +--> +<project name="project" default="all"> + + <property name="cpp.tests.model.path" value="./models"/> + <property name="modellib.path" value="../../runtime/org.eclipse.etrice.modellib.cpp"/> + <property name="bin.path" value="./bin"/> + <property name="xml.output" value="./tmp"/> + <property name="output" value="./output"/> + <property environment="env"/> + + + <!-- + all: copies the models, generates, compiles, runs, converts and copies the results + --> + <target name="all" depends="convert,copy_results"> + <echo>done with org.eclipse.etrice.generator.cpp.tests</echo> + </target> + + <!-- + set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already + --> + <target name="set_tp" unless="target.platform"> + <echo>using local target platform</echo> + <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/> + </target> + + <!-- + set_tr: sets the test.result property if not set already + --> + <target name="set_tr" unless="test.results"> + <echo>using local test result folder</echo> + <property name="test.results" value="./results"/> + </target> + + <!-- + set_rp: sets the runtime.path from the ETRICE_CPP_RUNTIME environment variable property if not set already + --> + <target name="set_rp" unless="c-runtime.path,cpp-runtime.path"> + <echo>using local runtime folder</echo> + <property name="cpp-runtime.path" value="${env.ETRICE_CPP_RUNTIME}"/> + <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/> + </target> + + <!-- + clean: deletes all folders created by this script + --> + <target name="clean" depends="set_tr,set_rp"> + <delete dir="${bin.path}"/> + <delete dir="${c-runtime.path}/bin"/> + <delete dir="${cpp-runtime.path}/bin"/> + <delete dir="models"/> + <delete dir="${output}"/> + <delete dir="src-gen"/> + <delete dir="tmp"/> + </target> + + <!-- + copy_models: copies the models from their original folders to the build location + --> + <target name="copy_models"> + <copy todir="models" > + <fileset dir="../org.eclipse.etrice.generator.common.tests/models"> + <include name="*.room"/> + </fileset> + <fileset dir="${modellib.path}/model"> + <include name="TimingService.room"/> + <include name="Types.room"/> + <include name="Language.room"/> + </fileset> + </copy> + </target> + + <!-- + generate: invokes the Java generator for the ROOM models + --> + <target name="generate" depends="set_tp,copy_models"> + <mkdir dir="${output}"/> + <path id="clspath"> + <pathelement location="../../plugins/org.eclipse.etrice.generator.cpp/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator.doc/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator.config/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.generator/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.room/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.etphys/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.etmap/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.config/bin"/> + <pathelement location="../../plugins/org.eclipse.etrice.core.genmodel/bin"/> + <fileset dir="${target.platform}/plugins/"> + <include name="org.eclipse.emf.ecore_2.9*.jar" /> + <include name="org.eclipse.emf.common_2.9*.jar" /> + <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" /> + <include name="org.eclipse.xtext_2.*.jar" /> + <include name="com.google.inject_*.jar" /> + <include name="com.google.guava_10.*.jar" /> + <include name="org.eclipse.equinox.common_3.6.*.jar" /> + <include name="org.eclipse.xtext.util_2.*.jar" /> + <include name="org.eclipse.xtend.lib_2.*.jar" /> + <include name="org.eclipse.xtext.xbase.lib_2.*.jar" /> + <include name="org.apache.log4j_1.2*.jar" /> + <include name="org.antlr.runtime_3.2*.jar" /> + <include name="javax.inject_1.0*.jar" /> + </fileset> + </path> + + <java output="${output}/generate.txt" classname="org.eclipse.etrice.generator.cpp.Main" fork="true" failonerror="true"> + <arg value="${cpp.tests.model.path}/ChoicePointTest.room"/> + <arg value="${cpp.tests.model.path}/HandlerTest.room"/> + <arg value="-etunit"/> + <classpath refid="clspath"/> + </java> + </target> + + <!-- + compile_c_runtime: compiles the C runtime library + --> + <target name="compile_c_runtime" depends="clean,set_rp"> + <mkdir dir="${c-runtime.path}/bin"/> + <mkdir dir="${output}"/> + <exec dir="${c-runtime.path}/bin" executable="gcc" failonerror="true" output="${output}/compile_c_runtime.txt"> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/generic"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <arg value="../src/common/debugging/etMSCLogger.c"/> + <arg value="../src/common/etUnit/etUnit.c"/> + <arg value="../src/common/messaging/etMessage.c"/> + <arg value="../src/common/messaging/etMessageQueue.c"/> + <arg value="../src/common/messaging/etMessageService.c"/> + <arg value="../src/common/modelbase/etActor.c"/> + <arg value="../src/common/modelbase/etPort.c"/> + <arg value="../src/platforms/generic/etLogger.c"/> + <arg value="../src/platforms/generic/etPlatform.c"/> + <arg value="../src/platforms/generic/etTimer.c"/> + </exec> + <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_c_runtime.txt" append="true"> + <arg value="-r"/> + <arg value="liborg.eclipse.etrice.runtime.c.a"/> + <arg value="etMSCLogger.o"/> + <arg value="etUnit.o"/> + <arg value="etMessage.o"/> + <arg value="etMessageQueue.o"/> + <arg value="etMessageService.o"/> + <arg value="etActor.o"/> + <arg value="etPort.o"/> + <arg value="etLogger.o"/> + <arg value="etPlatform.o"/> + <arg value="etTimer.o"/> + </exec> + </target> + + <!-- + compile_runtime: compiles the CPP runtime library + --> + <target name="compile_runtime" depends="set_rp"> + <mkdir dir="${cpp-runtime.path}/bin"/> + <mkdir dir="${output}"/> + <exec dir="${cpp-runtime.path}/bin" executable="gcc" failonerror="true" output="${output}/compile_runtime.txt"> + <arg value="-I${cpp-runtime.path}/src"/> + <arg value="-I${cpp-runtime.path}/src/platforms/generic"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <arg value="../src/common/debugging/DebuggingService.cpp"/> + <arg value="../src/common/debugging/MSCFilter.cpp"/> + <arg value="../src/common/debugging/MSCLogger.cpp"/> + <!--arg value="../src/common/etUnit/etUnit.c"/--> + <arg value="../src/common/messaging/Address.cpp"/> + <arg value="../src/common/messaging/IMessageReceiver.cpp"/> + <arg value="../src/common/messaging/IRTObject.cpp"/> + <arg value="../src/common/messaging/Message.cpp"/> + <arg value="../src/common/messaging/MessageDispatcher.cpp"/> + <arg value="../src/common/messaging/MessageSeQueue.cpp"/> + <arg value="../src/common/messaging/MessageService.cpp"/> + <arg value="../src/common/messaging/MessageServiceController.cpp"/> + <arg value="../src/common/messaging/RTObject.cpp"/> + <arg value="../src/common/messaging/RTServices.cpp"/> + <arg value="../src/common/messaging/RTSystemServicesProtocol.cpp"/> + <arg value="../src/common/modelbase/ActorClassBase.cpp"/> + <arg value="../src/common/modelbase/EventReceiver.cpp"/> + <arg value="../src/common/modelbase/IEventReceiver.cpp"/> + <arg value="../src/common/modelbase/InterfaceItemBase.cpp"/> + <arg value="../src/common/modelbase/PortBase.cpp"/> + <arg value="../src/common/modelbase/SubSystemClassBase.cpp"/> + <arg value="../src/common/modelbase/SubSystemRunnerBase.cpp"/> + <arg value="../src/common/modelbase/TestSemaphore.cpp"/> + </exec> + <exec dir="${cpp-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true"> + <arg value="-r"/> + <arg value="liborg.eclipse.etrice.runtime.cpp.a"/> + <arg value="DebuggingService.o"/> + <arg value="MSCFilter.o"/> + <arg value="MSCLogger.o"/> + <arg value="Address.o"/> + <arg value="IMessageReceiver.o"/> + <arg value="IRTObject.o"/> + <arg value="Message.o"/> + <arg value="MessageDispatcher.o"/> + <arg value="MessageSeQueue.o"/> + <arg value="MessageService.o"/> + <arg value="MessageServiceController.o"/> + <arg value="RTObject.o"/> + <arg value="RTServices.o"/> + <arg value="RTSystemServicesProtocol.o"/> + <arg value="ActorClassBase.o"/> + <arg value="EventReceiver.o"/> + <arg value="IEventReceiver.o"/> + <arg value="InterfaceItemBase.o"/> + <arg value="PortBase.o"/> + <arg value="SubSystemClassBase.o"/> + <arg value="SubSystemRunnerBase.o"/> + <arg value="TestSemaphore.o"/> + </exec> + </target> + + <!-- + compile: compiles the generated C sources + --> + <target name="build" depends="set_rp,compile_c_runtime,compile_runtime,generate"> + + <!-- compile and link HandlerTest --> + <mkdir dir="bin/HandlerTest"/> + <exec dir="bin/HandlerTest" executable="gcc" failonerror="true" output="${output}/build.txt"> + <arg value="-I../../src-gen/ChoicePointTest"/> + <arg value="-I../../src-gen/HandlerTest"/> + <arg value="-I../../src-gen"/> + <arg value="-I${cpp-runtime.path}/src"/> + <arg value="-I${cpp-runtime.path}/src/platforms/generic"/> + <arg value="-I${c-runtime.path}/src/common/etUnit"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <arg value="../../src-gen/HandlerTest/HandlerTest_Top.cpp"/> + <arg value="../../src-gen/HandlerTest/HandlerUser.cpp"/> + <arg value="../../src-gen/HandlerTest/SubSystem_HandlerTest.cpp"/> + <arg value="../../src-gen/HandlerTest/SubSystem_HandlerTest_Runner.cpp"/> + <arg value="../../src-gen/HandlerTest/Tester.cpp"/> + <arg value="../../src-gen/HandlerTest/TestProtocol.cpp"/> + </exec> + <exec dir="bin/HandlerTest" executable="g++" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${cpp-runtime.path}/bin"/> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oHandlerTest.exe"/> + <arg value="HandlerTest_Top.o"/> + <arg value="HandlerUser.o"/> + <arg value="SubSystem_HandlerTest.o"/> + <arg value="Tester.o"/> + <arg value="TestProtocol.o"/> + <arg value="SubSystem_HandlerTest_Runner.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.cpp"/> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + </exec> + + <!-- compile and link ChoicepointTest --> + <mkdir dir="bin/ChoicePointTest"/> + <exec dir="bin/ChoicePointTest" executable="gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-I../../src-gen/ChoicePointTest"/> + <arg value="-I../../src-gen/HandlerTest"/> + <arg value="-I../../src-gen"/> + <arg value="-I${cpp-runtime.path}/src"/> + <arg value="-I${cpp-runtime.path}/src/platforms/generic"/> + <arg value="-I${c-runtime.path}/src/common/etUnit"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <arg value="../../src-gen/ChoicePointTest/CPTest_Top.cpp"/> + <arg value="../../src-gen/ChoicePointTest/CPTester.cpp"/> + <arg value="../../src-gen/ChoicePointTest/CPUser.cpp"/> + <arg value="../../src-gen/ChoicePointTest/SubSystem_CPTest.cpp"/> + <arg value="../../src-gen/ChoicePointTest/SubSystem_CPTest_Runner.cpp"/> + <arg value="../../src-gen/ChoicePointTest/TestProtocol.cpp"/> + </exec> + <exec dir="bin/ChoicePointTest" executable="g++" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${cpp-runtime.path}/bin"/> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oChoicePointTest.exe"/> + <arg value="CPTest_Top.o"/> + <arg value="CPTester.o"/> + <arg value="CPUser.o"/> + <arg value="SubSystem_CPTest.o"/> + <arg value="SubSystem_CPTest_Runner.o"/> + <arg value="TestProtocol.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.cpp"/> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + </exec> + </target> + + <!-- + run: runs all executables + --> + <target name="run" depends="build"> + <mkdir dir="tmp/log"/> + <echo>start HandlerTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/HandlerTest/HandlerTest.exe"> + <arg value="-run_as_test_single_threaded"/> + <arg value="200"/> + </exec> + <echo>end HandlerTest</echo> + <echo>start ChoicePointTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/ChoicePointTest/ChoicePointTest.exe"> + <arg value="-run_as_test_single_threaded"/> + <arg value="200"/> + </exec> + <echo>end ChoicePointTest</echo> + </target> + + <!-- + convert: converts etu- into xunit xml-format + --> + <target name="convert" depends="run,set_tp"> + <path id="clspath"> + <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/> + <fileset dir="${target.platform}/plugins/"> + <include name="org.eclipse.core.runtime_3.0*.jar" /> + <include name="org.eclipse.emf.ecore_2.9*.jar" /> + <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" /> + <include name="org.eclipse.emf.common_2.9*.jar" /> + </fileset> + </path> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.cpp.tests.ChoicePointTest"/> + <arg value="./tmp/ChoicePointTest.etu"/> + <classpath refid="clspath"/> + </java> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.generator.cpp.tests.HandlerTest"/> + <arg value="./tmp/HandlerTest.etu"/> + <classpath refid="clspath"/> + </java> + </target> + + <!-- + copy_results: copies the *.xml results to their final destination + --> + <target name="copy_results" depends="set_tr"> + <move file="./tmp/HandlerTest.xml" tofile="./tmp/CPPHandlerTest.xml"/> + <move file="./tmp/ChoicePointTest.xml" tofile="./tmp/CPPChoicePointTest.xml"/> + <copy todir="${test.results}" > + <fileset dir="./tmp"> + <include name="*.xml"/> + </fileset> + </copy> + </target> + +</project> diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/.classpath b/tests/org.eclipse.etrice.generator.fsmtest.tests/.classpath index 26834e72e..dcc478748 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/.classpath +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src-gen"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/.gitignore b/tests/org.eclipse.etrice.generator.fsmtest.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/.gitignore +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/.project b/tests/org.eclipse.etrice.generator.fsmtest.tests/.project index b3276320f..31481b141 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/.project +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.fsmtest.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.fsmtest.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.fsmtest.tests/.settings/org.eclipse.jdt.core.prefs index f287d53cf..c537b6306 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,7 @@ -eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.generator.fsmtest.tests/META-INF/MANIFEST.MF index 2ec74f60a..c976513b5 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/META-INF/MANIFEST.MF @@ -1,22 +1,22 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.eclipse.etrice.generator.fsmtest.tests
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-Version: 0.3.0.qualifier
-Bundle-SymbolicName: org.eclipse.etrice.generator.fsmtest.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.etrice.generator.fsmtest;bundle-version="0.3.0",
- org.eclipse.etrice.generator.fsmtest.ui;bundle-version="0.3.0",
- org.eclipse.core.runtime,
- org.eclipse.xtext.junit4,
- org.eclipse.ui.workbench;resolution:=optional
-Import-Package: org.apache.log4j,
- org.junit;version="4.5.0",
- org.junit.runner;version="4.5.0",
- org.junit.runner.manipulation;version="4.5.0",
- org.junit.runner.notification;version="4.5.0",
- org.junit.runners;version="4.5.0",
- org.junit.runners.model;version="4.5.0",
- org.hamcrest.core
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.generator
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: org.eclipse.etrice.generator.fsmtest.tests +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-Version: 0.3.0.qualifier +Bundle-SymbolicName: org.eclipse.etrice.generator.fsmtest.tests; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: org.eclipse.etrice.generator.fsmtest;bundle-version="0.3.0", + org.eclipse.etrice.generator.fsmtest.ui;bundle-version="0.3.0", + org.eclipse.core.runtime, + org.eclipse.xtext.junit4, + org.eclipse.ui.workbench;resolution:=optional +Import-Package: org.apache.log4j, + org.junit;version="4.5.0", + org.junit.runner;version="4.5.0", + org.junit.runner.manipulation;version="4.5.0", + org.junit.runner.notification;version="4.5.0", + org.junit.runners;version="4.5.0", + org.junit.runners.model;version="4.5.0", + org.hamcrest.core +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.etrice.generator diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/about.html b/tests/org.eclipse.etrice.generator.fsmtest.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/about.html +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties b/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties index c591a97d9..d262b049b 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties @@ -1,4 +1,4 @@ -source.. = src-gen/
-bin.includes = META-INF/,\
- .
-
+source.. = src-gen/ +bin.includes = META-INF/,\ + . + diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/org.eclipse.etrice.generator.fsmtest.tests.launch b/tests/org.eclipse.etrice.generator.fsmtest.tests/org.eclipse.etrice.generator.fsmtest.tests.launch index a0203180e..d0e2dcf62 100644 --- a/tests/org.eclipse.etrice.generator.fsmtest.tests/org.eclipse.etrice.generator.fsmtest.tests.launch +++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/org.eclipse.etrice.generator.fsmtest.tests.launch @@ -1,16 +1,16 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.generator.fsmtest.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.generator.fsmtest.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.fsmtest.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.generator.fsmtest.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.generator.fsmtest.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.fsmtest.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.generator.java.tests/.classpath b/tests/org.eclipse.etrice.generator.java.tests/.classpath index bb2b15cfe..a2e404af1 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/.classpath +++ b/tests/org.eclipse.etrice.generator.java.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.modellib.java"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.generator.java.tests/.gitignore b/tests/org.eclipse.etrice.generator.java.tests/.gitignore index b86918812..6ea24fa6e 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/.gitignore +++ b/tests/org.eclipse.etrice.generator.java.tests/.gitignore @@ -1,7 +1,7 @@ -/bin
-/models
-/output
-/results
-/src-gen
-/src-gen2
-/tmp
+/bin +/models +/output +/results +/src-gen +/src-gen2 +/tmp diff --git a/tests/org.eclipse.etrice.generator.java.tests/.project b/tests/org.eclipse.etrice.generator.java.tests/.project index 19f187fb0..e76db8475 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/.project +++ b/tests/org.eclipse.etrice.generator.java.tests/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.java.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.java.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.java.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.java.tests/.settings/org.eclipse.jdt.core.prefs index 54e493c07..8000cd6ca 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.generator.java.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,11 +1,11 @@ -eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.generator.java.tests/about.html b/tests/org.eclipse.etrice.generator.java.tests/about.html index 82d49bf5f..d35d5aed6 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/about.html +++ b/tests/org.eclipse.etrice.generator.java.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/tests/org.eclipse.etrice.generator.java.tests/buckminster.cspec b/tests/org.eclipse.etrice.generator.java.tests/buckminster.cspec index 7219f7c76..45ab74232 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.generator.java.tests/buckminster.cspec @@ -1,11 +1,11 @@ -<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.java.tests" componentType="buckminster" version="0.3.0.qualifier">
- <cs:actions>
- <cs:public name="run_tests" actor="ant">
- <cs:actorProperties>
- <cs:property key="buildFile" value="make.xml"/>
- <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/>
- <cs:property key="targets" value="all"/>
- </cs:actorProperties>
- </cs:public>
- </cs:actions>
-</cs:cspec>
+<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.generator.java.tests" componentType="buckminster" version="0.3.0.qualifier"> + <cs:actions> + <cs:public name="run_tests" actor="ant"> + <cs:actorProperties> + <cs:property key="buildFile" value="make.xml"/> + <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/> + <cs:property key="targets" value="all"/> + </cs:actorProperties> + </cs:public> + </cs:actions> +</cs:cspec> diff --git a/tests/org.eclipse.etrice.generator.java.tests/org.eclipse.etrice.generator.java.tests make.xml.launch b/tests/org.eclipse.etrice.generator.java.tests/org.eclipse.etrice.generator.java.tests make.xml.launch index e2d8c3e2a..91a94d67a 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/org.eclipse.etrice.generator.java.tests make.xml.launch +++ b/tests/org.eclipse.etrice.generator.java.tests/org.eclipse.etrice.generator.java.tests make.xml.launch @@ -1,21 +1,21 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.ant.AntLaunchConfigurationType">
-<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.generator.java.tests/make.xml"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="1"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.ui.externaltools.launchGroup"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/CDC-1.0%Foundation-1.0"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.ant.internal.launching.remote.InternalAntRunner"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.java.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/org.eclipse.etrice.generator.java.tests/make.xml}"/>
-<stringAttribute key="process_factory_id" value="org.eclipse.ant.ui.remoteAntProcessFactory"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.ant.AntLaunchConfigurationType"> +<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/> +<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${project}"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.generator.java.tests/make.xml"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.ui.externaltools.launchGroup"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/CDC-1.0%Foundation-1.0"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.ant.internal.launching.remote.InternalAntRunner"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.java.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/> +<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/org.eclipse.etrice.generator.java.tests/make.xml}"/> +<stringAttribute key="process_factory_id" value="org.eclipse.ant.ui.remoteAntProcessFactory"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.generator.java.tests/src/DynamicConfigTest/ConfigSourceTestInstance.java b/tests/org.eclipse.etrice.generator.java.tests/src/DynamicConfigTest/ConfigSourceTestInstance.java index bb6eb4339..5d7b3f846 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/src/DynamicConfigTest/ConfigSourceTestInstance.java +++ b/tests/org.eclipse.etrice.generator.java.tests/src/DynamicConfigTest/ConfigSourceTestInstance.java @@ -1,16 +1,16 @@ -package DynamicConfigTest;
-
-import org.eclipse.etrice.runtime.java.config.ConfigSourceFile;
-import org.eclipse.etrice.runtime.java.config.IConfigSource;
-
-public class ConfigSourceTestInstance {
-
- private static IConfigSource instance = null;
-
- public static IConfigSource getInstance(){
- if(instance == null){
- instance = new ConfigSourceFile("models/DynamicConfigTest_Java.rt-config");
- }
- return instance;
- }
-}
+package DynamicConfigTest; + +import org.eclipse.etrice.runtime.java.config.ConfigSourceFile; +import org.eclipse.etrice.runtime.java.config.IConfigSource; + +public class ConfigSourceTestInstance { + + private static IConfigSource instance = null; + + public static IConfigSource getInstance(){ + if(instance == null){ + instance = new ConfigSourceFile("models/DynamicConfigTest_Java.rt-config"); + } + return instance; + } +} diff --git a/tests/org.eclipse.etrice.generator.java.tests/src/StaticConfigTest/External_Type_Test.java b/tests/org.eclipse.etrice.generator.java.tests/src/StaticConfigTest/External_Type_Test.java index c9f1dc3f0..1798235ce 100644 --- a/tests/org.eclipse.etrice.generator.java.tests/src/StaticConfigTest/External_Type_Test.java +++ b/tests/org.eclipse.etrice.generator.java.tests/src/StaticConfigTest/External_Type_Test.java @@ -1,9 +1,9 @@ -package StaticConfigTest;
-
-public class External_Type_Test {
-
- // deep copy
- public External_Type_Test deepCopy() {
- return new External_Type_Test();
- }
-}
+package StaticConfigTest; + +public class External_Type_Test { + + // deep copy + public External_Type_Test deepCopy() { + return new External_Type_Test(); + } +} diff --git a/tests/org.eclipse.etrice.generator.tests/.classpath b/tests/org.eclipse.etrice.generator.tests/.classpath index f29deb1ba..8927412c7 100644 --- a/tests/org.eclipse.etrice.generator.tests/.classpath +++ b/tests/org.eclipse.etrice.generator.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="models"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="models"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.generator.tests/.gitignore b/tests/org.eclipse.etrice.generator.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.generator.tests/.gitignore +++ b/tests/org.eclipse.etrice.generator.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.generator.tests/.project b/tests/org.eclipse.etrice.generator.tests/.project index 8e73415e7..7cfea26ba 100644 --- a/tests/org.eclipse.etrice.generator.tests/.project +++ b/tests/org.eclipse.etrice.generator.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.generator.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs index 1aa097a85..642f72c80 100644 --- a/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.generator.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Mon Oct 04 11:14:17 CEST 2010
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Mon Oct 04 11:14:17 CEST 2010 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF index ab7c512bc..34af30d02 100644 --- a/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.generator.tests/META-INF/MANIFEST.MF @@ -1,15 +1,15 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Generator Model Tests
-Bundle-SymbolicName: org.eclipse.etrice.generator.tests
-Bundle-Version: 0.3.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0",
- org.eclipse.etrice.generator;bundle-version="0.1.0",
- org.junit;bundle-version="4.8.1",
- org.eclipse.osgi;bundle-version="3.6.0",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.core.runtime;bundle-version="3.6.0"
-Bundle-Activator: org.eclipse.etrice.generator.InstanceTestsActivator
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Generator Model Tests +Bundle-SymbolicName: org.eclipse.etrice.generator.tests +Bundle-Version: 0.3.0.qualifier +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse eTrice (Incubation) +Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0", + org.eclipse.etrice.generator;bundle-version="0.1.0", + org.junit;bundle-version="4.8.1", + org.eclipse.osgi;bundle-version="3.6.0", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.core.runtime;bundle-version="3.6.0" +Bundle-Activator: org.eclipse.etrice.generator.InstanceTestsActivator +Bundle-ActivationPolicy: lazy diff --git a/tests/org.eclipse.etrice.generator.tests/about.html b/tests/org.eclipse.etrice.generator.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.generator.tests/about.html +++ b/tests/org.eclipse.etrice.generator.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.generator.tests/build.properties b/tests/org.eclipse.etrice.generator.tests/build.properties index 4f415d5ce..8a12e2f65 100644 --- a/tests/org.eclipse.etrice.generator.tests/build.properties +++ b/tests/org.eclipse.etrice.generator.tests/build.properties @@ -1,6 +1,6 @@ -source.. = src/,\
- models/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- models/
+source.. = src/,\ + models/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + models/ diff --git a/tests/org.eclipse.etrice.generator.tests/models/largeFile.cpp b/tests/org.eclipse.etrice.generator.tests/models/largeFile.cpp index f5286b3e8..be78dd3a9 100644 --- a/tests/org.eclipse.etrice.generator.tests/models/largeFile.cpp +++ b/tests/org.eclipse.etrice.generator.tests/models/largeFile.cpp @@ -1,2332 +1,2332 @@ -/* **************************************************************
- *
- * bs_ActorClass.cpp
- *
- * (C) 1998 Protos Logistik Software GmbH
- *
- * The actor class implementation.
- *
- * 980826 kb created
- *
- *************************************************************** */
-
-#ifdef CHECK_MEM
- #define WITHOUT_MFCXLib
- #include "../stdafx.h"
-#else
- #define TRACE (void)0
-#endif
-
-/* ************************************************************* */
-
-// switch off compiler warning: reduced identifier length in debug information
-#pragma warning(disable : 4786)
-
-// ***************************************************************
-
-#ifdef _DEBUG
-#define DEBUG_MAKE_CONSISTENT
-#endif
-
-// ***************************************************************
-
-#include <assert.h>
-
-#include <ostream>
-#include <istream>
-#include <algorithm>
-#include <limits>
-using namespace std;
-
-
-#include "bs_ActorClass.h"
-#include "bs_ActorVisitor.h"
-#include "bs_StateMachine.h"
-#include "bs_DataClassObj.h"
-#include "bs_MemberVisitor.h"
-#include "bs_ClassVisitor.h"
-#include "bs_ParallelMdlVisitor.h"
-#include "bs_GraphSort.h"
-#include "../bsRoomBase/bs_ErrorHdlr.h"
-#include "bs_MdlLocation.h"
-#include "bsFormal/bs_AuxGraph.h"
-
-/* ************************************************************* */
-
-#ifdef CHECK_MEM
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
-#endif
-
-/* ************************************************************* */
-
-#include "../bsRoomBase/bs_RoomList.cpp"
-
-/* ************************************************************* */
-
-// explicit instantiation
-template class bs_RoomList<bs_ActorClass>;
-
-// ***************************************************************
-
-// helper class for creating duplicates of actor interface and structure PortRefLists
-class pr_entry
-{
-public:
- typedef enum
- {
- none,
- iface,
- structure,
- common
- }
- Owner;
-
- pr_entry (void)
- : _port_ref(NULL), _owner(none), _if_id(-1), _st_id(-1)
- {}
-
- pr_entry (bs_PortRefPtr p, Owner o, int i, int s)
- : _port_ref(p), _owner(o), _if_id(i), _st_id(s)
- {}
-
- // data
- bs_PortRefPtr _port_ref;
- Owner _owner;
- int _if_id;
- int _st_id;
-};
-
-// default: compare interface id
-bool operator< (const pr_entry& e0, const pr_entry& e1)
-{
- return e0._if_id < e1._if_id;
-}
-
-bool operator== (const pr_entry& e0, const pr_entry& e1)
-{
- return e0._if_id == e1._if_id;
-}
-
-// special compare: structure id
-class st_cmp
-{
-public:
- bool operator() (const pr_entry& e0, const pr_entry& e1)
- {
- return e0._st_id < e1._st_id;
- }
-};
-
-// ***************************************************************
-
-/**# implementation bs_ActorClass:: id(C_0902130146)
-*/
-
-// ***************************************************************
-
-DEFINE_STREAMABLE(bs_ActorClass,"bs_ModelClass")
-
-bs_ActorClass::bs_ActorClass (void) :
- bs_ModelClass(),
- _check_bindings(false),
- _enable_debug_macros(true),
- _override_enable_debug(false),
- _allow_override(false),
- _abstract_class(false),
- _generated_ids_valid(true)
-{
-}
-
-bs_ActorClass::bs_ActorClass (const bs_ActorClass& orig, CopyType t)
-: bs_ModelClass(orig),
- bs_Cloner<bs_ActorClass>(orig),
- _interface(orig._interface, t),
- _structure(orig._structure, t),
- _behaviour(orig._behaviour, t),
- _memberfct(orig._memberfct, t),
- _base_class(GetAppropriatePtr(orig._base_class, t)),
- _check_bindings(false),
- _enable_debug_macros(orig._enable_debug_macros),
- _override_enable_debug(orig._override_enable_debug),
- _allow_override(orig._allow_override),
- _perso_version(orig._perso_version),
- _abstract_class(orig._abstract_class),
- _generated_ids_valid(orig._generated_ids_valid)
-{
-}
-
-bs_ActorClass::~bs_ActorClass (void)
-{
-}
-
-
-bs_ActorClass::bs_ActorClass (bs_RoomName name)
-: bs_ModelClass(name),
- _check_bindings(false),
- _enable_debug_macros(true),
- _override_enable_debug(false),
- _allow_override(false),
- _abstract_class(false)
-{
- CommonConstruct();
-}
-
-
-bs_ActorClass::bs_ActorClass (int version, istream& is, bs_ProtocolClassList& pcl, bs_ActorClassList& acl)
-: bs_ModelClass(),
- _check_bindings(false),
- _enable_debug_macros(true),
- _override_enable_debug(false),
- _allow_override(false),
- _abstract_class(false)
-{
- ReadStream(version, is, pcl, acl);
-
- CommonConstruct();
-}
-
-
-void bs_ActorClass::CommonConstruct (void)
-{
- // join the namespaces of all lists that produce members in the generated class
- _interface.GetPortRefList().JoinNamespace(_structure.GetPortRefList());
- _interface.GetPortRefList().JoinNamespace(_structure.GetSAPs());
- _interface.GetPortRefList().JoinNamespace(_behaviour.GetStateMachine()->GetStateVariables());
-}
-
-
-// ***************************************************************
-
-void bs_ActorClass::Dump (bs_TMSContext& tmsc)
-{
- tmsc.TMS() << "actor class " << GetName();
- if (_base_class)
- tmsc.TMS() << "derived from " << _base_class->GetName();
-
- tmsc.TMS() << " {\n";
- tmsc.Indent();
-
- tmsc.TMS() << "interface: {\n";
- tmsc.Indent();
- _interface.GetPortRefList().Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.TMS() << "structure: {\n";
- tmsc.Indent();
- tmsc.TMS() << "end ports: {\n";
- tmsc.Indent();
- _structure.GetPortRefList().Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.TMS() << "saps: {\n";
- tmsc.Indent();
- _structure.GetSAPs().Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.TMS() << "components: {\n";
- tmsc.Indent();
- _structure.GetActorRefList().Dump(tmsc);
- _structure.GetPrtvRefList().Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.TMS() << "bindings: {\n";
- tmsc.Indent();
- _structure.GetBindingContractList().Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.TMS() << "behaviour: {\n";
- tmsc.Indent();
- _behaviour.Dump(tmsc);
- tmsc.Unindent();
- tmsc.TMS() << "}\n";
-
- tmsc.Unindent();
- tmsc.TMS() << "};\n";
-}
-
-void bs_ActorClass::Docu (bs_DocuContext& dc)
-{
- if (_base_class)
- {
- dc.Docu("derived from" + _base_class->GetName());
- dc.Newline();
- if (_allow_override)
- dc.Docu("(allows overrides)");
- else
- dc.Docu("(prohibits overrides)");
- dc.Newline();
- dc.Newline();
- }
-
- dc.BeginSection("Interface");
- _interface.GetPortRefList().Docu(dc);
- dc.EndSection();
-
- dc.BeginSection("Structure");
- dc.Picture(*this, GetName()+"_structure", "Structure of actor class "+GetName());
- _structure.Docu(dc);
- dc.EndSection();
-
- dc.BeginSection("Behaviour");
- dc.Picture(_behaviour, *this, GetName()+"_behaviour", "Hierarchical state machine of actor class "+GetName());
- _behaviour.GetStateMachine()->Docu(dc);
- dc.EndSection();
-}
-
-
-// ***************************************************************
-
-// bs_StreamObj touch interface
-
-bool bs_ActorClass::IsComponentTouched (void) const
-{
- if (_interface.IsTouched()) return true;
- if (_structure.IsTouched()) return true;
- if (_behaviour.IsTouched()) return true;
- if (_memberfct.IsTouched()) return true;
- return false;
-}
-
-time_t bs_ActorClass::GetLastTouchTime (void) const
-{
- time_t touched = bs_TouchableObject::GetLastTouchTime();
- touched = GetMaxTouchTime(_interface.GetLastTouchTime(), touched);
- touched = GetMaxTouchTime(_structure.GetLastTouchTime(), touched);
- touched = GetMaxTouchTime(_behaviour.GetLastTouchTime(), touched);
- touched = GetMaxTouchTime(_memberfct.GetLastTouchTime(), touched);
-
- return touched;
-}
-
-/* ************************************************************* */
-
-// bs_ActorVisitor interface
-void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_ActorVisitor& visitor)
-{
- visitor.VisitActorClass(myself);
-
- bs_ActorRefList& arefs = _structure.GetActorRefList();
- bs_ActorRefIterator aref;
- for(aref=arefs.begin(); aref!=arefs.end(); aref++)
- {
- (*aref)->Accept(*aref, visitor);
- }
-
- bs_PrtvRefList& prefs = _structure.GetPrtvRefList();
- bs_PrtvRefIterator pref;
- for(pref=prefs.begin(); pref!=prefs.end(); pref++)
- {
- (*pref)->Accept(*pref, visitor);
- }
-
- visitor.VisitActorClassEnd(myself);
-}
-
-/* ************************************************************* */
-
-void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_MemberVisitor& visitor)
-{
- visitor.Visit(myself);
-
- // base class
- if (_base_class)
- _base_class->Accept(_base_class, visitor);
-
- // component actors
- {
- bs_ActorRefList& comp = _structure.GetActorRefList();
- for (bs_ActorRefIterator c=comp.begin(); c!=comp.end(); c++)
- {
- bs_ActorClassPtr ac = (*c)->GetActorClass();
- ac->Accept(ac,visitor);
- }
- }
-
- // component primitives
- {
- bs_PrtvRefList& comp = _structure.GetPrtvRefList();
- for (bs_PrtvRefIterator c=comp.begin(); c!=comp.end(); c++)
- {
- bs_PrtvClassPtr pc = (*c)->GetPrtvClass();
- pc->Accept(pc,visitor);
- }
- }
-
- // SAPClasses
- {
- bs_SAPRefList& saps = _structure.GetSAPs();
- for (bs_SAPRefIterator c=saps.begin(); c!=saps.end(); c++)
- {
- bs_SAPClassPtr sc = (*c)->GetSAPClass();
- sc->Accept(sc,visitor);
- }
- }
-
- // Protocols of PortRefs
- {
- bs_PortRefList& comp = _interface.GetPortRefList();
- bs_PortRefIterator c;
- for (c=comp.begin(); c!=comp.end(); ++c)
- {
- bs_ProtocolClassPtr pc = (*c)->GetProtocolClass();
- pc->Accept(pc,visitor);
- }
- }
- {
- bs_PortRefList& comp = _structure.GetPortRefList();
- bs_PortRefIterator c;
- for (c=comp.begin(); c!=comp.end(); ++c)
- {
- bs_ProtocolClassPtr pc = (*c)->GetProtocolClass();
- pc->Accept(pc,visitor);
- }
- }
-
- // DataMembers
- {
- bs_DataMemberList& dml = _behaviour.GetStateMachine()->GetStateVariables();
- for (bs_DataMemberIterator c=dml.begin(); c!=dml.end(); ++c)
- {
- (*c)->Accept(*c,visitor);
- }
- }
-}
-
-/* ************************************************************* */
-
-void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_ClassVisitor& visitor)
-{
- visitor.Visit(myself);
-}
-
-/* ************************************************************* */
-
-void bs_ActorClass::Accept (bs_ActorClassPtr ac1, bs_ActorClassPtr ac2, bs_ParallelMdlVisitor& visitor)
-{
- if (ac1)
- visitor.PushPath(ac1->GetName());
- else
- visitor.PushPath(ac2->GetName());
-
- bool descend = visitor.Visit(ac1, ac2);
-
- if (!descend || ac1==NULL || ac2==NULL)
- {
- visitor.PopPath();
- return;
- }
-
- bs_ActorInterface::Accept(ac1->_interface, ac2->_interface, visitor);
- bs_ActorStructure::Accept(ac1->_structure, ac2->_structure, visitor);
- bs_ActorBehaviour::Accept(ac1->_behaviour, ac2->_behaviour, visitor);
- bs_ActorMemberFct::Accept(ac1->_memberfct, ac2->_memberfct, visitor);
-
- visitor.PopPath();
-}
-
-/* ************************************************************* */
-
-void bs_ActorClass::Handle (bs_InvalidateGeneratedIDsEvent& evt)
-{
- if (&*evt.GetActorClass()==this)
- _generated_ids_valid = false;
-}
-
-void bs_ActorClass::Handle (bs_CmdExecutedEvent& evt)
-{
- if (!_generated_ids_valid)
- {
- //TRACE("bs_ActorClass[%s]::Handle (bs_CmdExecutedEvent& evt) - setting generated IDs\n", GetName().c_str());
- _behaviour.GetStateMachine()->SetGeneratedIds();
- _generated_ids_valid = true;
- }
-}
-
-/* ************************************************************* */
-
-void bs_ActorClass::GetBaseClasses (vector<bs_ActorClassPtr>& bcl) const
-{
- if (!_base_class)
- return;
-
- // add direct base class
- bcl.push_back(_base_class);
-
- // recurse
- _base_class->GetBaseClasses(bcl);
-}
-
-bool bs_ActorClass::ContainsInstanceOf (bs_ActorClassPtr actor)
-{
- // check references to component actors
- bs_ActorRefList& comp = _structure.GetActorRefList();
- bs_ActorRefIterator c;
- for(c=comp.begin(); c!=comp.end(); c++)
- {
- bs_ActorClassPtr refd = (*c)->GetActorClass();
-
- // direct reference
- if (refd==actor)
- return true;
-
- // or recursive reference
- if (refd->ContainsInstanceOf(actor))
- return true;
- }
-
- // no reference
- return false;
-}
-
-bool bs_ActorClass::IsDerivedFrom (bs_ActorClassPtr base_class)
-{
- if (!_base_class)
- return false;
-
- // direct base class
- if (_base_class==base_class)
- return true;
-
- // or recursive base class
- if (_base_class->IsDerivedFrom(base_class))
- return true;
-
- return false;
-}
-
-bool bs_ActorClass::IsDerivedFrom (bs_RoomName base_class)
-{
- if (!_base_class)
- return false;
-
- // direct base class
- if (_base_class->GetName()==base_class)
- return true;
-
- // or recursive base class
- if (_base_class->IsDerivedFrom(base_class))
- return true;
-
- return false;
-}
-
-
-bool bs_ActorClass::IsUsingActorClass (bs_ActorClassPtr ac)
-{
- if (!ac)
- return false;
-
- const bs_RoomName& ac_name = ac->GetName();
-
- if (IsDerivedFrom(ac_name))
- return true;
-
- bs_ActorRefList& arefs = GetStructure().GetActorRefList();
- for (bs_ActorRefIterator it=arefs.begin(); it!=arefs.end(); ++it)
- {
- if ((*it)->GetActorClass()->GetName()==ac_name)
- return true;
-
- // start recursion
- if ((*it)->GetActorClass()->IsUsingActorClass(ac))
- return true;
- }
- return false;
-}
-
-static void AddInheritedStateVars (const bs_DataMemberList& base_dml, bs_DataMemberList& own_dml)
-{
- // reset owner flag for inherited items
- for (bs_DataMemberList::const_iterator dmit=base_dml.begin(); dmit!=base_dml.end(); ++dmit)
- {
- own_dml.SetOwnerOf((*dmit)->GetName(), false);
- }
-}
-
-template<class T>
-class AddItem
-{
- public:
- virtual bool operator() (bs_RoomPtr<T> item) const { return true; }
-};
-
-template<class T>
-class AddPortItem : public AddItem<T>
-{
- public:
- AddPortItem (const bs_RoomList<T>& list) : _list(list) {}
-
- virtual bool operator() (bs_RoomPtr<T> item) const
- {
- // this is meant for structure ports
- // they are not mandatory if the port already is in the interface
- // i.e. an end port in the base class may be a relay port in the derived class
- bool in_interface = !_list[item->GetName()].IsNull();
- if (in_interface)
- {
- #ifdef _DEBUG
- TRACE("structure port %s is in the interface and will not be added to the derived structure\n",
- item->GetName().c_str()
- );
- #endif
- }
- return !in_interface;
- }
-
- private:
- const bs_RoomList<T>& _list;
-};
-
-template<class T>
-static void AddInheritedItems (
- const string& ac_name,
- const string& item_type,
- const bs_RoomList<T>& base_list,
- bs_RoomList<T>& own_list,
- bool signal_errors,
- const AddItem<T>& add_item
-)
-{
- // reset owner flag for inherited items
- for (bs_RoomList<T>::const_iterator it=base_list.begin(); it!=base_list.end(); ++it)
- {
- // own_list is not owner, but should contain item with same name
- bs_RoomPtr<T> own = own_list[(*it)->GetName()];
- if (own)
- {
- if (own!=*it)
- {
- // base and derived classes have items with same name, but there are
- // two different objects. kill zombie object and discard changes in zombie.
- (*it).TakeOverPtrsFrom(own);
-
- if (signal_errors)
- {
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + ac_name + "' has inherited " +
- item_type + " '"+ (*it)->GetName() +"',\n"
- "which has been decoupled from its base class item!\n\n" +
- "This has been repaired by Trice's consistency check.\n",
- __FILE__,
- __LINE__
- );
- }
- }
- }
- else if (add_item(*it))
- {
- // own_list doesn't contain inherited item
- own_list.push_back(*it);
-
- if (signal_errors)
- {
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + ac_name + "' has missing inherited " +
- item_type + " '" + (*it)->GetName() +"'!\n\n"
- "It is automatically added by Trice's consistency check.\n",
- __FILE__,
- __LINE__
- );
- }
- else
- {
- string msg = "AddInheritedItems - added " + item_type + " '" + (*it)->GetName() +"'\n";
- TRACE(msg.c_str());
- }
- }
-
- own_list.SetOwnerOf((*it)->GetName(), false);
- }
-}
-
-static void AddInheritedBehaviourNotes (
- const string& ac_name,
- bs_StateContext& base_sc,
- bs_StateContext& own_sc,
- bool signal_errors
-)
-{
- bs_StateGraph& base_sg = base_sc.GetStateMachine()->GetStateGraph();
- bs_StateGraph& own_sg = own_sc.GetStateMachine()->GetStateGraph();
-
- // handle items on this level
- AddInheritedItems(ac_name, "note", base_sg.GetNotes(), own_sg.GetNotes(), signal_errors, AddItem<bs_Note>());
-
- // handle sub-graphs recursively
- bs_StateIterator sit;
- for(sit=own_sg.GetStates().begin(); sit!=own_sg.GetStates().end(); sit++)
- {
- if (! ((*sit)->IsInherited() && (*sit)->HasStateMachine()))
- continue;
-
- bs_StatePtr base_s = (*sit)->GetBaseClassState();
- if (base_s==NULL)
- continue;
-
- if (base_sc.OneLevelDown(base_s))
- {
- if (own_sc.OneLevelDown(*sit))
- {
- AddInheritedBehaviourNotes(ac_name, base_sc, own_sc, signal_errors);
- base_sc.OneLevelUp();
- }
- own_sc.OneLevelUp();
- }
- }
-}
-
-static void AddInheritedStateVarsOld (const bs_DataMemberList& base_dml, bs_DataMemberList& own_dml)
-{
- // add derived
- bs_DataMemberList tmp;
- for (bs_DataMemberList::const_iterator dmit=base_dml.begin(); dmit!=base_dml.end(); ++dmit)
- {
- tmp.push_back(*dmit);
- }
-
- // add own
- for (dmit=own_dml.begin(); dmit!=own_dml.end(); ++dmit)
- {
- tmp.push_back(*dmit);
- }
-
- // copy tmp
- own_dml.clear();
- for (dmit=tmp.begin(); dmit!=tmp.end(); ++dmit)
- {
- own_dml.push_back(*dmit);
-
- if (base_dml[(*dmit)->GetName()])
- own_dml.SetOwnerOf((*dmit)->GetName(), false);
- }
-}
-
-template<class T>
-static void AddInheritedItemsOld (const bs_RoomList<T>& base_list, bs_RoomList<T>& own_list)
-{
- // make a copy of the base list
- bs_RoomList<T> tmp(base_list);
-
- // set inherited
- for (bs_RoomList<T>::iterator it=tmp.begin(); it!=tmp.end(); ++it)
- {
- tmp.SetOwnerOf((*it)->GetName(), false);
- }
-
- // add own
- for (it=own_list.begin(); it!=own_list.end(); ++it)
- {
- tmp.push_back(*it);
- }
-
- // copy back
- own_list = tmp;
-}
-
-void bs_ActorClass::AddInheritedAttributes (bool signal_errors)
-{
- if (!_base_class)
- return;
-
- if (signal_errors)
- {
- bs_StateGraph& base_sg = _base_class->GetBehaviour().GetStateMachine()->GetStateGraph();
- _behaviour.GetStateMachine()->GetStateGraph().SetBaseClassPtrs(base_sg);
- }
-
- // NB: we can assume that the direct base class already is complete
-
- if (_perso_version>=8)
- {
- // state variables
- AddInheritedItems(
- GetName(), "data member",
- _base_class->GetBehaviour().GetStateMachine()->GetStateVariables(),
- GetBehaviour().GetStateMachine()->GetStateVariables(),
- signal_errors,
- AddItem<bs_DataMember>()
- );
-
- // interface ports
- AddInheritedItems(
- GetName(), "interface port",
- _base_class->GetInterface().GetPortRefList(),
- GetInterface().GetPortRefList(),
- signal_errors,
- AddItem<bs_PortRef>()
- );
-
- // structure ports
- AddInheritedItems(
- GetName(), "end port",
- _base_class->GetStructure().GetPortRefList(),
- GetStructure().GetPortRefList(),
- signal_errors,
- AddPortItem<bs_PortRef>(_base_class->GetInterface().GetPortRefList())
- );
-
- // actor refs
- AddInheritedItems(
- GetName(), "actor reference",
- _base_class->GetStructure().GetActorRefList(),
- GetStructure().GetActorRefList(),
- signal_errors,
- AddItem<bs_ActorRef>()
- );
-
- // prtv refs
- AddInheritedItems(
- GetName(), "primitive reference",
- _base_class->GetStructure().GetPrtvRefList(),
- GetStructure().GetPrtvRefList(),
- signal_errors,
- AddItem<bs_PrtvRef>()
- );
-
- // binding contracts
- AddInheritedItems(
- GetName(), "binding",
- _base_class->GetStructure().GetBindingContractList(),
- GetStructure().GetBindingContractList(),
- signal_errors,
- AddItem<bs_BindingContract>()
- );
-
- // SAPs
- AddInheritedItems(
- GetName(), "SAP",
- _base_class->GetStructure().GetSAPs(),
- GetStructure().GetSAPs(),
- signal_errors,
- AddItem<bs_SAPRef>()
- );
-
- // structure notes
- AddInheritedItems(
- GetName(), "note",
- _base_class->GetStructure().GetNoteList(),
- GetStructure().GetNoteList(),
- signal_errors,
- AddItem<bs_Note>()
- );
-
- // behaviour notes
- bs_StateContext base_sc(_base_class->GetBehaviour().GetStateMachine());
- bs_StateContext own_sc(_behaviour.GetStateMachine());
- AddInheritedBehaviourNotes(GetName(), base_sc, own_sc, signal_errors);
- }
- else
- {
- // state variables
- AddInheritedStateVarsOld(
- _base_class->GetBehaviour().GetStateMachine()->GetStateVariables(),
- GetBehaviour().GetStateMachine()->GetStateVariables()
- );
-
- // interface ports
- AddInheritedItemsOld(
- _base_class->GetInterface().GetPortRefList(),
- GetInterface().GetPortRefList()
- );
-
- // structure ports
- AddInheritedItemsOld(
- _base_class->GetStructure().GetPortRefList(),
- GetStructure().GetPortRefList()
- );
-
- // actor refs
- AddInheritedItemsOld(
- _base_class->GetStructure().GetActorRefList(),
- GetStructure().GetActorRefList()
- );
-
- // prtv refs
- AddInheritedItemsOld(
- _base_class->GetStructure().GetPrtvRefList(),
- GetStructure().GetPrtvRefList()
- );
-
- // binding contracts
- AddInheritedItemsOld(
- _base_class->GetStructure().GetBindingContractList(),
- GetStructure().GetBindingContractList()
- );
-
- // SAPs
- AddInheritedItemsOld(
- _base_class->GetStructure().GetSAPs(),
- GetStructure().GetSAPs()
- );
- }
-
- // now we are up to date
- _perso_version = STREAMOBJ_VERSION(bs_ActorClass);
-}
-
-string bs_ActorClass::GetObjID (void) const
-{
- return "bs_ActorClass: " + GetName() + GetUniqueObjectIDstr();
-}
-
-// ***************************************************************
-
-void bs_ActorClass::STREAMOBJ_WRITE(bs_ActorClass) (bs_ObjectOStream& oos)
-{
- if (_base_class)
- oos << _base_class->GetName();
- else
- oos << "";
-
- oos << _allow_override;
-
- oos << _interface;
- oos << _structure;
- oos << _behaviour;
- oos << _memberfct;
-
- oos << _enable_debug_macros;
- oos << _override_enable_debug;
- oos << _abstract_class;
-}
-
-
-void bs_ActorClass::STREAMOBJ_READ(bs_ActorClass) (bs_ObjectIStream& ois, Version version)
-{
- _perso_version = version;
-
- if (version>=3)
- ois >> _base_class_name;
-
- if (version>=7)
- ois >> _allow_override;
- else
- _allow_override = false;
-
- ois >> _interface;
- ois >> _structure;
- ois >> _behaviour;
-
- if (version>=1)
- ois >> _memberfct;
-
- CommonConstruct();
-
- // check the oldstyle SAPRefList in ActorInterface and move it to ActorStructure
- bs_SAPRefIterator sap;
- for(sap=_interface.GetOldstyleSAPs().begin(); sap!=_interface.GetOldstyleSAPs().end(); sap++)
- {
- _structure.GetSAPs().push_back(*sap);
- }
- _interface.GetOldstyleSAPs().clear();
-
- /* todo: in later versions, checking can be switched off again,
- currently, we keep it checking until the _real_ reason for
- spurious bindings has been found.*/
-// _check_bindings = (version<2);
-
- _check_bindings = true;
-
- //if (version==2)
- {
- int errors = 0;
- bs_BindingContractList& bcl = _structure.GetBindingContractList();
- for (bs_BindingContractList::iterator it=bcl.begin(); it!=bcl.end(); /* no iterator step here */)
- {
- if ((*it)->GetPoint1().GetPortRef()==(*it)->GetPoint2().GetPortRef())
- {
- ++errors;
- it = bcl.erase(it);
- }
- else
- ++it;
- }
-
- if (errors)
- {
- char buf[32];
- sprintf(buf, "%d", errors);
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + GetName() + "' had " + buf + " corrupt bindings,\n"
- "which have been deleted by Trice's consistency check.",
- __FILE__,
- __LINE__
- );
- }
- }
-
- if (version>=4)
- {
- ois >> _enable_debug_macros;
- }
- if (version>=6)
- {
- ois >> _override_enable_debug;
- }
- if (version>=5)
- {
- ois >> _abstract_class;
- }
-
- RemoveSpuriousTrPoints();
- RemoveSpuriousTrSegments();
-}
-
-void bs_ActorClass::RemoveSpuriousTrPoints (void)
-{
- bool removed = false;
-
- bs_StateGraph& sg = _behaviour.GetStateMachine()->GetStateGraph();
- bs_StateList& sl = sg.GetStates();
- for (bs_StateIterator sit=sl.begin(); sit!=sl.end(); ++sit)
- {
- if ((*sit)->RemoveSpuriousTrPoints(sg))
- removed = true;
- }
-
- if (removed)
- {
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + GetName() + "' had spurious extending transition points,\n"
- "which have been deleted by Trice's consistency check.\n\n"
- "Please check its behaviour for missing transitions!\n",
- __FILE__,
- __LINE__
- );
- }
-}
-
-void bs_ActorClass::RemoveSpuriousTrSegments (void)
-{
- int count = _behaviour.GetStateMachine()->GetStateGraph().RemoveSpuriousTrSegments();
-
- if (count>0)
- {
- char buf[32];
- sprintf(buf, "%d", count);
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + GetName() + "' had " + buf + " corrupt transition segments,\n"
- "which have been deleted by Trice's consistency check.\n\n"
- "Please check its behaviour for missing transition segments!\n",
- __FILE__,
- __LINE__
- );
- }
-}
-
-/*
-static int CheckAndCorrectEndPoint (const bs_BCEndPoint& ep, bs_PortRefList& stp, bs_PortRefList& ifp)
-{
- int corrected = 0;
-
- if (ep.IsLocal())
- {
- bs_PortRefIterator prit = find(stp.begin(), stp.end(), ep.GetPortRef());
- if (prit==stp.end())
- prit = find(ifp.begin(), ifp.end(), ep.GetPortRef());
- if (prit==ifp.end())
- {
- // pointer not found, try with name
- prit = stp.FindName(ep.GetPortRef()->GetName());
- if (prit==stp.end())
- prit = ifp.FindName(ep.GetPortRef()->GetName());
- if (prit==ifp.end())
- {
- // cannot correct
- }
- else
- {
- // correct it
- ep.SetPortRef(*prit);
- corrected++;
- }
- }
- }
- else
- {
- // todo: NIY
- }
-
- return corrected;
-}
-*/
-
-void bs_ActorClass::RemoveSpuriousBindings (void)
-{
- // check for BCEndpoints with spurious PortRefs (bug in Trice)
- // this is checked only for versions in a certain version range (see STREAMOBJ_READ)
- if (! _check_bindings)
- return;
-
- _check_bindings = false;
-
- typedef enum
- {
- bc_error
- }
- Exception;
-
- int errors = 0;
-
- bs_PortRefList& ifp = _interface.GetPortRefList();
- bs_PortRefList& stp = _structure.GetPortRefList();
-
- bs_BindingContractList& bcl = _structure.GetBindingContractList();
- int nbc_before = bcl.size(); // for debugging only
- int nbc_checked = 0; // for debugging only
-// int nbep_corrected = 0; // for debugging only
- for (bs_BindingContractList::iterator it=bcl.begin(); it!=bcl.end(); /* no iterator step here */)
- {
- nbc_checked++;
-
- try
- {
- const bs_BCEndPoint& p1 = (*it)->GetPoint1();
- const bs_BCEndPoint& p2 = (*it)->GetPoint2();
-
-// nbep_corrected += CheckAndCorrectEndPoint(p1, stp, ifp);
-
- if (p1.IsLocal())
- {
- bs_PortRefIterator prit = find(stp.begin(), stp.end(), p1.GetPortRef());
- if (prit==stp.end())
- prit = find(ifp.begin(), ifp.end(), p1.GetPortRef());
- if (prit==ifp.end())
- throw bc_error;
- if (p2.GetActorRef())
- {
- if (! p2.GetActorRef()->GetActorClass())
- throw bc_error;
-
- bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- else
- {
- bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- }
- else if (p2.IsLocal())
- {
- bs_PortRefIterator prit = find(stp.begin(), stp.end(), p2.GetPortRef());
- if (prit==stp.end())
- prit = find(ifp.begin(), ifp.end(), p2.GetPortRef());
- if (prit==ifp.end())
- throw bc_error;
- if (p1.GetActorRef())
- {
- if (! p1.GetActorRef()->GetActorClass())
- throw bc_error;
-
- bs_PortRefList& compp = p1.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p1.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- else
- {
- bs_PortRefList& compp = p1.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p1.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- }
- else
- {
- if (p1.GetActorRef())
- {
- if (! p1.GetActorRef()->GetActorClass())
- throw bc_error;
-
- bs_PortRefList& compp = p1.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList();
- bs_PortRefIterator prit = find(compp.begin(), compp.end(), p1.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- if (p2.GetActorRef())
- {
- if (! p2.GetActorRef()->GetActorClass())
- throw bc_error;
-
- bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- else
- {
- bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- }
- else
- {
- bs_PortRefList& compp = p1.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList();
- bs_PortRefIterator prit = find(compp.begin(), compp.end(), p1.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- if (p2.GetActorRef())
- {
- if (! p2.GetActorRef()->GetActorClass())
- throw bc_error;
-
- bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- else
- {
- bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList();
- prit = find(compp.begin(), compp.end(), p2.GetPortRef());
- if (prit==compp.end())
- throw bc_error;
- }
- }
- }
-
- // do an iterator step (otherwise it is increased in the catch() block)
- it++;
- }
- catch (Exception)
- {
- errors++;
-
- // remove this binding
- // NB: this will implicitly move the iterator one step forward
- it = bcl.erase(it);
- }
- }
-
- int nbc_after = bcl.size(); // for debugging only
- if (errors)
- {
- char buf[32];
- sprintf(buf, "%d", errors);
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + GetName() + "' had " + buf + " corrupt bindings,\n"
- "which have been deleted by Trice's consistency check.\n\n"
- "Please check its structure for missing bindings!\n",
- __FILE__,
- __LINE__
- );
- }
-}
-
-static void CheckPortBases (string ac_name, bs_PortRefList& prl, bs_PortRefList& base_prl)
-{
- bs_PortRefIterator pr;
- for(pr=prl.begin(); pr!=prl.end(); ++pr)
- {
- if (prl.IsOwnerOf((*pr)->GetName()))
- continue;
-
- // we are not owner, base class must have port with same name
- bs_PortRefPtr base_pr = base_prl[(*pr)->GetName()];
- if (base_pr)
- {
- if (base_pr!=*pr)
- {
- // base class contains port with same name, but there are
- // two different port objects.
- // kill zombie PortRef object and discard changes in zombie
- base_pr.TakeOverPtrsFrom(*pr);
-
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + ac_name + "' has inherited port " + (*pr)->GetName() +",\n"
- "which has been decoupled from its base class port! This has been repaired by\n"
- "Trice's consistency check.\n",
- __FILE__,
- __LINE__
- );
- }
- }
- else
- {
- // base class doesn't have port with same name, decouple it.
- prl.SetOwnerOf((*pr)->GetName());
-
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- "Actor class '" + ac_name + "' has inherited port " + (*pr)->GetName() +",\n"
- "which is unknown in base class! It is automatically set to non-inherited.\n",
- __FILE__,
- __LINE__
- );
- }
- }
-}
-
-void bs_ActorClass::RemoveSpuriousPorts (void)
-{
- if (! _base_class)
- return;
-
- CheckPortBases(
- GetName(),
- _interface.GetPortRefList(),
- _base_class->GetInterface().GetPortRefList()
- );
- CheckPortBases(
- GetName(),
- _structure.GetPortRefList(),
- _base_class->GetStructure().GetPortRefList()
- );
-}
-
-void bs_ActorClass::SetBaseClass (bs_ActorClassList& acl)
-{
- _base_class = acl[_base_class_name];
-}
-
-void bs_ActorClass::ReadStream (int version, istream& is, bs_ProtocolClassList& pcl, bs_ActorClassList& acl)
-{
- bs_RoomObject::ReadStream(is);
-
- _interface.ReadStream(is, pcl);
- _structure.ReadStream(version, is, pcl, acl);
- _behaviour.ReadStream(version, is);
-}
-
-
-
-bool bs_ActorClass::operator== (const bs_ActorClass& rhs) const
-{
- if (((bs_ModelClass)rhs) != *(bs_ModelClass*)this)
- return false;
-
- string bc_name;
- if (_base_class)
- bc_name = _base_class->GetName();
- string rhs_bc_name;
- if (rhs._base_class)
- rhs_bc_name = rhs._base_class->GetName();
-
- if (bc_name!=rhs_bc_name)
- return false;
-
- if (_interface != rhs._interface)
- return false;
-
- if (_structure != rhs._structure)
- return false;
-
- if (_behaviour != rhs._behaviour)
- return false;
-
- if (_memberfct != rhs._memberfct)
- return false;
-
- return true;
-}
-
-
-void bs_ActorClass::PrepareTakingOver (bs_ActorClassPtr old)
-{
- if (this==(bs_ActorClass*)old)
- return;
-
- _interface.PrepareTakingOver(old->GetInterface());
- _structure.PrepareTakingOver(old->GetStructure());
- _behaviour.GetStateMachine()->PrepareTakingOver(old->_behaviour.GetStateMachine());
-}
-
-
-bs_CheckReport bs_ActorClass::CheckConsistency (void)
-{
- return _behaviour.CheckConsistency(_base_class ? &_base_class->GetBehaviour() : NULL);
-}
-
-
-// ***************************************************************
-
-bool bs_ActorClassList::MayDeletePortRef (bs_PortRefPtr port_ref)
-{
- bs_ActorClassIterator i;
- for(i=begin(); i!=end(); i++)
- {
- if ((*i)->GetStructure().GetBindingContractList().IsBoundOnComponent(port_ref))
- return false;
- }
-
- return true;
-}
-
-bool bs_ActorClassList::IsUsingActorClass (bs_RoomName ac1_name, bs_RoomName ac2_name)
-{
- bs_ActorClassPtr ac1 = (*this)[ac1_name];
- if (ac1)
- {
- bs_ActorClassPtr ac2 = (*this)[ac2_name];
- return ac1->IsUsingActorClass(ac2);
- }
- else
- return false;
-}
-
-bool bs_ActorClassList::HasDerivedClass (bs_ActorClassPtr base_ac)
-{
- for (bs_ActorClassIterator it=begin(); it!=end(); ++it)
- {
- if ((*it)->IsDerivedFrom(base_ac))
- return true;
- }
-
- return false;
-}
-
-void bs_ActorClassList::RemoveAllBindingsTo (bs_ActorClassPtr ac)
-{
- bs_ActorClassIterator i;
- for(i=begin(); i!=end(); i++)
- {
- bs_ActorRefList& arefs = (*i)->GetStructure().GetActorRefList();
- for (bs_ActorRefIterator aref=arefs.begin(); aref!=arefs.end(); ++aref)
- {
- if ((*aref)->GetActorClass()==ac)
- {
- bs_PortRefList& prl = ac->GetInterface().GetPortRefList();
- for (bs_PortRefIterator pref=prl.begin(); pref!=prl.end(); ++pref)
- {
- (*i)->GetStructure().GetBindingContractList().RemoveBindingsTo(*pref);
- }
- }
- }
- }
-}
-
-
-// ***************************************************************
-
-DEFINE_STREAMABLE(bs_ActorClassList,"bs_Namespace")
-
-bs_ActorClassList::bs_ActorClassList (void) :
- bs_RoomList<bs_ActorClass> ("ActorClassListDummyName")
-{
-}
-
-bs_ActorClassList::bs_ActorClassList (bs_RoomName basename) :
- bs_RoomList<bs_ActorClass> (basename)
-{
-}
-
-// helper class used for sorting
-class GetReferencedActors
-{
-public:
- typedef bs_ActorClassPtr obj;
- typedef vector<obj> ObjVec;
-
- ObjVec operator() (const obj& ac)
- {
- ObjVec objs;
- objs.clear();
-
- ac->GetBaseClasses(objs);
-
- bs_ActorRefList& arefs = ac->GetStructure().GetActorRefList();
- for (bs_ActorRefIterator ir=arefs.begin(); ir!=arefs.end(); ++ir)
- {
- objs.push_back((*ir)->GetActorClass());
- }
-
- return objs;
- }
-};
-
-bs_ActorClassList::bs_ActorClassList (const bs_ActorClassList& orig, CopyType t)
-: bs_RoomList<bs_ActorClass>(orig, t)
-{
-}
-
-void bs_ActorClassList::GetDependencySortedVector (vector<bs_ActorClassPtr>& result) const
-{
- // (a) make a temporary vector
- vector<bs_ActorClassPtr> tmp(*this);
-
- // (b) sort following dependencies
- bs_GraphSort(tmp,GetReferencedActors());
-
- // (c) fill result
- result.clear();
- for (reverse_iterator i=tmp.rbegin(); i!=tmp.rend(); i++)
- {
- result.push_back(*i);
- }
-}
-
-void bs_ActorClassList::STREAMOBJ_WRITE(bs_ActorClassList) (bs_ObjectOStream& oos)
-{
- for (iterator it=begin(); it!=end(); it++)
- {
- (*it)->GetBehaviour().GetStateMachine()->SetGeneratedIds();
- }
-
- WriteMembersSorted(oos);
-}
-
-void bs_ActorClassList::STREAMOBJ_READ(bs_ActorClassList) (bs_ObjectIStream& ois, Version)
-{
- ReadMembers(ois);
-
- // loop actor classes and set pointers in actor refs
- for (iterator it=begin(); it!=end(); ++it)
- {
- (*it)->SetBaseClass(*this);
-
- bs_ActorRefList& arl = (*it)->GetStructure().GetActorRefList();
- for (bs_ActorRefIterator arit=arl.begin(); arit!=arl.end(); ++arit)
- {
- (*arit)->SetActorClassPtr(*this);
- }
- }
-
- // some clean-up
- for (it=begin(); it!=end(); ++it)
- {
- (*it)->RemoveSpuriousBindings();
- }
-}
-
-
-
-
-void bs_ActorClassList::ResetUsedFlags (void)
-{
- bs_ActorClassIterator i;
- for(i=begin(); i!=end(); i++)
- {
- (*i)->SetUsed(false);
- }
-}
-
-
-
-void bs_ActorClassList::ResetVisitedFlags (void)
-{
- bs_ActorClassIterator i;
- for(i=begin(); i!=end(); i++)
- {
- (*i)->ResetVisitedFlag();
- }
-}
-
-
-
-void bs_ActorClassList::ReadStream (int version, istream& is, bs_ProtocolClassList& pcl)
-{
- bool more;
-
- // read actor classes (without bindings)
- is >> more;
- while (more)
- {
- push_back(new bs_ActorClass(version, is, pcl, *this));
- is >> more;
- }
-
-
- // read bindings
- is >> more;
- while (more)
- {
- bs_RoomName actor_name; actor_name.ReadStream(is);
- bs_ActorClassPtr actor = (*this)[actor_name];
-
- actor->GetStructure().GetBindingContractList().ReadStream(is, actor);
- is >> more;
- }
-
-}
-
-bs_CheckReport bs_ActorClassList::CheckConsistency (void)
-{
- bs_CheckReport rep;
-
- vector<bs_ActorClassPtr> tmp;
- GetDependencySortedVector(tmp);
-
- // check in order of dependencies
- for (vector<bs_ActorClassPtr>::iterator it=tmp.begin(); it!=tmp.end(); it++)
- {
- bs_CheckReport actor_rep = (*it)->CheckConsistency();
- rep.AddReportSection(actor_rep,"Actor " + (*it)->GetName());
- }
-
- // check in order of dependencies
- for (vector<bs_ActorClassPtr>::iterator vit=tmp.begin(); vit!=tmp.end(); vit++)
- {
- (*vit)->RemoveSpuriousPorts();
- }
-
- return rep;
-}
-
-
-// ***************************************************************
-
-void bs_ActorClass::RefreshFormalInfos (bs_ActorClassPtr actor, bool have_license)
-{
- bs_StateMachinePtr toplevel_sm = actor->GetBehaviour().GetStateMachine();
- bs_StateGraph& graph = toplevel_sm->GetStateGraph();
- bs_TrSegmentList& transitions = graph.GetTrSegments();
- bs_StateList& states = graph.GetStates();
-
- /*
- {
- bs_SourceParser::Signals signals;
- bs_SourceParser parser(actor->GetStructure().GetPortRefList(), actor->GetStructure().GetSAPs());
- bs_TrSegmentIterator ti;
- for(ti=transitions.begin(); ti!=transitions.end(); ti++)
- {
- parser.GetSignals((*ti)->GetActionCode(), signals);
- }
-
- bs_StateIterator si;
- for(si=states.begin(); si!=states.end(); si++)
- {
- parser.GetSignals((*si)->GetEntryAction(), signals);
- parser.GetSignals((*si)->GetExitAction(), signals);
- }
-
-
- bs_SourceParser::Signals::iterator s;
- string txt = "Outgoing signals:\t";
- for(s=signals.begin(); s!=signals.end(); s++)
- {
- txt += s->GetSignal() + ":" + s->GetPortRef()->GetName() + "\t";
- }
- txt += "\n";
- TRACE(txt.c_str());
- }
- */
-
- {
- FmlFactory factory(toplevel_sm);
- bs_AuxGraph aux_graph(graph, factory);
-// bs_SourceParser parser(actor->GetStructure().GetPortRefList(), actor->GetStructure().GetSAPs());
-
- // compute reachability of states, choicepoints and transitions
- {
- aux_graph.ComputeReachability();
- bs_AuxGraph::Nodes::iterator ni;
- /*
- for(si=aux_graph.GetStates().begin(); si!=aux_graph.GetStates().end(); si++)
- {
- bs_StatePtr s = si->second.GetState();
- if (s!=NULL)
- {
- bs_SourceParser::Signals signals;
- parser.GetSignals(s->GetEntryAction(), signals);
- parser.GetSignals(s->GetExitAction(), signals);
- bs_SourceParser::Signals::iterator sig;
- string txt;
- for(sig=signals.begin(); sig!=signals.end(); sig++)
- {
- if (sig!=signals.begin()) txt += ", ";
- txt += sig->GetSignal() + ":" + sig->GetPortRef()->GetName();
- }
- s->GetAnalysis()._textual_info = txt;
- }
- }
- */
- }
-
- // without DEVELOP_FORMAL we will not do more ...
- if (! have_license)
- return;
-
- // compute outgoing signals for complete graph
- {
- /*
- bs_SourceParser::Signals signals;
- aux_graph.ComputeOutgoingSignals(actor, signals);
-
- bs_SourceParser::Signals::iterator s;
- string txt = "Outgoing signals:\t";
- for(s=signals.begin(); s!=signals.end(); s++)
- {
- txt += s->GetSignal() + ":" + s->GetPortRef()->GetName() + "\t";
- }
- txt += "\n";
- TRACE(txt.c_str());
- */
- }
-
- // compute outstanding signals for each state
- if (graph.GetFormalCheckLevel()==bs_StateGraph::fc_full)
- {
- //bs_SourceParser::Signals signals;
- aux_graph.ComputeOutstandingSignals(actor);
- }
- }
-}
-
-template<class C>
-class bs_HasPos
-{
-public:
- bs_HasPos (const bs_ContextCoord& pos) : _pos(pos) {}
-
- bool operator () (bs_RoomPtr<C>& obj)
- {
- return IsEqual(_pos, obj->GetContextCoord());
- }
-
-private:
- static bool IsEqual (double a, double b)
- {
- return floor(a*1000)==floor(b*1000);
- }
-
- static bool IsEqual (bs_ContextCoord& a, bs_ContextCoord& b)
- {
- return IsEqual(a.X, b.X) && IsEqual(a.Y, b.Y);
- }
-
-private:
- bs_ContextCoord _pos;
-};
-
-#undef max
-
-template<class C>
-static int RenameDerivedIff (bs_RoomList<C>& lst, bs_RoomPtr<C>& obj, bs_RoomPtr<C>& base_obj)
-{
- if (base_obj->GetName()==obj->GetName())
- return 0;
-
- // have to rename inherited obj
-
- // check for name conflict first
- if (!lst.IsUniqueName(base_obj->GetName().c_str()))
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: renaming other obj %s", base_obj->GetName().c_str());
- #endif
-
- string new_name = lst.GetUniqueDefaultName();
- if (!lst.ChangeName(base_obj->GetName(), new_name))
- {
- HANDLE_ERROR("RenameDerivedIff - renaming other failed");
- }
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" to %s\n", new_name.c_str());
- #endif
- }
-
- // alright: here we go
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: renaming %s to %s\n", obj->GetName().c_str(), base_obj->GetName().c_str());
- #endif
-
- if (!lst.ChangeName(obj->GetName(), base_obj->GetName()))
- {
- HANDLE_ERROR("RenameDerivedIff - renaming failed");
- }
-
- return 1;
-}
-
-template<class C, class Creator, class Matcher>
-static int MakeDerivedListConsistent (bs_RoomList<C>& lst, bs_RoomList<C>& base_lst, Creator creator, Matcher match)
-{
- int fixed = 0;
-
- int n_inherited = 0;
- {
- for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2)
- if ((*it2)->IsInherited())
- n_inherited++;
- }
-
- int missing_inherited = base_lst.size()-n_inherited;
- if (missing_inherited)
- TRACE(" ### inherited mismatch (%d!=%d)\n", base_lst.size(), n_inherited);
-
- for (bs_RoomList<C>::iterator it=base_lst.begin(); it!=base_lst.end(); ++it)
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("--- %s ---\n", (*it)->GetName().c_str());
- #endif
-
- // find matching derived class object by position
- bs_RoomList<C>::iterator it_deriv = lst.end();
- double min = numeric_limits<double>::max();
- if (true)
- {
- // minimal dist^2
- for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2)
- {
- if (!match(*it, *it2))
- continue;
-
- double dist2 = norm2((*it)->GetContextCoord()-(*it2)->GetContextCoord());
- if (dist2<min)
- {
- min = dist2;
- it_deriv = it2;
- if (min==0.0)
- break;
- }
- }
- #ifdef DEBUG_MAKE_CONSISTENT
- if (min!=0.0)
- TRACE(" min dist = %12.8f\n", sqrt(min));
- #endif
- }
- else
- {
- // exactly matching pos with rounding
- it_deriv = find_if(lst.begin(), lst.end(), bs_HasPos<C>((*it)->GetContextCoord()));
- }
-
- // require better than 1% match
- if (min>1e-4 || it_deriv==lst.end())
- {
- if (missing_inherited>0)
- {
- it_deriv = creator.GetNewObj();
- (*it_deriv)->SetInherited();
-
- missing_inherited--;
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: added missing inherited\n");
- #endif
- }
- else
- {
- //HANDLE_ERROR("MakeDerivedListConsistent - inconsistent data structure");
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" missing inherited\n");
- TRACE(" searched pos (%12.8f,%12.8f)\n", (*it)->GetContextCoord().X, (*it)->GetContextCoord().Y);
- for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2)
- {
- TRACE(" (%12.8f,%12.8f) %s\n", (*it2)->GetContextCoord().X, (*it2)->GetContextCoord().Y, (*it2)->GetName().c_str());
- }
- #endif
-
- continue;
- }
- }
- if (!(*it_deriv)->IsInherited())
- {
-// HANDLE_ERROR("MakeDerivedListConsistent - inconsistent data structure");
- missing_inherited--;
- (*it_deriv)->SetInherited();
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: made inherited\n");
- #endif
- }
-
- // ensuring same pos
- (*it_deriv)->SetContextCoord((*it)->GetContextCoord());
-
- fixed += RenameDerivedIff(lst, *it_deriv, *it);
- }
-
- for (it=lst.begin(); it!=lst.end(); ++it)
- {
- if (!(*it)->IsInherited())
- continue;
-
- bs_RoomPtr<C> base_obj = base_lst[(*it)->GetName()];
- if (base_obj.IsNull())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: %s: spurious inherited\n", (*it)->GetName().c_str());
- #endif
-
- (*it)->SetInherited(false);
- }
- }
-
- n_inherited = 0;
- {
- for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2)
- if ((*it2)->IsInherited())
- n_inherited++;
- }
-
- missing_inherited = base_lst.size()-n_inherited;
- if (missing_inherited)
- TRACE(" ### still inherited mismatch (%d!=%d)\n", base_lst.size(), n_inherited);
-
- return fixed;
-}
-
-static int CheckInheritanceProperties (
- bs_TrSegmentPtr ts,
- bs_TrPointPtr tp,
- bs_StateMachinePtr sub_sm,
- bs_StateMachinePtr base_sm,
- bs_StateMachinePtr base_sub_sm
-)
-{
- if (ts->IsInherited())
- {
- int fixed = 0;
- if (!tp->IsInherited())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: setting %s to inherited\n", tp->GetName().c_str());
- #endif
-
- fixed ++;
- tp->SetInherited();
- }
-
- bs_TrSegmentPtr base_ts = ts->GetBaseClassSegment();
- if (!base_ts)
- HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure");
-
- bs_TrSegmentList& base_tsl = base_sm->GetStateGraph().GetTrSegments();
- if (base_tsl.FindItem(base_ts)==base_tsl.end())
- HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure");
-
- bs_TrPointPtr base_tp = base_sub_sm->GetStateGraph().GetTrPoint(base_ts);
- if (!base_tp)
- HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure");
-
- if (tp->GetContextCoord()!=base_tp->GetContextCoord())
- {
- double dist2 = norm2(tp->GetContextCoord()-base_tp->GetContextCoord());
- if (dist2>1e-4)
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: setting %s to base tp position\n", tp->GetName().c_str());
- #endif
-
- fixed ++;
- tp->SetContextCoord(base_tp->GetContextCoord());
- }
- }
- return fixed + RenameDerivedIff(sub_sm->GetStateGraph().GetTrPoints(), tp, base_tp);
- }
- else
- {
- if (tp->IsInherited())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: setting %s to non-inherited\n", tp->GetName().c_str());
- #endif
-
- tp->SetInherited(false);
- return 1;
- }
- }
-
- return 0;
-}
-
-static bs_TrPointPtr AddTrPoint (
- bs_TrSegmentPtr ts,
- bs_StatePtr s,
- bs_StateMachinePtr sub_sm,
- bs_StateMachinePtr base_sub_sm,
- bool is_incoming
-)
-{
- bs_TrPointPtr tp;
-
- if (ts->IsInherited())
- {
- bs_TrSegmentPtr base_ts = ts->GetBaseClassSegment();
- if (!base_ts)
- HANDLE_ERROR("AddTrPoint - inconsistent data structure");
-
- bs_TrPointPtr base_tp = base_sub_sm->GetStateGraph().GetTrPoint(base_ts);
- if (!base_tp)
- HANDLE_ERROR("AddTrPoint - inconsistent data structure");
-
- tp = sub_sm->GetStateGraph().AddNewTrPoint(ts, is_incoming);
- tp->SetInherited();
-
- RenameDerivedIff(sub_sm->GetStateGraph().GetTrPoints(), tp, base_tp);
- }
- else
- {
- tp = sub_sm->GetStateGraph().AddNewTrPoint(ts, is_incoming);
-
- int cnt = 0;
- while (true)
- {
- // use system time for unique name
- string name = tp->GetName();
- time_t tm = time(NULL);
- char buffer[32];
- sprintf(buffer, "%d%d", tm, cnt);
- name += buffer;
-
- if (sub_sm->GetStateGraph().GetTrPoints().ChangeName(tp->GetName(), name))
- // fine
- break;
-
- if (++cnt>100)
- {
- HANDLE_ERROR("AddTrPoint: inconsistent data structure");
- break;
- }
- }
- }
- tp->ComputeContextCoord(s->GetContextCoord());
-
- return tp;
-}
-
-class HasOutside2
-{
-public:
- HasOutside2(const bs_TrSegment* tseg, bool incoming) : _tseg(tseg), _incoming(incoming) { }
-
- bool operator() (const bs_TrPointPtr& item) const
- {
- if (item->IsNonExtending())
- return false;
-
- if (item->IsIncoming()!=_incoming)
- return false;
-
- bs_TrSegmentPtr t = item->GetOutsideTrSegment();
- return (_tseg==(const bs_TrSegment*)t);
- }
-
-private:
- const bs_TrSegment* _tseg;
- bool _incoming;
-};
-
-static bs_TrPointPtr GetUniqueTrPoint (bs_StateGraph& sg, bs_TrSegment* outside, bool incoming)
-{
- bs_TrPointList::iterator tp = find_if(sg.GetTrPoints().begin(), sg.GetTrPoints().end(), HasOutside2(outside, incoming));
- if (tp!=sg.GetTrPoints().end())
- {
- // check uniqueness
- bs_TrPointList::iterator tp2 = find_if(tp+1, sg.GetTrPoints().end(), HasOutside2(outside, incoming));
- while (tp2!=sg.GetTrPoints().end())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: destroying %s\n", (*tp2)->GetName().c_str());
- #endif
- tp2 = sg.GetTrPoints().erase(tp2);
- tp2 = find_if(tp2, sg.GetTrPoints().end(), HasOutside2(outside, incoming));
- }
-
- return *tp;
- }
-
- return NULL;
-}
-
-static int MakeTrPointConnectivityConsistent (
- bs_StatePtr s,
- bs_StateMachinePtr sm,
- bs_StateMachinePtr base_sm,
- bs_StateMachinePtr sub_sm,
- bs_StateMachinePtr base_sub_sm
-)
-{
- bs_TrSegmentList& tsl = sm->GetStateGraph().GetTrSegments();
- bs_StateGraph& sub_sg = sub_sm->GetStateGraph();
-
- int fixed = 0;
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("<<< MakeTrPointConnectivityConsistent >>>\n");
- #endif
-
- // loop outgoing trsegments of s
- for (bs_TrSegmentIterator it=tsl.GetOutgoing(s); it!=tsl.end(); it=tsl.GetOutgoing(s, it))
- {
- bs_TrPointPtr tp = GetUniqueTrPoint(sub_sg, *it, false);
- if (tp)
- {
- if (!tp->IsOutgoing())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: setting %s to outgoing\n", tp->GetName().c_str());
- #endif
-
- ++fixed;
- tp->SetOutgoing(*it);
- }
- fixed += CheckInheritanceProperties(*it, tp, sub_sm, base_sm, base_sub_sm);
- }
- else
- {
- // error: add trpoint
- ++fixed;
- tp = AddTrPoint(*it, s, sub_sm, base_sub_sm, false);
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: adding %s to outgoing\n", tp->GetName().c_str());
- #endif
- }
- }
-
- // loop incoming trsegments of s
- for (it=tsl.GetIncoming(s); it!=tsl.end(); it=tsl.GetIncoming(s, it))
- {
- bs_TrPointPtr tp = GetUniqueTrPoint(sub_sg, *it, true);
- if (tp)
- {
- if (!tp->IsIncoming())
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: setting %s to incoming\n", tp->GetName().c_str());
- #endif
-
- ++fixed;
- tp->SetIncoming(*it);
- }
- fixed += CheckInheritanceProperties(*it, tp, sub_sm, base_sm, base_sub_sm);
- }
- else
- {
- // error: add trpoint
- ++fixed;
- tp = AddTrPoint(*it, s, sub_sm, base_sub_sm, true);
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE(" *** fix: adding %s to incoming\n", tp->GetName().c_str());
- #endif
- }
- }
-
- return fixed;
-}
-
-class CPCreator
-{
-public:
- CPCreator (bs_StateGraph& sg) : _sg(sg) {}
-
- bs_ChoicepointIterator GetNewObj (void)
- {
- bs_ChoicepointPtr cp = _sg.AddNewChoicepoint();
- return _sg.GetChoicepoints().FindItem(cp);
- }
-
-private:
- bs_StateGraph& _sg;
-};
-
-static bool MatchCP (bs_ChoicepointPtr&, bs_ChoicepointPtr&)
-{
- return true;
-}
-
-class TrPCreator
-{
-public:
- TrPCreator (bs_StateGraph& sg) : _sg(sg) {}
-
- bs_TrPointIterator GetNewObj (void)
- {
- bs_TrPointPtr tp = _sg.AddNewTrPoint(NULL, false);
- return _sg.GetTrPoints().FindItem(tp);
- }
-
-private:
- bs_StateGraph& _sg;
-};
-
-static bool MatchTrP (bs_TrPointPtr& tp1, bs_TrPointPtr& tp2)
-{
- return tp1->IsNonExtending()==tp2->IsNonExtending();
-}
-
-static int MakeDerivedObjsConsistent (bs_StateMachinePtr sm, bs_StateMachinePtr base_sm)
-{
- int fixed = 0;
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("====== MakeDerivedObjsConsistent ======\n");
- #endif
-
- // choicepoints
- bs_ChoicepointList& cpl = sm->GetStateGraph().GetChoicepoints();
- bs_ChoicepointList& base_cpl = base_sm->GetStateGraph().GetChoicepoints();
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("~~~~~~ checking choicepoints ~~~~~~\n");
- #endif
- fixed += MakeDerivedListConsistent(cpl, base_cpl, CPCreator(sm->GetStateGraph()), MatchCP);
-
- // trpoints
- bs_TrPointList& tpl = sm->GetStateGraph().GetTrPoints();
- bs_TrPointList& base_tpl = base_sm->GetStateGraph().GetTrPoints();
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("~~~~~~ checking trpoints ~~~~~~\n");
- #endif
- fixed += MakeDerivedListConsistent(tpl, base_tpl, TrPCreator(sm->GetStateGraph()), MatchTrP);
-
- // recurse into base class states
- bs_StateList& sl = sm->GetStateGraph().GetStates();
- bs_StateList& base_sl = base_sm->GetStateGraph().GetStates();
-
- bs_StateContext sc(sm);
- bs_StateContext base_sc(base_sm);
-
- for (bs_StateIterator sit=base_sl.begin(); sit!=base_sl.end(); ++sit)
- {
- bs_StatePtr s = sl[(*sit)->GetName()];
- if (!s)
- {
- HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure");
- continue;
- }
- if (!s->IsInherited())
- {
- HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure");
- continue;
- }
- if (!s->HasStateMachine())
- continue;
-
- if (sc.OneLevelDown(s))
- {
- if (base_sc.OneLevelDown(*sit))
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("*** state %s ***\n", (*sit)->GetName().c_str());
- #endif
-
- fixed += MakeTrPointConnectivityConsistent(
- s,
- sm,
- base_sm,
- sc.GetStateMachine(),
- base_sc.GetStateMachine()
- );
- fixed += MakeDerivedObjsConsistent(sc.GetStateMachine(), base_sc.GetStateMachine());
-
- base_sc.OneLevelUp();
- }
- else
- {
- HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure");
- }
-
- sc.OneLevelUp();
- }
- else
- {
- HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure");
- }
- }
-
- return fixed;
-}
-
-void bs_ActorClassList::MakeDerivedObjectsConsistent (void)
-{
- vector<bs_ActorClassPtr> tmp;
- GetDependencySortedVector(tmp);
-
- // we have to identify inherited choicepoints and trpoints in
- // derived classes with their base class counterparts and
- // make their names consistent because some commands rely
- // on this property of derived classes
-
- for (bs_ActorClassIterator it=tmp.begin(); it!=tmp.end(); ++it)
- {
- if (!(*it)->IsDerived())
- continue;
-
- // the base class is already fixed
- // recusrively descend into state machines
- bs_StateMachinePtr sm = (*it)->GetBehaviour().GetStateMachine();
- bs_StateMachinePtr base_sm = (*it)->GetBaseClass()->GetBehaviour().GetStateMachine();
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("### actor class %s ###\n", (*it)->GetName().c_str());
- TRACE("*** state TOP ***\n");
- #endif
-
- int fixed = MakeDerivedObjsConsistent(sm, base_sm);
-
- if (fixed)
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("### %d fixes made \n\n", fixed);
- #endif
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("### second run ### \n\n");
- #endif
-
- int fixed2 = MakeDerivedObjsConsistent(sm, base_sm);
- if (fixed2)
- TRACE("### still %d problems ### \n\n", fixed2);
-
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("### second run end ### \n\n");
- #endif
-
- if (fixed2)
- {
- string msg =
- "Actor class '" + (*it)->GetName() + "' had inconsistencies\n"
- "WHICH COULD NOT BE REOLVED.\n\n"
- "Please send project file and version number of Trice to support@protos.de!\n";
-
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- msg.c_str(),
- __FILE__,
- __LINE__
- );
- }
- else
- {
- char buf[32];
- sprintf(buf, "%d", fixed);
- string msg =
- "Actor class '" + (*it)->GetName() + "' had " + buf + " inconsistencies\n"
- "in derived Choicepoints and/or TrPoints.\n\n"
- "These problems have been fixed!\n";
-
- bs_ErrorHdlr::Get()->Handle(
- bs_ErrorHdlr::error,
- msg.c_str(),
- __FILE__,
- __LINE__
- );
- }
- }
- else
- {
- #ifdef DEBUG_MAKE_CONSISTENT
- TRACE("### ok\n\n");
- #endif
- }
- }
-}
-
-// **************************************************************
+/* ************************************************************** + * + * bs_ActorClass.cpp + * + * (C) 1998 Protos Logistik Software GmbH + * + * The actor class implementation. + * + * 980826 kb created + * + *************************************************************** */ + +#ifdef CHECK_MEM + #define WITHOUT_MFCXLib + #include "../stdafx.h" +#else + #define TRACE (void)0 +#endif + +/* ************************************************************* */ + +// switch off compiler warning: reduced identifier length in debug information +#pragma warning(disable : 4786) + +// *************************************************************** + +#ifdef _DEBUG +#define DEBUG_MAKE_CONSISTENT +#endif + +// *************************************************************** + +#include <assert.h> + +#include <ostream> +#include <istream> +#include <algorithm> +#include <limits> +using namespace std; + + +#include "bs_ActorClass.h" +#include "bs_ActorVisitor.h" +#include "bs_StateMachine.h" +#include "bs_DataClassObj.h" +#include "bs_MemberVisitor.h" +#include "bs_ClassVisitor.h" +#include "bs_ParallelMdlVisitor.h" +#include "bs_GraphSort.h" +#include "../bsRoomBase/bs_ErrorHdlr.h" +#include "bs_MdlLocation.h" +#include "bsFormal/bs_AuxGraph.h" + +/* ************************************************************* */ + +#ifdef CHECK_MEM + #define new DEBUG_NEW + #undef THIS_FILE + static char THIS_FILE[] = __FILE__; +#endif + +/* ************************************************************* */ + +#include "../bsRoomBase/bs_RoomList.cpp" + +/* ************************************************************* */ + +// explicit instantiation +template class bs_RoomList<bs_ActorClass>; + +// *************************************************************** + +// helper class for creating duplicates of actor interface and structure PortRefLists +class pr_entry +{ +public: + typedef enum + { + none, + iface, + structure, + common + } + Owner; + + pr_entry (void) + : _port_ref(NULL), _owner(none), _if_id(-1), _st_id(-1) + {} + + pr_entry (bs_PortRefPtr p, Owner o, int i, int s) + : _port_ref(p), _owner(o), _if_id(i), _st_id(s) + {} + + // data + bs_PortRefPtr _port_ref; + Owner _owner; + int _if_id; + int _st_id; +}; + +// default: compare interface id +bool operator< (const pr_entry& e0, const pr_entry& e1) +{ + return e0._if_id < e1._if_id; +} + +bool operator== (const pr_entry& e0, const pr_entry& e1) +{ + return e0._if_id == e1._if_id; +} + +// special compare: structure id +class st_cmp +{ +public: + bool operator() (const pr_entry& e0, const pr_entry& e1) + { + return e0._st_id < e1._st_id; + } +}; + +// *************************************************************** + +/**# implementation bs_ActorClass:: id(C_0902130146) +*/ + +// *************************************************************** + +DEFINE_STREAMABLE(bs_ActorClass,"bs_ModelClass") + +bs_ActorClass::bs_ActorClass (void) : + bs_ModelClass(), + _check_bindings(false), + _enable_debug_macros(true), + _override_enable_debug(false), + _allow_override(false), + _abstract_class(false), + _generated_ids_valid(true) +{ +} + +bs_ActorClass::bs_ActorClass (const bs_ActorClass& orig, CopyType t) +: bs_ModelClass(orig), + bs_Cloner<bs_ActorClass>(orig), + _interface(orig._interface, t), + _structure(orig._structure, t), + _behaviour(orig._behaviour, t), + _memberfct(orig._memberfct, t), + _base_class(GetAppropriatePtr(orig._base_class, t)), + _check_bindings(false), + _enable_debug_macros(orig._enable_debug_macros), + _override_enable_debug(orig._override_enable_debug), + _allow_override(orig._allow_override), + _perso_version(orig._perso_version), + _abstract_class(orig._abstract_class), + _generated_ids_valid(orig._generated_ids_valid) +{ +} + +bs_ActorClass::~bs_ActorClass (void) +{ +} + + +bs_ActorClass::bs_ActorClass (bs_RoomName name) +: bs_ModelClass(name), + _check_bindings(false), + _enable_debug_macros(true), + _override_enable_debug(false), + _allow_override(false), + _abstract_class(false) +{ + CommonConstruct(); +} + + +bs_ActorClass::bs_ActorClass (int version, istream& is, bs_ProtocolClassList& pcl, bs_ActorClassList& acl) +: bs_ModelClass(), + _check_bindings(false), + _enable_debug_macros(true), + _override_enable_debug(false), + _allow_override(false), + _abstract_class(false) +{ + ReadStream(version, is, pcl, acl); + + CommonConstruct(); +} + + +void bs_ActorClass::CommonConstruct (void) +{ + // join the namespaces of all lists that produce members in the generated class + _interface.GetPortRefList().JoinNamespace(_structure.GetPortRefList()); + _interface.GetPortRefList().JoinNamespace(_structure.GetSAPs()); + _interface.GetPortRefList().JoinNamespace(_behaviour.GetStateMachine()->GetStateVariables()); +} + + +// *************************************************************** + +void bs_ActorClass::Dump (bs_TMSContext& tmsc) +{ + tmsc.TMS() << "actor class " << GetName(); + if (_base_class) + tmsc.TMS() << "derived from " << _base_class->GetName(); + + tmsc.TMS() << " {\n"; + tmsc.Indent(); + + tmsc.TMS() << "interface: {\n"; + tmsc.Indent(); + _interface.GetPortRefList().Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.TMS() << "structure: {\n"; + tmsc.Indent(); + tmsc.TMS() << "end ports: {\n"; + tmsc.Indent(); + _structure.GetPortRefList().Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.TMS() << "saps: {\n"; + tmsc.Indent(); + _structure.GetSAPs().Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.TMS() << "components: {\n"; + tmsc.Indent(); + _structure.GetActorRefList().Dump(tmsc); + _structure.GetPrtvRefList().Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.TMS() << "bindings: {\n"; + tmsc.Indent(); + _structure.GetBindingContractList().Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.TMS() << "behaviour: {\n"; + tmsc.Indent(); + _behaviour.Dump(tmsc); + tmsc.Unindent(); + tmsc.TMS() << "}\n"; + + tmsc.Unindent(); + tmsc.TMS() << "};\n"; +} + +void bs_ActorClass::Docu (bs_DocuContext& dc) +{ + if (_base_class) + { + dc.Docu("derived from" + _base_class->GetName()); + dc.Newline(); + if (_allow_override) + dc.Docu("(allows overrides)"); + else + dc.Docu("(prohibits overrides)"); + dc.Newline(); + dc.Newline(); + } + + dc.BeginSection("Interface"); + _interface.GetPortRefList().Docu(dc); + dc.EndSection(); + + dc.BeginSection("Structure"); + dc.Picture(*this, GetName()+"_structure", "Structure of actor class "+GetName()); + _structure.Docu(dc); + dc.EndSection(); + + dc.BeginSection("Behaviour"); + dc.Picture(_behaviour, *this, GetName()+"_behaviour", "Hierarchical state machine of actor class "+GetName()); + _behaviour.GetStateMachine()->Docu(dc); + dc.EndSection(); +} + + +// *************************************************************** + +// bs_StreamObj touch interface + +bool bs_ActorClass::IsComponentTouched (void) const +{ + if (_interface.IsTouched()) return true; + if (_structure.IsTouched()) return true; + if (_behaviour.IsTouched()) return true; + if (_memberfct.IsTouched()) return true; + return false; +} + +time_t bs_ActorClass::GetLastTouchTime (void) const +{ + time_t touched = bs_TouchableObject::GetLastTouchTime(); + touched = GetMaxTouchTime(_interface.GetLastTouchTime(), touched); + touched = GetMaxTouchTime(_structure.GetLastTouchTime(), touched); + touched = GetMaxTouchTime(_behaviour.GetLastTouchTime(), touched); + touched = GetMaxTouchTime(_memberfct.GetLastTouchTime(), touched); + + return touched; +} + +/* ************************************************************* */ + +// bs_ActorVisitor interface +void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_ActorVisitor& visitor) +{ + visitor.VisitActorClass(myself); + + bs_ActorRefList& arefs = _structure.GetActorRefList(); + bs_ActorRefIterator aref; + for(aref=arefs.begin(); aref!=arefs.end(); aref++) + { + (*aref)->Accept(*aref, visitor); + } + + bs_PrtvRefList& prefs = _structure.GetPrtvRefList(); + bs_PrtvRefIterator pref; + for(pref=prefs.begin(); pref!=prefs.end(); pref++) + { + (*pref)->Accept(*pref, visitor); + } + + visitor.VisitActorClassEnd(myself); +} + +/* ************************************************************* */ + +void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_MemberVisitor& visitor) +{ + visitor.Visit(myself); + + // base class + if (_base_class) + _base_class->Accept(_base_class, visitor); + + // component actors + { + bs_ActorRefList& comp = _structure.GetActorRefList(); + for (bs_ActorRefIterator c=comp.begin(); c!=comp.end(); c++) + { + bs_ActorClassPtr ac = (*c)->GetActorClass(); + ac->Accept(ac,visitor); + } + } + + // component primitives + { + bs_PrtvRefList& comp = _structure.GetPrtvRefList(); + for (bs_PrtvRefIterator c=comp.begin(); c!=comp.end(); c++) + { + bs_PrtvClassPtr pc = (*c)->GetPrtvClass(); + pc->Accept(pc,visitor); + } + } + + // SAPClasses + { + bs_SAPRefList& saps = _structure.GetSAPs(); + for (bs_SAPRefIterator c=saps.begin(); c!=saps.end(); c++) + { + bs_SAPClassPtr sc = (*c)->GetSAPClass(); + sc->Accept(sc,visitor); + } + } + + // Protocols of PortRefs + { + bs_PortRefList& comp = _interface.GetPortRefList(); + bs_PortRefIterator c; + for (c=comp.begin(); c!=comp.end(); ++c) + { + bs_ProtocolClassPtr pc = (*c)->GetProtocolClass(); + pc->Accept(pc,visitor); + } + } + { + bs_PortRefList& comp = _structure.GetPortRefList(); + bs_PortRefIterator c; + for (c=comp.begin(); c!=comp.end(); ++c) + { + bs_ProtocolClassPtr pc = (*c)->GetProtocolClass(); + pc->Accept(pc,visitor); + } + } + + // DataMembers + { + bs_DataMemberList& dml = _behaviour.GetStateMachine()->GetStateVariables(); + for (bs_DataMemberIterator c=dml.begin(); c!=dml.end(); ++c) + { + (*c)->Accept(*c,visitor); + } + } +} + +/* ************************************************************* */ + +void bs_ActorClass::Accept (bs_ActorClassPtr myself, bs_ClassVisitor& visitor) +{ + visitor.Visit(myself); +} + +/* ************************************************************* */ + +void bs_ActorClass::Accept (bs_ActorClassPtr ac1, bs_ActorClassPtr ac2, bs_ParallelMdlVisitor& visitor) +{ + if (ac1) + visitor.PushPath(ac1->GetName()); + else + visitor.PushPath(ac2->GetName()); + + bool descend = visitor.Visit(ac1, ac2); + + if (!descend || ac1==NULL || ac2==NULL) + { + visitor.PopPath(); + return; + } + + bs_ActorInterface::Accept(ac1->_interface, ac2->_interface, visitor); + bs_ActorStructure::Accept(ac1->_structure, ac2->_structure, visitor); + bs_ActorBehaviour::Accept(ac1->_behaviour, ac2->_behaviour, visitor); + bs_ActorMemberFct::Accept(ac1->_memberfct, ac2->_memberfct, visitor); + + visitor.PopPath(); +} + +/* ************************************************************* */ + +void bs_ActorClass::Handle (bs_InvalidateGeneratedIDsEvent& evt) +{ + if (&*evt.GetActorClass()==this) + _generated_ids_valid = false; +} + +void bs_ActorClass::Handle (bs_CmdExecutedEvent& evt) +{ + if (!_generated_ids_valid) + { + //TRACE("bs_ActorClass[%s]::Handle (bs_CmdExecutedEvent& evt) - setting generated IDs\n", GetName().c_str()); + _behaviour.GetStateMachine()->SetGeneratedIds(); + _generated_ids_valid = true; + } +} + +/* ************************************************************* */ + +void bs_ActorClass::GetBaseClasses (vector<bs_ActorClassPtr>& bcl) const +{ + if (!_base_class) + return; + + // add direct base class + bcl.push_back(_base_class); + + // recurse + _base_class->GetBaseClasses(bcl); +} + +bool bs_ActorClass::ContainsInstanceOf (bs_ActorClassPtr actor) +{ + // check references to component actors + bs_ActorRefList& comp = _structure.GetActorRefList(); + bs_ActorRefIterator c; + for(c=comp.begin(); c!=comp.end(); c++) + { + bs_ActorClassPtr refd = (*c)->GetActorClass(); + + // direct reference + if (refd==actor) + return true; + + // or recursive reference + if (refd->ContainsInstanceOf(actor)) + return true; + } + + // no reference + return false; +} + +bool bs_ActorClass::IsDerivedFrom (bs_ActorClassPtr base_class) +{ + if (!_base_class) + return false; + + // direct base class + if (_base_class==base_class) + return true; + + // or recursive base class + if (_base_class->IsDerivedFrom(base_class)) + return true; + + return false; +} + +bool bs_ActorClass::IsDerivedFrom (bs_RoomName base_class) +{ + if (!_base_class) + return false; + + // direct base class + if (_base_class->GetName()==base_class) + return true; + + // or recursive base class + if (_base_class->IsDerivedFrom(base_class)) + return true; + + return false; +} + + +bool bs_ActorClass::IsUsingActorClass (bs_ActorClassPtr ac) +{ + if (!ac) + return false; + + const bs_RoomName& ac_name = ac->GetName(); + + if (IsDerivedFrom(ac_name)) + return true; + + bs_ActorRefList& arefs = GetStructure().GetActorRefList(); + for (bs_ActorRefIterator it=arefs.begin(); it!=arefs.end(); ++it) + { + if ((*it)->GetActorClass()->GetName()==ac_name) + return true; + + // start recursion + if ((*it)->GetActorClass()->IsUsingActorClass(ac)) + return true; + } + return false; +} + +static void AddInheritedStateVars (const bs_DataMemberList& base_dml, bs_DataMemberList& own_dml) +{ + // reset owner flag for inherited items + for (bs_DataMemberList::const_iterator dmit=base_dml.begin(); dmit!=base_dml.end(); ++dmit) + { + own_dml.SetOwnerOf((*dmit)->GetName(), false); + } +} + +template<class T> +class AddItem +{ + public: + virtual bool operator() (bs_RoomPtr<T> item) const { return true; } +}; + +template<class T> +class AddPortItem : public AddItem<T> +{ + public: + AddPortItem (const bs_RoomList<T>& list) : _list(list) {} + + virtual bool operator() (bs_RoomPtr<T> item) const + { + // this is meant for structure ports + // they are not mandatory if the port already is in the interface + // i.e. an end port in the base class may be a relay port in the derived class + bool in_interface = !_list[item->GetName()].IsNull(); + if (in_interface) + { + #ifdef _DEBUG + TRACE("structure port %s is in the interface and will not be added to the derived structure\n", + item->GetName().c_str() + ); + #endif + } + return !in_interface; + } + + private: + const bs_RoomList<T>& _list; +}; + +template<class T> +static void AddInheritedItems ( + const string& ac_name, + const string& item_type, + const bs_RoomList<T>& base_list, + bs_RoomList<T>& own_list, + bool signal_errors, + const AddItem<T>& add_item +) +{ + // reset owner flag for inherited items + for (bs_RoomList<T>::const_iterator it=base_list.begin(); it!=base_list.end(); ++it) + { + // own_list is not owner, but should contain item with same name + bs_RoomPtr<T> own = own_list[(*it)->GetName()]; + if (own) + { + if (own!=*it) + { + // base and derived classes have items with same name, but there are + // two different objects. kill zombie object and discard changes in zombie. + (*it).TakeOverPtrsFrom(own); + + if (signal_errors) + { + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + ac_name + "' has inherited " + + item_type + " '"+ (*it)->GetName() +"',\n" + "which has been decoupled from its base class item!\n\n" + + "This has been repaired by Trice's consistency check.\n", + __FILE__, + __LINE__ + ); + } + } + } + else if (add_item(*it)) + { + // own_list doesn't contain inherited item + own_list.push_back(*it); + + if (signal_errors) + { + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + ac_name + "' has missing inherited " + + item_type + " '" + (*it)->GetName() +"'!\n\n" + "It is automatically added by Trice's consistency check.\n", + __FILE__, + __LINE__ + ); + } + else + { + string msg = "AddInheritedItems - added " + item_type + " '" + (*it)->GetName() +"'\n"; + TRACE(msg.c_str()); + } + } + + own_list.SetOwnerOf((*it)->GetName(), false); + } +} + +static void AddInheritedBehaviourNotes ( + const string& ac_name, + bs_StateContext& base_sc, + bs_StateContext& own_sc, + bool signal_errors +) +{ + bs_StateGraph& base_sg = base_sc.GetStateMachine()->GetStateGraph(); + bs_StateGraph& own_sg = own_sc.GetStateMachine()->GetStateGraph(); + + // handle items on this level + AddInheritedItems(ac_name, "note", base_sg.GetNotes(), own_sg.GetNotes(), signal_errors, AddItem<bs_Note>()); + + // handle sub-graphs recursively + bs_StateIterator sit; + for(sit=own_sg.GetStates().begin(); sit!=own_sg.GetStates().end(); sit++) + { + if (! ((*sit)->IsInherited() && (*sit)->HasStateMachine())) + continue; + + bs_StatePtr base_s = (*sit)->GetBaseClassState(); + if (base_s==NULL) + continue; + + if (base_sc.OneLevelDown(base_s)) + { + if (own_sc.OneLevelDown(*sit)) + { + AddInheritedBehaviourNotes(ac_name, base_sc, own_sc, signal_errors); + base_sc.OneLevelUp(); + } + own_sc.OneLevelUp(); + } + } +} + +static void AddInheritedStateVarsOld (const bs_DataMemberList& base_dml, bs_DataMemberList& own_dml) +{ + // add derived + bs_DataMemberList tmp; + for (bs_DataMemberList::const_iterator dmit=base_dml.begin(); dmit!=base_dml.end(); ++dmit) + { + tmp.push_back(*dmit); + } + + // add own + for (dmit=own_dml.begin(); dmit!=own_dml.end(); ++dmit) + { + tmp.push_back(*dmit); + } + + // copy tmp + own_dml.clear(); + for (dmit=tmp.begin(); dmit!=tmp.end(); ++dmit) + { + own_dml.push_back(*dmit); + + if (base_dml[(*dmit)->GetName()]) + own_dml.SetOwnerOf((*dmit)->GetName(), false); + } +} + +template<class T> +static void AddInheritedItemsOld (const bs_RoomList<T>& base_list, bs_RoomList<T>& own_list) +{ + // make a copy of the base list + bs_RoomList<T> tmp(base_list); + + // set inherited + for (bs_RoomList<T>::iterator it=tmp.begin(); it!=tmp.end(); ++it) + { + tmp.SetOwnerOf((*it)->GetName(), false); + } + + // add own + for (it=own_list.begin(); it!=own_list.end(); ++it) + { + tmp.push_back(*it); + } + + // copy back + own_list = tmp; +} + +void bs_ActorClass::AddInheritedAttributes (bool signal_errors) +{ + if (!_base_class) + return; + + if (signal_errors) + { + bs_StateGraph& base_sg = _base_class->GetBehaviour().GetStateMachine()->GetStateGraph(); + _behaviour.GetStateMachine()->GetStateGraph().SetBaseClassPtrs(base_sg); + } + + // NB: we can assume that the direct base class already is complete + + if (_perso_version>=8) + { + // state variables + AddInheritedItems( + GetName(), "data member", + _base_class->GetBehaviour().GetStateMachine()->GetStateVariables(), + GetBehaviour().GetStateMachine()->GetStateVariables(), + signal_errors, + AddItem<bs_DataMember>() + ); + + // interface ports + AddInheritedItems( + GetName(), "interface port", + _base_class->GetInterface().GetPortRefList(), + GetInterface().GetPortRefList(), + signal_errors, + AddItem<bs_PortRef>() + ); + + // structure ports + AddInheritedItems( + GetName(), "end port", + _base_class->GetStructure().GetPortRefList(), + GetStructure().GetPortRefList(), + signal_errors, + AddPortItem<bs_PortRef>(_base_class->GetInterface().GetPortRefList()) + ); + + // actor refs + AddInheritedItems( + GetName(), "actor reference", + _base_class->GetStructure().GetActorRefList(), + GetStructure().GetActorRefList(), + signal_errors, + AddItem<bs_ActorRef>() + ); + + // prtv refs + AddInheritedItems( + GetName(), "primitive reference", + _base_class->GetStructure().GetPrtvRefList(), + GetStructure().GetPrtvRefList(), + signal_errors, + AddItem<bs_PrtvRef>() + ); + + // binding contracts + AddInheritedItems( + GetName(), "binding", + _base_class->GetStructure().GetBindingContractList(), + GetStructure().GetBindingContractList(), + signal_errors, + AddItem<bs_BindingContract>() + ); + + // SAPs + AddInheritedItems( + GetName(), "SAP", + _base_class->GetStructure().GetSAPs(), + GetStructure().GetSAPs(), + signal_errors, + AddItem<bs_SAPRef>() + ); + + // structure notes + AddInheritedItems( + GetName(), "note", + _base_class->GetStructure().GetNoteList(), + GetStructure().GetNoteList(), + signal_errors, + AddItem<bs_Note>() + ); + + // behaviour notes + bs_StateContext base_sc(_base_class->GetBehaviour().GetStateMachine()); + bs_StateContext own_sc(_behaviour.GetStateMachine()); + AddInheritedBehaviourNotes(GetName(), base_sc, own_sc, signal_errors); + } + else + { + // state variables + AddInheritedStateVarsOld( + _base_class->GetBehaviour().GetStateMachine()->GetStateVariables(), + GetBehaviour().GetStateMachine()->GetStateVariables() + ); + + // interface ports + AddInheritedItemsOld( + _base_class->GetInterface().GetPortRefList(), + GetInterface().GetPortRefList() + ); + + // structure ports + AddInheritedItemsOld( + _base_class->GetStructure().GetPortRefList(), + GetStructure().GetPortRefList() + ); + + // actor refs + AddInheritedItemsOld( + _base_class->GetStructure().GetActorRefList(), + GetStructure().GetActorRefList() + ); + + // prtv refs + AddInheritedItemsOld( + _base_class->GetStructure().GetPrtvRefList(), + GetStructure().GetPrtvRefList() + ); + + // binding contracts + AddInheritedItemsOld( + _base_class->GetStructure().GetBindingContractList(), + GetStructure().GetBindingContractList() + ); + + // SAPs + AddInheritedItemsOld( + _base_class->GetStructure().GetSAPs(), + GetStructure().GetSAPs() + ); + } + + // now we are up to date + _perso_version = STREAMOBJ_VERSION(bs_ActorClass); +} + +string bs_ActorClass::GetObjID (void) const +{ + return "bs_ActorClass: " + GetName() + GetUniqueObjectIDstr(); +} + +// *************************************************************** + +void bs_ActorClass::STREAMOBJ_WRITE(bs_ActorClass) (bs_ObjectOStream& oos) +{ + if (_base_class) + oos << _base_class->GetName(); + else + oos << ""; + + oos << _allow_override; + + oos << _interface; + oos << _structure; + oos << _behaviour; + oos << _memberfct; + + oos << _enable_debug_macros; + oos << _override_enable_debug; + oos << _abstract_class; +} + + +void bs_ActorClass::STREAMOBJ_READ(bs_ActorClass) (bs_ObjectIStream& ois, Version version) +{ + _perso_version = version; + + if (version>=3) + ois >> _base_class_name; + + if (version>=7) + ois >> _allow_override; + else + _allow_override = false; + + ois >> _interface; + ois >> _structure; + ois >> _behaviour; + + if (version>=1) + ois >> _memberfct; + + CommonConstruct(); + + // check the oldstyle SAPRefList in ActorInterface and move it to ActorStructure + bs_SAPRefIterator sap; + for(sap=_interface.GetOldstyleSAPs().begin(); sap!=_interface.GetOldstyleSAPs().end(); sap++) + { + _structure.GetSAPs().push_back(*sap); + } + _interface.GetOldstyleSAPs().clear(); + + /* todo: in later versions, checking can be switched off again, + currently, we keep it checking until the _real_ reason for + spurious bindings has been found.*/ +// _check_bindings = (version<2); + + _check_bindings = true; + + //if (version==2) + { + int errors = 0; + bs_BindingContractList& bcl = _structure.GetBindingContractList(); + for (bs_BindingContractList::iterator it=bcl.begin(); it!=bcl.end(); /* no iterator step here */) + { + if ((*it)->GetPoint1().GetPortRef()==(*it)->GetPoint2().GetPortRef()) + { + ++errors; + it = bcl.erase(it); + } + else + ++it; + } + + if (errors) + { + char buf[32]; + sprintf(buf, "%d", errors); + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + GetName() + "' had " + buf + " corrupt bindings,\n" + "which have been deleted by Trice's consistency check.", + __FILE__, + __LINE__ + ); + } + } + + if (version>=4) + { + ois >> _enable_debug_macros; + } + if (version>=6) + { + ois >> _override_enable_debug; + } + if (version>=5) + { + ois >> _abstract_class; + } + + RemoveSpuriousTrPoints(); + RemoveSpuriousTrSegments(); +} + +void bs_ActorClass::RemoveSpuriousTrPoints (void) +{ + bool removed = false; + + bs_StateGraph& sg = _behaviour.GetStateMachine()->GetStateGraph(); + bs_StateList& sl = sg.GetStates(); + for (bs_StateIterator sit=sl.begin(); sit!=sl.end(); ++sit) + { + if ((*sit)->RemoveSpuriousTrPoints(sg)) + removed = true; + } + + if (removed) + { + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + GetName() + "' had spurious extending transition points,\n" + "which have been deleted by Trice's consistency check.\n\n" + "Please check its behaviour for missing transitions!\n", + __FILE__, + __LINE__ + ); + } +} + +void bs_ActorClass::RemoveSpuriousTrSegments (void) +{ + int count = _behaviour.GetStateMachine()->GetStateGraph().RemoveSpuriousTrSegments(); + + if (count>0) + { + char buf[32]; + sprintf(buf, "%d", count); + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + GetName() + "' had " + buf + " corrupt transition segments,\n" + "which have been deleted by Trice's consistency check.\n\n" + "Please check its behaviour for missing transition segments!\n", + __FILE__, + __LINE__ + ); + } +} + +/* +static int CheckAndCorrectEndPoint (const bs_BCEndPoint& ep, bs_PortRefList& stp, bs_PortRefList& ifp) +{ + int corrected = 0; + + if (ep.IsLocal()) + { + bs_PortRefIterator prit = find(stp.begin(), stp.end(), ep.GetPortRef()); + if (prit==stp.end()) + prit = find(ifp.begin(), ifp.end(), ep.GetPortRef()); + if (prit==ifp.end()) + { + // pointer not found, try with name + prit = stp.FindName(ep.GetPortRef()->GetName()); + if (prit==stp.end()) + prit = ifp.FindName(ep.GetPortRef()->GetName()); + if (prit==ifp.end()) + { + // cannot correct + } + else + { + // correct it + ep.SetPortRef(*prit); + corrected++; + } + } + } + else + { + // todo: NIY + } + + return corrected; +} +*/ + +void bs_ActorClass::RemoveSpuriousBindings (void) +{ + // check for BCEndpoints with spurious PortRefs (bug in Trice) + // this is checked only for versions in a certain version range (see STREAMOBJ_READ) + if (! _check_bindings) + return; + + _check_bindings = false; + + typedef enum + { + bc_error + } + Exception; + + int errors = 0; + + bs_PortRefList& ifp = _interface.GetPortRefList(); + bs_PortRefList& stp = _structure.GetPortRefList(); + + bs_BindingContractList& bcl = _structure.GetBindingContractList(); + int nbc_before = bcl.size(); // for debugging only + int nbc_checked = 0; // for debugging only +// int nbep_corrected = 0; // for debugging only + for (bs_BindingContractList::iterator it=bcl.begin(); it!=bcl.end(); /* no iterator step here */) + { + nbc_checked++; + + try + { + const bs_BCEndPoint& p1 = (*it)->GetPoint1(); + const bs_BCEndPoint& p2 = (*it)->GetPoint2(); + +// nbep_corrected += CheckAndCorrectEndPoint(p1, stp, ifp); + + if (p1.IsLocal()) + { + bs_PortRefIterator prit = find(stp.begin(), stp.end(), p1.GetPortRef()); + if (prit==stp.end()) + prit = find(ifp.begin(), ifp.end(), p1.GetPortRef()); + if (prit==ifp.end()) + throw bc_error; + if (p2.GetActorRef()) + { + if (! p2.GetActorRef()->GetActorClass()) + throw bc_error; + + bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + else + { + bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + } + else if (p2.IsLocal()) + { + bs_PortRefIterator prit = find(stp.begin(), stp.end(), p2.GetPortRef()); + if (prit==stp.end()) + prit = find(ifp.begin(), ifp.end(), p2.GetPortRef()); + if (prit==ifp.end()) + throw bc_error; + if (p1.GetActorRef()) + { + if (! p1.GetActorRef()->GetActorClass()) + throw bc_error; + + bs_PortRefList& compp = p1.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p1.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + else + { + bs_PortRefList& compp = p1.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p1.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + } + else + { + if (p1.GetActorRef()) + { + if (! p1.GetActorRef()->GetActorClass()) + throw bc_error; + + bs_PortRefList& compp = p1.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList(); + bs_PortRefIterator prit = find(compp.begin(), compp.end(), p1.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + if (p2.GetActorRef()) + { + if (! p2.GetActorRef()->GetActorClass()) + throw bc_error; + + bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + else + { + bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + } + else + { + bs_PortRefList& compp = p1.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList(); + bs_PortRefIterator prit = find(compp.begin(), compp.end(), p1.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + if (p2.GetActorRef()) + { + if (! p2.GetActorRef()->GetActorClass()) + throw bc_error; + + bs_PortRefList& compp = p2.GetActorRef()->GetActorClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + else + { + bs_PortRefList& compp = p2.GetPrtvRef()->GetPrtvClass()->GetInterface().GetPortRefList(); + prit = find(compp.begin(), compp.end(), p2.GetPortRef()); + if (prit==compp.end()) + throw bc_error; + } + } + } + + // do an iterator step (otherwise it is increased in the catch() block) + it++; + } + catch (Exception) + { + errors++; + + // remove this binding + // NB: this will implicitly move the iterator one step forward + it = bcl.erase(it); + } + } + + int nbc_after = bcl.size(); // for debugging only + if (errors) + { + char buf[32]; + sprintf(buf, "%d", errors); + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + GetName() + "' had " + buf + " corrupt bindings,\n" + "which have been deleted by Trice's consistency check.\n\n" + "Please check its structure for missing bindings!\n", + __FILE__, + __LINE__ + ); + } +} + +static void CheckPortBases (string ac_name, bs_PortRefList& prl, bs_PortRefList& base_prl) +{ + bs_PortRefIterator pr; + for(pr=prl.begin(); pr!=prl.end(); ++pr) + { + if (prl.IsOwnerOf((*pr)->GetName())) + continue; + + // we are not owner, base class must have port with same name + bs_PortRefPtr base_pr = base_prl[(*pr)->GetName()]; + if (base_pr) + { + if (base_pr!=*pr) + { + // base class contains port with same name, but there are + // two different port objects. + // kill zombie PortRef object and discard changes in zombie + base_pr.TakeOverPtrsFrom(*pr); + + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + ac_name + "' has inherited port " + (*pr)->GetName() +",\n" + "which has been decoupled from its base class port! This has been repaired by\n" + "Trice's consistency check.\n", + __FILE__, + __LINE__ + ); + } + } + else + { + // base class doesn't have port with same name, decouple it. + prl.SetOwnerOf((*pr)->GetName()); + + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + "Actor class '" + ac_name + "' has inherited port " + (*pr)->GetName() +",\n" + "which is unknown in base class! It is automatically set to non-inherited.\n", + __FILE__, + __LINE__ + ); + } + } +} + +void bs_ActorClass::RemoveSpuriousPorts (void) +{ + if (! _base_class) + return; + + CheckPortBases( + GetName(), + _interface.GetPortRefList(), + _base_class->GetInterface().GetPortRefList() + ); + CheckPortBases( + GetName(), + _structure.GetPortRefList(), + _base_class->GetStructure().GetPortRefList() + ); +} + +void bs_ActorClass::SetBaseClass (bs_ActorClassList& acl) +{ + _base_class = acl[_base_class_name]; +} + +void bs_ActorClass::ReadStream (int version, istream& is, bs_ProtocolClassList& pcl, bs_ActorClassList& acl) +{ + bs_RoomObject::ReadStream(is); + + _interface.ReadStream(is, pcl); + _structure.ReadStream(version, is, pcl, acl); + _behaviour.ReadStream(version, is); +} + + + +bool bs_ActorClass::operator== (const bs_ActorClass& rhs) const +{ + if (((bs_ModelClass)rhs) != *(bs_ModelClass*)this) + return false; + + string bc_name; + if (_base_class) + bc_name = _base_class->GetName(); + string rhs_bc_name; + if (rhs._base_class) + rhs_bc_name = rhs._base_class->GetName(); + + if (bc_name!=rhs_bc_name) + return false; + + if (_interface != rhs._interface) + return false; + + if (_structure != rhs._structure) + return false; + + if (_behaviour != rhs._behaviour) + return false; + + if (_memberfct != rhs._memberfct) + return false; + + return true; +} + + +void bs_ActorClass::PrepareTakingOver (bs_ActorClassPtr old) +{ + if (this==(bs_ActorClass*)old) + return; + + _interface.PrepareTakingOver(old->GetInterface()); + _structure.PrepareTakingOver(old->GetStructure()); + _behaviour.GetStateMachine()->PrepareTakingOver(old->_behaviour.GetStateMachine()); +} + + +bs_CheckReport bs_ActorClass::CheckConsistency (void) +{ + return _behaviour.CheckConsistency(_base_class ? &_base_class->GetBehaviour() : NULL); +} + + +// *************************************************************** + +bool bs_ActorClassList::MayDeletePortRef (bs_PortRefPtr port_ref) +{ + bs_ActorClassIterator i; + for(i=begin(); i!=end(); i++) + { + if ((*i)->GetStructure().GetBindingContractList().IsBoundOnComponent(port_ref)) + return false; + } + + return true; +} + +bool bs_ActorClassList::IsUsingActorClass (bs_RoomName ac1_name, bs_RoomName ac2_name) +{ + bs_ActorClassPtr ac1 = (*this)[ac1_name]; + if (ac1) + { + bs_ActorClassPtr ac2 = (*this)[ac2_name]; + return ac1->IsUsingActorClass(ac2); + } + else + return false; +} + +bool bs_ActorClassList::HasDerivedClass (bs_ActorClassPtr base_ac) +{ + for (bs_ActorClassIterator it=begin(); it!=end(); ++it) + { + if ((*it)->IsDerivedFrom(base_ac)) + return true; + } + + return false; +} + +void bs_ActorClassList::RemoveAllBindingsTo (bs_ActorClassPtr ac) +{ + bs_ActorClassIterator i; + for(i=begin(); i!=end(); i++) + { + bs_ActorRefList& arefs = (*i)->GetStructure().GetActorRefList(); + for (bs_ActorRefIterator aref=arefs.begin(); aref!=arefs.end(); ++aref) + { + if ((*aref)->GetActorClass()==ac) + { + bs_PortRefList& prl = ac->GetInterface().GetPortRefList(); + for (bs_PortRefIterator pref=prl.begin(); pref!=prl.end(); ++pref) + { + (*i)->GetStructure().GetBindingContractList().RemoveBindingsTo(*pref); + } + } + } + } +} + + +// *************************************************************** + +DEFINE_STREAMABLE(bs_ActorClassList,"bs_Namespace") + +bs_ActorClassList::bs_ActorClassList (void) : + bs_RoomList<bs_ActorClass> ("ActorClassListDummyName") +{ +} + +bs_ActorClassList::bs_ActorClassList (bs_RoomName basename) : + bs_RoomList<bs_ActorClass> (basename) +{ +} + +// helper class used for sorting +class GetReferencedActors +{ +public: + typedef bs_ActorClassPtr obj; + typedef vector<obj> ObjVec; + + ObjVec operator() (const obj& ac) + { + ObjVec objs; + objs.clear(); + + ac->GetBaseClasses(objs); + + bs_ActorRefList& arefs = ac->GetStructure().GetActorRefList(); + for (bs_ActorRefIterator ir=arefs.begin(); ir!=arefs.end(); ++ir) + { + objs.push_back((*ir)->GetActorClass()); + } + + return objs; + } +}; + +bs_ActorClassList::bs_ActorClassList (const bs_ActorClassList& orig, CopyType t) +: bs_RoomList<bs_ActorClass>(orig, t) +{ +} + +void bs_ActorClassList::GetDependencySortedVector (vector<bs_ActorClassPtr>& result) const +{ + // (a) make a temporary vector + vector<bs_ActorClassPtr> tmp(*this); + + // (b) sort following dependencies + bs_GraphSort(tmp,GetReferencedActors()); + + // (c) fill result + result.clear(); + for (reverse_iterator i=tmp.rbegin(); i!=tmp.rend(); i++) + { + result.push_back(*i); + } +} + +void bs_ActorClassList::STREAMOBJ_WRITE(bs_ActorClassList) (bs_ObjectOStream& oos) +{ + for (iterator it=begin(); it!=end(); it++) + { + (*it)->GetBehaviour().GetStateMachine()->SetGeneratedIds(); + } + + WriteMembersSorted(oos); +} + +void bs_ActorClassList::STREAMOBJ_READ(bs_ActorClassList) (bs_ObjectIStream& ois, Version) +{ + ReadMembers(ois); + + // loop actor classes and set pointers in actor refs + for (iterator it=begin(); it!=end(); ++it) + { + (*it)->SetBaseClass(*this); + + bs_ActorRefList& arl = (*it)->GetStructure().GetActorRefList(); + for (bs_ActorRefIterator arit=arl.begin(); arit!=arl.end(); ++arit) + { + (*arit)->SetActorClassPtr(*this); + } + } + + // some clean-up + for (it=begin(); it!=end(); ++it) + { + (*it)->RemoveSpuriousBindings(); + } +} + + + + +void bs_ActorClassList::ResetUsedFlags (void) +{ + bs_ActorClassIterator i; + for(i=begin(); i!=end(); i++) + { + (*i)->SetUsed(false); + } +} + + + +void bs_ActorClassList::ResetVisitedFlags (void) +{ + bs_ActorClassIterator i; + for(i=begin(); i!=end(); i++) + { + (*i)->ResetVisitedFlag(); + } +} + + + +void bs_ActorClassList::ReadStream (int version, istream& is, bs_ProtocolClassList& pcl) +{ + bool more; + + // read actor classes (without bindings) + is >> more; + while (more) + { + push_back(new bs_ActorClass(version, is, pcl, *this)); + is >> more; + } + + + // read bindings + is >> more; + while (more) + { + bs_RoomName actor_name; actor_name.ReadStream(is); + bs_ActorClassPtr actor = (*this)[actor_name]; + + actor->GetStructure().GetBindingContractList().ReadStream(is, actor); + is >> more; + } + +} + +bs_CheckReport bs_ActorClassList::CheckConsistency (void) +{ + bs_CheckReport rep; + + vector<bs_ActorClassPtr> tmp; + GetDependencySortedVector(tmp); + + // check in order of dependencies + for (vector<bs_ActorClassPtr>::iterator it=tmp.begin(); it!=tmp.end(); it++) + { + bs_CheckReport actor_rep = (*it)->CheckConsistency(); + rep.AddReportSection(actor_rep,"Actor " + (*it)->GetName()); + } + + // check in order of dependencies + for (vector<bs_ActorClassPtr>::iterator vit=tmp.begin(); vit!=tmp.end(); vit++) + { + (*vit)->RemoveSpuriousPorts(); + } + + return rep; +} + + +// *************************************************************** + +void bs_ActorClass::RefreshFormalInfos (bs_ActorClassPtr actor, bool have_license) +{ + bs_StateMachinePtr toplevel_sm = actor->GetBehaviour().GetStateMachine(); + bs_StateGraph& graph = toplevel_sm->GetStateGraph(); + bs_TrSegmentList& transitions = graph.GetTrSegments(); + bs_StateList& states = graph.GetStates(); + + /* + { + bs_SourceParser::Signals signals; + bs_SourceParser parser(actor->GetStructure().GetPortRefList(), actor->GetStructure().GetSAPs()); + bs_TrSegmentIterator ti; + for(ti=transitions.begin(); ti!=transitions.end(); ti++) + { + parser.GetSignals((*ti)->GetActionCode(), signals); + } + + bs_StateIterator si; + for(si=states.begin(); si!=states.end(); si++) + { + parser.GetSignals((*si)->GetEntryAction(), signals); + parser.GetSignals((*si)->GetExitAction(), signals); + } + + + bs_SourceParser::Signals::iterator s; + string txt = "Outgoing signals:\t"; + for(s=signals.begin(); s!=signals.end(); s++) + { + txt += s->GetSignal() + ":" + s->GetPortRef()->GetName() + "\t"; + } + txt += "\n"; + TRACE(txt.c_str()); + } + */ + + { + FmlFactory factory(toplevel_sm); + bs_AuxGraph aux_graph(graph, factory); +// bs_SourceParser parser(actor->GetStructure().GetPortRefList(), actor->GetStructure().GetSAPs()); + + // compute reachability of states, choicepoints and transitions + { + aux_graph.ComputeReachability(); + bs_AuxGraph::Nodes::iterator ni; + /* + for(si=aux_graph.GetStates().begin(); si!=aux_graph.GetStates().end(); si++) + { + bs_StatePtr s = si->second.GetState(); + if (s!=NULL) + { + bs_SourceParser::Signals signals; + parser.GetSignals(s->GetEntryAction(), signals); + parser.GetSignals(s->GetExitAction(), signals); + bs_SourceParser::Signals::iterator sig; + string txt; + for(sig=signals.begin(); sig!=signals.end(); sig++) + { + if (sig!=signals.begin()) txt += ", "; + txt += sig->GetSignal() + ":" + sig->GetPortRef()->GetName(); + } + s->GetAnalysis()._textual_info = txt; + } + } + */ + } + + // without DEVELOP_FORMAL we will not do more ... + if (! have_license) + return; + + // compute outgoing signals for complete graph + { + /* + bs_SourceParser::Signals signals; + aux_graph.ComputeOutgoingSignals(actor, signals); + + bs_SourceParser::Signals::iterator s; + string txt = "Outgoing signals:\t"; + for(s=signals.begin(); s!=signals.end(); s++) + { + txt += s->GetSignal() + ":" + s->GetPortRef()->GetName() + "\t"; + } + txt += "\n"; + TRACE(txt.c_str()); + */ + } + + // compute outstanding signals for each state + if (graph.GetFormalCheckLevel()==bs_StateGraph::fc_full) + { + //bs_SourceParser::Signals signals; + aux_graph.ComputeOutstandingSignals(actor); + } + } +} + +template<class C> +class bs_HasPos +{ +public: + bs_HasPos (const bs_ContextCoord& pos) : _pos(pos) {} + + bool operator () (bs_RoomPtr<C>& obj) + { + return IsEqual(_pos, obj->GetContextCoord()); + } + +private: + static bool IsEqual (double a, double b) + { + return floor(a*1000)==floor(b*1000); + } + + static bool IsEqual (bs_ContextCoord& a, bs_ContextCoord& b) + { + return IsEqual(a.X, b.X) && IsEqual(a.Y, b.Y); + } + +private: + bs_ContextCoord _pos; +}; + +#undef max + +template<class C> +static int RenameDerivedIff (bs_RoomList<C>& lst, bs_RoomPtr<C>& obj, bs_RoomPtr<C>& base_obj) +{ + if (base_obj->GetName()==obj->GetName()) + return 0; + + // have to rename inherited obj + + // check for name conflict first + if (!lst.IsUniqueName(base_obj->GetName().c_str())) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: renaming other obj %s", base_obj->GetName().c_str()); + #endif + + string new_name = lst.GetUniqueDefaultName(); + if (!lst.ChangeName(base_obj->GetName(), new_name)) + { + HANDLE_ERROR("RenameDerivedIff - renaming other failed"); + } + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" to %s\n", new_name.c_str()); + #endif + } + + // alright: here we go + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: renaming %s to %s\n", obj->GetName().c_str(), base_obj->GetName().c_str()); + #endif + + if (!lst.ChangeName(obj->GetName(), base_obj->GetName())) + { + HANDLE_ERROR("RenameDerivedIff - renaming failed"); + } + + return 1; +} + +template<class C, class Creator, class Matcher> +static int MakeDerivedListConsistent (bs_RoomList<C>& lst, bs_RoomList<C>& base_lst, Creator creator, Matcher match) +{ + int fixed = 0; + + int n_inherited = 0; + { + for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2) + if ((*it2)->IsInherited()) + n_inherited++; + } + + int missing_inherited = base_lst.size()-n_inherited; + if (missing_inherited) + TRACE(" ### inherited mismatch (%d!=%d)\n", base_lst.size(), n_inherited); + + for (bs_RoomList<C>::iterator it=base_lst.begin(); it!=base_lst.end(); ++it) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("--- %s ---\n", (*it)->GetName().c_str()); + #endif + + // find matching derived class object by position + bs_RoomList<C>::iterator it_deriv = lst.end(); + double min = numeric_limits<double>::max(); + if (true) + { + // minimal dist^2 + for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2) + { + if (!match(*it, *it2)) + continue; + + double dist2 = norm2((*it)->GetContextCoord()-(*it2)->GetContextCoord()); + if (dist2<min) + { + min = dist2; + it_deriv = it2; + if (min==0.0) + break; + } + } + #ifdef DEBUG_MAKE_CONSISTENT + if (min!=0.0) + TRACE(" min dist = %12.8f\n", sqrt(min)); + #endif + } + else + { + // exactly matching pos with rounding + it_deriv = find_if(lst.begin(), lst.end(), bs_HasPos<C>((*it)->GetContextCoord())); + } + + // require better than 1% match + if (min>1e-4 || it_deriv==lst.end()) + { + if (missing_inherited>0) + { + it_deriv = creator.GetNewObj(); + (*it_deriv)->SetInherited(); + + missing_inherited--; + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: added missing inherited\n"); + #endif + } + else + { + //HANDLE_ERROR("MakeDerivedListConsistent - inconsistent data structure"); + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" missing inherited\n"); + TRACE(" searched pos (%12.8f,%12.8f)\n", (*it)->GetContextCoord().X, (*it)->GetContextCoord().Y); + for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2) + { + TRACE(" (%12.8f,%12.8f) %s\n", (*it2)->GetContextCoord().X, (*it2)->GetContextCoord().Y, (*it2)->GetName().c_str()); + } + #endif + + continue; + } + } + if (!(*it_deriv)->IsInherited()) + { +// HANDLE_ERROR("MakeDerivedListConsistent - inconsistent data structure"); + missing_inherited--; + (*it_deriv)->SetInherited(); + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: made inherited\n"); + #endif + } + + // ensuring same pos + (*it_deriv)->SetContextCoord((*it)->GetContextCoord()); + + fixed += RenameDerivedIff(lst, *it_deriv, *it); + } + + for (it=lst.begin(); it!=lst.end(); ++it) + { + if (!(*it)->IsInherited()) + continue; + + bs_RoomPtr<C> base_obj = base_lst[(*it)->GetName()]; + if (base_obj.IsNull()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: %s: spurious inherited\n", (*it)->GetName().c_str()); + #endif + + (*it)->SetInherited(false); + } + } + + n_inherited = 0; + { + for (bs_RoomList<C>::iterator it2=lst.begin(); it2!=lst.end(); ++it2) + if ((*it2)->IsInherited()) + n_inherited++; + } + + missing_inherited = base_lst.size()-n_inherited; + if (missing_inherited) + TRACE(" ### still inherited mismatch (%d!=%d)\n", base_lst.size(), n_inherited); + + return fixed; +} + +static int CheckInheritanceProperties ( + bs_TrSegmentPtr ts, + bs_TrPointPtr tp, + bs_StateMachinePtr sub_sm, + bs_StateMachinePtr base_sm, + bs_StateMachinePtr base_sub_sm +) +{ + if (ts->IsInherited()) + { + int fixed = 0; + if (!tp->IsInherited()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: setting %s to inherited\n", tp->GetName().c_str()); + #endif + + fixed ++; + tp->SetInherited(); + } + + bs_TrSegmentPtr base_ts = ts->GetBaseClassSegment(); + if (!base_ts) + HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure"); + + bs_TrSegmentList& base_tsl = base_sm->GetStateGraph().GetTrSegments(); + if (base_tsl.FindItem(base_ts)==base_tsl.end()) + HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure"); + + bs_TrPointPtr base_tp = base_sub_sm->GetStateGraph().GetTrPoint(base_ts); + if (!base_tp) + HANDLE_ERROR("CheckInheritanceProperties - inconsistent data structure"); + + if (tp->GetContextCoord()!=base_tp->GetContextCoord()) + { + double dist2 = norm2(tp->GetContextCoord()-base_tp->GetContextCoord()); + if (dist2>1e-4) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: setting %s to base tp position\n", tp->GetName().c_str()); + #endif + + fixed ++; + tp->SetContextCoord(base_tp->GetContextCoord()); + } + } + return fixed + RenameDerivedIff(sub_sm->GetStateGraph().GetTrPoints(), tp, base_tp); + } + else + { + if (tp->IsInherited()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: setting %s to non-inherited\n", tp->GetName().c_str()); + #endif + + tp->SetInherited(false); + return 1; + } + } + + return 0; +} + +static bs_TrPointPtr AddTrPoint ( + bs_TrSegmentPtr ts, + bs_StatePtr s, + bs_StateMachinePtr sub_sm, + bs_StateMachinePtr base_sub_sm, + bool is_incoming +) +{ + bs_TrPointPtr tp; + + if (ts->IsInherited()) + { + bs_TrSegmentPtr base_ts = ts->GetBaseClassSegment(); + if (!base_ts) + HANDLE_ERROR("AddTrPoint - inconsistent data structure"); + + bs_TrPointPtr base_tp = base_sub_sm->GetStateGraph().GetTrPoint(base_ts); + if (!base_tp) + HANDLE_ERROR("AddTrPoint - inconsistent data structure"); + + tp = sub_sm->GetStateGraph().AddNewTrPoint(ts, is_incoming); + tp->SetInherited(); + + RenameDerivedIff(sub_sm->GetStateGraph().GetTrPoints(), tp, base_tp); + } + else + { + tp = sub_sm->GetStateGraph().AddNewTrPoint(ts, is_incoming); + + int cnt = 0; + while (true) + { + // use system time for unique name + string name = tp->GetName(); + time_t tm = time(NULL); + char buffer[32]; + sprintf(buffer, "%d%d", tm, cnt); + name += buffer; + + if (sub_sm->GetStateGraph().GetTrPoints().ChangeName(tp->GetName(), name)) + // fine + break; + + if (++cnt>100) + { + HANDLE_ERROR("AddTrPoint: inconsistent data structure"); + break; + } + } + } + tp->ComputeContextCoord(s->GetContextCoord()); + + return tp; +} + +class HasOutside2 +{ +public: + HasOutside2(const bs_TrSegment* tseg, bool incoming) : _tseg(tseg), _incoming(incoming) { } + + bool operator() (const bs_TrPointPtr& item) const + { + if (item->IsNonExtending()) + return false; + + if (item->IsIncoming()!=_incoming) + return false; + + bs_TrSegmentPtr t = item->GetOutsideTrSegment(); + return (_tseg==(const bs_TrSegment*)t); + } + +private: + const bs_TrSegment* _tseg; + bool _incoming; +}; + +static bs_TrPointPtr GetUniqueTrPoint (bs_StateGraph& sg, bs_TrSegment* outside, bool incoming) +{ + bs_TrPointList::iterator tp = find_if(sg.GetTrPoints().begin(), sg.GetTrPoints().end(), HasOutside2(outside, incoming)); + if (tp!=sg.GetTrPoints().end()) + { + // check uniqueness + bs_TrPointList::iterator tp2 = find_if(tp+1, sg.GetTrPoints().end(), HasOutside2(outside, incoming)); + while (tp2!=sg.GetTrPoints().end()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: destroying %s\n", (*tp2)->GetName().c_str()); + #endif + tp2 = sg.GetTrPoints().erase(tp2); + tp2 = find_if(tp2, sg.GetTrPoints().end(), HasOutside2(outside, incoming)); + } + + return *tp; + } + + return NULL; +} + +static int MakeTrPointConnectivityConsistent ( + bs_StatePtr s, + bs_StateMachinePtr sm, + bs_StateMachinePtr base_sm, + bs_StateMachinePtr sub_sm, + bs_StateMachinePtr base_sub_sm +) +{ + bs_TrSegmentList& tsl = sm->GetStateGraph().GetTrSegments(); + bs_StateGraph& sub_sg = sub_sm->GetStateGraph(); + + int fixed = 0; + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("<<< MakeTrPointConnectivityConsistent >>>\n"); + #endif + + // loop outgoing trsegments of s + for (bs_TrSegmentIterator it=tsl.GetOutgoing(s); it!=tsl.end(); it=tsl.GetOutgoing(s, it)) + { + bs_TrPointPtr tp = GetUniqueTrPoint(sub_sg, *it, false); + if (tp) + { + if (!tp->IsOutgoing()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: setting %s to outgoing\n", tp->GetName().c_str()); + #endif + + ++fixed; + tp->SetOutgoing(*it); + } + fixed += CheckInheritanceProperties(*it, tp, sub_sm, base_sm, base_sub_sm); + } + else + { + // error: add trpoint + ++fixed; + tp = AddTrPoint(*it, s, sub_sm, base_sub_sm, false); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: adding %s to outgoing\n", tp->GetName().c_str()); + #endif + } + } + + // loop incoming trsegments of s + for (it=tsl.GetIncoming(s); it!=tsl.end(); it=tsl.GetIncoming(s, it)) + { + bs_TrPointPtr tp = GetUniqueTrPoint(sub_sg, *it, true); + if (tp) + { + if (!tp->IsIncoming()) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: setting %s to incoming\n", tp->GetName().c_str()); + #endif + + ++fixed; + tp->SetIncoming(*it); + } + fixed += CheckInheritanceProperties(*it, tp, sub_sm, base_sm, base_sub_sm); + } + else + { + // error: add trpoint + ++fixed; + tp = AddTrPoint(*it, s, sub_sm, base_sub_sm, true); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE(" *** fix: adding %s to incoming\n", tp->GetName().c_str()); + #endif + } + } + + return fixed; +} + +class CPCreator +{ +public: + CPCreator (bs_StateGraph& sg) : _sg(sg) {} + + bs_ChoicepointIterator GetNewObj (void) + { + bs_ChoicepointPtr cp = _sg.AddNewChoicepoint(); + return _sg.GetChoicepoints().FindItem(cp); + } + +private: + bs_StateGraph& _sg; +}; + +static bool MatchCP (bs_ChoicepointPtr&, bs_ChoicepointPtr&) +{ + return true; +} + +class TrPCreator +{ +public: + TrPCreator (bs_StateGraph& sg) : _sg(sg) {} + + bs_TrPointIterator GetNewObj (void) + { + bs_TrPointPtr tp = _sg.AddNewTrPoint(NULL, false); + return _sg.GetTrPoints().FindItem(tp); + } + +private: + bs_StateGraph& _sg; +}; + +static bool MatchTrP (bs_TrPointPtr& tp1, bs_TrPointPtr& tp2) +{ + return tp1->IsNonExtending()==tp2->IsNonExtending(); +} + +static int MakeDerivedObjsConsistent (bs_StateMachinePtr sm, bs_StateMachinePtr base_sm) +{ + int fixed = 0; + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("====== MakeDerivedObjsConsistent ======\n"); + #endif + + // choicepoints + bs_ChoicepointList& cpl = sm->GetStateGraph().GetChoicepoints(); + bs_ChoicepointList& base_cpl = base_sm->GetStateGraph().GetChoicepoints(); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("~~~~~~ checking choicepoints ~~~~~~\n"); + #endif + fixed += MakeDerivedListConsistent(cpl, base_cpl, CPCreator(sm->GetStateGraph()), MatchCP); + + // trpoints + bs_TrPointList& tpl = sm->GetStateGraph().GetTrPoints(); + bs_TrPointList& base_tpl = base_sm->GetStateGraph().GetTrPoints(); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("~~~~~~ checking trpoints ~~~~~~\n"); + #endif + fixed += MakeDerivedListConsistent(tpl, base_tpl, TrPCreator(sm->GetStateGraph()), MatchTrP); + + // recurse into base class states + bs_StateList& sl = sm->GetStateGraph().GetStates(); + bs_StateList& base_sl = base_sm->GetStateGraph().GetStates(); + + bs_StateContext sc(sm); + bs_StateContext base_sc(base_sm); + + for (bs_StateIterator sit=base_sl.begin(); sit!=base_sl.end(); ++sit) + { + bs_StatePtr s = sl[(*sit)->GetName()]; + if (!s) + { + HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure"); + continue; + } + if (!s->IsInherited()) + { + HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure"); + continue; + } + if (!s->HasStateMachine()) + continue; + + if (sc.OneLevelDown(s)) + { + if (base_sc.OneLevelDown(*sit)) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("*** state %s ***\n", (*sit)->GetName().c_str()); + #endif + + fixed += MakeTrPointConnectivityConsistent( + s, + sm, + base_sm, + sc.GetStateMachine(), + base_sc.GetStateMachine() + ); + fixed += MakeDerivedObjsConsistent(sc.GetStateMachine(), base_sc.GetStateMachine()); + + base_sc.OneLevelUp(); + } + else + { + HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure"); + } + + sc.OneLevelUp(); + } + else + { + HANDLE_ERROR("MakeDerivedObjsConsistent - inconsistent data structure"); + } + } + + return fixed; +} + +void bs_ActorClassList::MakeDerivedObjectsConsistent (void) +{ + vector<bs_ActorClassPtr> tmp; + GetDependencySortedVector(tmp); + + // we have to identify inherited choicepoints and trpoints in + // derived classes with their base class counterparts and + // make their names consistent because some commands rely + // on this property of derived classes + + for (bs_ActorClassIterator it=tmp.begin(); it!=tmp.end(); ++it) + { + if (!(*it)->IsDerived()) + continue; + + // the base class is already fixed + // recusrively descend into state machines + bs_StateMachinePtr sm = (*it)->GetBehaviour().GetStateMachine(); + bs_StateMachinePtr base_sm = (*it)->GetBaseClass()->GetBehaviour().GetStateMachine(); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("### actor class %s ###\n", (*it)->GetName().c_str()); + TRACE("*** state TOP ***\n"); + #endif + + int fixed = MakeDerivedObjsConsistent(sm, base_sm); + + if (fixed) + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("### %d fixes made \n\n", fixed); + #endif + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("### second run ### \n\n"); + #endif + + int fixed2 = MakeDerivedObjsConsistent(sm, base_sm); + if (fixed2) + TRACE("### still %d problems ### \n\n", fixed2); + + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("### second run end ### \n\n"); + #endif + + if (fixed2) + { + string msg = + "Actor class '" + (*it)->GetName() + "' had inconsistencies\n" + "WHICH COULD NOT BE REOLVED.\n\n" + "Please send project file and version number of Trice to support@protos.de!\n"; + + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + msg.c_str(), + __FILE__, + __LINE__ + ); + } + else + { + char buf[32]; + sprintf(buf, "%d", fixed); + string msg = + "Actor class '" + (*it)->GetName() + "' had " + buf + " inconsistencies\n" + "in derived Choicepoints and/or TrPoints.\n\n" + "These problems have been fixed!\n"; + + bs_ErrorHdlr::Get()->Handle( + bs_ErrorHdlr::error, + msg.c_str(), + __FILE__, + __LINE__ + ); + } + } + else + { + #ifdef DEBUG_MAKE_CONSISTENT + TRACE("### ok\n\n"); + #endif + } + } +} + +// ************************************************************** diff --git a/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch b/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch index 19e2f842c..6506d0211 100644 --- a/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch +++ b/tests/org.eclipse.etrice.generator.tests/org.eclipse.etrice.generator.tests.launch @@ -1,40 +1,40 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.generator.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.generator.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.sdk.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.generator.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.generator.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.generator.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.sdk.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java index be7fd55f3..bf05cac71 100644 --- a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java +++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/InstanceTestsActivator.java @@ -1,33 +1,33 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.generator;
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-
-public class InstanceTestsActivator extends Plugin implements BundleActivator {
-
- private static InstanceTestsActivator instance = null;
-
- public static InstanceTestsActivator getInstance() {
- return instance;
- }
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- instance = this;
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.generator; +import org.eclipse.core.runtime.Plugin; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + + +public class InstanceTestsActivator extends Plugin implements BundleActivator { + + private static InstanceTestsActivator instance = null; + + public static InstanceTestsActivator getInstance() { + return instance; + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + + instance = this; + } +} diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java index 84ea515ef..39d2a8e6b 100644 --- a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java +++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java @@ -1,525 +1,525 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.generator.base;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.URL;
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Attribute;
-import org.eclipse.etrice.core.room.DetailCode;
-import org.eclipse.etrice.core.room.ExternalType;
-import org.eclipse.etrice.core.room.InterfaceItem;
-import org.eclipse.etrice.core.room.Message;
-import org.eclipse.etrice.core.room.Operation;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.core.room.PrimitiveType;
-import org.eclipse.etrice.core.room.ProtocolClass;
-import org.eclipse.etrice.core.room.RefableType;
-import org.eclipse.etrice.core.room.RoomFactory;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.etrice.core.room.StandardOperation;
-import org.eclipse.etrice.core.room.VarDecl;
-import org.eclipse.etrice.core.room.util.RoomHelpers;
-import org.eclipse.etrice.generator.InstanceTestsActivator;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestDetailCodeTranslator {
-
-
- /**
- * @author Henrik Rentz-Reichert
- *
- */
- private final class TestTranslationProvider implements ITranslationProvider {
-
- @Override
- public boolean translateMembers() {
- return true;
- }
-
- @Override
- public String getAttributeGetter(Attribute att, String index, String orig) {
- if (index==null)
- return ">"+att.getName()+"<";
- else
- return ">"+att.getName()+"["+index+"]<";
- }
-
- @Override
- public String getAttributeSetter(Attribute att, String index, String value, String orig) {
- if (index==null)
- return ">"+att.getName()+" = "+value+"<";
- else
- return ">"+att.getName()+"["+index+"] = "+value+"<";
- }
-
- @Override
- public String getOperationText(Operation op, ArrayList<String> args, String orig) {
- return ">"+op.getName()+"("+getArgList(args)+")<";
- }
-
- @Override
- public String getInterfaceItemMessageText(InterfaceItem item, Message msg, ArrayList<String> args, String index, String orig) {
- if (index==null)
- return ">"+item.getName()+"."+msg.getName()+"("+getArgList(args)+")<";
- else
- return ">"+item.getName()+"["+index+"]."+msg.getName()+"("+getArgList(args)+")<";
- }
-
- @Override
- public String getInterfaceItemMessageValue(InterfaceItem item, Message msg, String orig) {
- return ">"+item.getName()+"."+msg.getName()+"<";
- }
-
- private String getArgList(ArrayList<String> args) {
- StringBuilder result = new StringBuilder();
- for (String string : args) {
- result.append(string+", ");
- }
- int end = args.isEmpty()? result.length():result.length()-2;
- return result.substring(0, end);
- }
-
- @Override
- public boolean translateTags() {
- return true;
- }
-
- @Override
- public String translateTag(String tag, DetailCode code) {
- return ">"+tag+"<";
- }
-
- @Override
- public void setContainerClass(EObject container) {
- }
- }
-
- private RoomModel model;
- private ActorClass ac;
- private DetailCodeTranslator translator;
-
- @Before
- public void setUp() {
- model = RoomFactory.eINSTANCE.createRoomModel();
-
- ProtocolClass pc = RoomFactory.eINSTANCE.createProtocolClass();
- model.getProtocolClasses().add(pc);
- pc.setName("TestProtocol");
- Message out1 = RoomFactory.eINSTANCE.createMessage();
- out1.setName("out1");
- Message out2 = RoomFactory.eINSTANCE.createMessage();
- out2.setName("out2");
- VarDecl typedID = RoomFactory.eINSTANCE.createVarDecl();
- typedID.setName("param");
- PrimitiveType type = RoomFactory.eINSTANCE.createPrimitiveType();
- type.setName("int32");
- type.setCastName("Integer");
- type.setTargetName("int32");
- type.setDefaultValueLiteral("0");
- RefableType refType = RoomFactory.eINSTANCE.createRefableType();
- refType.setType(type);
- typedID.setRefType(refType);
- out2.setData(typedID);
- pc.getOutgoingMessages().add(out1);
- pc.getOutgoingMessages().add(out2);
- Message in1 = RoomFactory.eINSTANCE.createMessage();
- in1.setName("in1");
- pc.getIncomingMessages().add(in1);
-
- ac = RoomFactory.eINSTANCE.createActorClass();
- model.getActorClasses().add(ac);
- ac.setName("TestActor");
-
- Port port = RoomFactory.eINSTANCE.createPort();
- port.setName("fct");
- port.setProtocol(pc);
- ac.getIntPorts().add(port);
-
- Attribute attr = RoomFactory.eINSTANCE.createAttribute();
- attr.setName("value");
- attr.setRefType(EcoreUtil.copy(refType));
- ac.getAttributes().add(attr);
-
- attr = RoomFactory.eINSTANCE.createAttribute();
- attr.setName("array");
- attr.setRefType(EcoreUtil.copy(refType));
- attr.setSize(8);
- ac.getAttributes().add(attr);
-
- StandardOperation op0 = RoomFactory.eINSTANCE.createStandardOperation();
- op0.setName("bar0");
- ac.getOperations().add(op0);
-
- StandardOperation op1 = RoomFactory.eINSTANCE.createStandardOperation();
- op1.setName("bar1");
- VarDecl param1 = RoomFactory.eINSTANCE.createVarDecl();
- param1.setName("param");
- ExternalType ft = RoomFactory.eINSTANCE.createExternalType();
- ft.setName("MyType");
- ft.setTargetName("MyType");
- refType = RoomFactory.eINSTANCE.createRefableType();
- refType.setType(ft);
- param1.setRefType(refType);
- op1.getArguments().add(param1);
- ac.getOperations().add(op1);
-
- StandardOperation op2 = RoomFactory.eINSTANCE.createStandardOperation();
- op2.setName("bar2");
- VarDecl param2 = RoomFactory.eINSTANCE.createVarDecl();
- param2.setName("param");
- ExternalType ft2 = EcoreUtil.copy(ft);
- ft2.setName("MyOtherType");
- refType = RoomFactory.eINSTANCE.createRefableType();
- refType.setType(ft2);
- param2.setRefType(refType);
- op2.getArguments().add(EcoreUtil.copy(param1));
- op2.getArguments().add(param2);
- ac.getOperations().add(op2);
-
- translator = new DetailCodeTranslator(ac, new TestTranslationProvider());
- }
-
- @Test
- public void testSingleComment() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("//");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("comment", "//", result);
- }
-
- @Test
- public void testMultiComment() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("/* some comment");
- dc.getCommands().add("continued");
- dc.getCommands().add("*/");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("comment", "/* some comment\ncontinued\n*/", result);
- }
-
- @Test
- public void testPortNonExMsg() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out();");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.non_ex_message _no_ replacement", "fct.out();", result);
- }
-
- @Test
- public void testPortMsg() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out1();");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message replacement", ">fct.out1()<;", result);
- }
-
- @Test
- public void testIndexedPortMsg() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct[2].out1();");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message replacement", ">fct[2].out1()<;", result);
- }
-
- @Test
- public void testIndexedPortMsgComplex() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct[self->index[2]].out1();");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message replacement", ">fct[self->index[2]].out1()<;", result);
- }
-
- @Test
- public void testPortMsgValue() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("x = 2*fct.in1;");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message as value (getter) replacement", "x = 2*>fct.in1<;", result);
- }
-
- @Test
- public void testPortMsgValueInGuard() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.in1");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message as value (getter) replacement", ">fct.in1<", result);
- }
-
- @Test
- public void testPortMsgValueNoReplace() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("x = 2*fct.out1;");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message as value (getter) replacement", "x = 2*fct.out1;", result);
- }
-
- @Test
- public void testPortMsgComments() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct . out1 (/*comment*/");
- dc.getCommands().add("//comment");
- dc.getCommands().add(" );");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message (with comments and white space) replacement", ">fct.out1()<;", result);
- }
-
- @Test
- public void testPortMsgData() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out2(123);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message(data) replacement", ">fct.out2(123)<;", result);
- }
-
- @Test
- public void testPortMsgDataComment() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out2(123/4 /*comment*/);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message(data) replacement", ">fct.out2(123/4 /*comment*/)<;", result);
- }
-
- @Test
- public void testPortMsgDataRecursive() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out2(value);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message(attrib) recursive replacement", ">fct.out2(>value<)<;", result);
- }
-
- @Test
- public void testPortMsgDataFloat() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out2(123.4);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message(data) replacement", ">fct.out2(123.4)<;", result);
- }
-
- @Test
- public void testPortMsgDataComplex() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("fct.out2(foxy(abc, 12.3));");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("port.message(data) replacement", ">fct.out2(foxy(abc, 12.3))<;", result);
- }
-
- @Test
- public void testAttributeGetter() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("int x = value*2;");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("read attribute", "int x = >value<*2;", result);
- }
-
- @Test
- public void testAttributeIndexedGetter() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("int x = array[2]*2;");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("read indexed attribute", "int x = >array[2]<*2;", result);
- }
-
- @Test
- public void testAttributeSetter() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("value.set(2);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("write attribute", ">value = 2<;", result);
- }
-
- @Test
- public void testAttributeIndexedSetter() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("array[3].set(2);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("write indexed attribute", ">array[3] = 2<;", result);
- }
-
- @Test
- public void testAttributeIndexedSetterRecursive() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("array[value].set(value);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("write indexed attribute", ">array[>value<] = >value<<;", result);
- }
-
- @Test
- public void testOperation0() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar0();");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("fct() replacement", ">bar0()<;", result);
- }
-
- @Test
- public void testOperation1() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar1(123);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("bar1(123) replacement", ">bar1(123)<;", result);
- }
-
- @Test
- public void testOperation2() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar2(123, 456);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("bar2(123, 456) replacement", ">bar2(123, 456)<;", result);
- }
-
- @Test
- public void testOperation3() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar2(123, value);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("bar2(123, value) recursive replacement", ">bar2(123, >value<)<;", result);
- }
-
- @Test
- public void testOperation4() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar2(123, bar1(value));");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("bar2(123, value) recursive replacement", ">bar2(123, >bar1(>value<)<)<;", result);
- }
-
- @Test
- public void testOperationWrongNArg() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("bar2(123, 456, 789);");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("fct(123) no replacement", "bar2(123, 456, 789);", result);
- }
-
- @Test (timeout=1000)
- public void testCommentBug() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("*/ no comment */");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("wrong comment", "*/ no comment */", result);
- }
-
- @Test (timeout=1000)
- public void testLargeFile() {
- DetailCode dc = getLargeFile();
-
- // this adds a trailing \n
- String orig = RoomHelpers.getDetailCode(dc);
-
- // remove trailing \n
- orig = orig.substring(0, orig.length()-1);
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("large file", orig, result);
- }
-
- private DetailCode getLargeFile() {
- try {
- URL fileURL = InstanceTestsActivator.getInstance().getBundle().getEntry("models/largeFile.cpp");
- fileURL = FileLocator.toFileURL(fileURL);
- InputStream istream = fileURL.openStream();
- InputStreamReader ireader = new InputStreamReader(istream);
- BufferedReader reader = new BufferedReader(ireader);
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- String line;
- while ((line = reader.readLine())!=null) {
- dc.getCommands().add(line);
- }
- return dc;
- } catch (IOException e) {
- e.printStackTrace();
- }
- return null;
- }
-
- @Test
- public void testTags() {
- DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
- dc.getCommands().add("log(\"my message\", \"<|location|>\");");
-
- String result = translator.translateDetailCode(dc);
-
- assertEquals("large file", "log(\"my message\", \">location<\");", result);
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.generator.base; + +import static org.junit.Assert.assertEquals; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.URL; +import java.util.ArrayList; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.Attribute; +import org.eclipse.etrice.core.room.DetailCode; +import org.eclipse.etrice.core.room.ExternalType; +import org.eclipse.etrice.core.room.InterfaceItem; +import org.eclipse.etrice.core.room.Message; +import org.eclipse.etrice.core.room.Operation; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.core.room.PrimitiveType; +import org.eclipse.etrice.core.room.ProtocolClass; +import org.eclipse.etrice.core.room.RefableType; +import org.eclipse.etrice.core.room.RoomFactory; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.etrice.core.room.StandardOperation; +import org.eclipse.etrice.core.room.VarDecl; +import org.eclipse.etrice.core.room.util.RoomHelpers; +import org.eclipse.etrice.generator.InstanceTestsActivator; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestDetailCodeTranslator { + + + /** + * @author Henrik Rentz-Reichert + * + */ + private final class TestTranslationProvider implements ITranslationProvider { + + @Override + public boolean translateMembers() { + return true; + } + + @Override + public String getAttributeGetter(Attribute att, String index, String orig) { + if (index==null) + return ">"+att.getName()+"<"; + else + return ">"+att.getName()+"["+index+"]<"; + } + + @Override + public String getAttributeSetter(Attribute att, String index, String value, String orig) { + if (index==null) + return ">"+att.getName()+" = "+value+"<"; + else + return ">"+att.getName()+"["+index+"] = "+value+"<"; + } + + @Override + public String getOperationText(Operation op, ArrayList<String> args, String orig) { + return ">"+op.getName()+"("+getArgList(args)+")<"; + } + + @Override + public String getInterfaceItemMessageText(InterfaceItem item, Message msg, ArrayList<String> args, String index, String orig) { + if (index==null) + return ">"+item.getName()+"."+msg.getName()+"("+getArgList(args)+")<"; + else + return ">"+item.getName()+"["+index+"]."+msg.getName()+"("+getArgList(args)+")<"; + } + + @Override + public String getInterfaceItemMessageValue(InterfaceItem item, Message msg, String orig) { + return ">"+item.getName()+"."+msg.getName()+"<"; + } + + private String getArgList(ArrayList<String> args) { + StringBuilder result = new StringBuilder(); + for (String string : args) { + result.append(string+", "); + } + int end = args.isEmpty()? result.length():result.length()-2; + return result.substring(0, end); + } + + @Override + public boolean translateTags() { + return true; + } + + @Override + public String translateTag(String tag, DetailCode code) { + return ">"+tag+"<"; + } + + @Override + public void setContainerClass(EObject container) { + } + } + + private RoomModel model; + private ActorClass ac; + private DetailCodeTranslator translator; + + @Before + public void setUp() { + model = RoomFactory.eINSTANCE.createRoomModel(); + + ProtocolClass pc = RoomFactory.eINSTANCE.createProtocolClass(); + model.getProtocolClasses().add(pc); + pc.setName("TestProtocol"); + Message out1 = RoomFactory.eINSTANCE.createMessage(); + out1.setName("out1"); + Message out2 = RoomFactory.eINSTANCE.createMessage(); + out2.setName("out2"); + VarDecl typedID = RoomFactory.eINSTANCE.createVarDecl(); + typedID.setName("param"); + PrimitiveType type = RoomFactory.eINSTANCE.createPrimitiveType(); + type.setName("int32"); + type.setCastName("Integer"); + type.setTargetName("int32"); + type.setDefaultValueLiteral("0"); + RefableType refType = RoomFactory.eINSTANCE.createRefableType(); + refType.setType(type); + typedID.setRefType(refType); + out2.setData(typedID); + pc.getOutgoingMessages().add(out1); + pc.getOutgoingMessages().add(out2); + Message in1 = RoomFactory.eINSTANCE.createMessage(); + in1.setName("in1"); + pc.getIncomingMessages().add(in1); + + ac = RoomFactory.eINSTANCE.createActorClass(); + model.getActorClasses().add(ac); + ac.setName("TestActor"); + + Port port = RoomFactory.eINSTANCE.createPort(); + port.setName("fct"); + port.setProtocol(pc); + ac.getIntPorts().add(port); + + Attribute attr = RoomFactory.eINSTANCE.createAttribute(); + attr.setName("value"); + attr.setRefType(EcoreUtil.copy(refType)); + ac.getAttributes().add(attr); + + attr = RoomFactory.eINSTANCE.createAttribute(); + attr.setName("array"); + attr.setRefType(EcoreUtil.copy(refType)); + attr.setSize(8); + ac.getAttributes().add(attr); + + StandardOperation op0 = RoomFactory.eINSTANCE.createStandardOperation(); + op0.setName("bar0"); + ac.getOperations().add(op0); + + StandardOperation op1 = RoomFactory.eINSTANCE.createStandardOperation(); + op1.setName("bar1"); + VarDecl param1 = RoomFactory.eINSTANCE.createVarDecl(); + param1.setName("param"); + ExternalType ft = RoomFactory.eINSTANCE.createExternalType(); + ft.setName("MyType"); + ft.setTargetName("MyType"); + refType = RoomFactory.eINSTANCE.createRefableType(); + refType.setType(ft); + param1.setRefType(refType); + op1.getArguments().add(param1); + ac.getOperations().add(op1); + + StandardOperation op2 = RoomFactory.eINSTANCE.createStandardOperation(); + op2.setName("bar2"); + VarDecl param2 = RoomFactory.eINSTANCE.createVarDecl(); + param2.setName("param"); + ExternalType ft2 = EcoreUtil.copy(ft); + ft2.setName("MyOtherType"); + refType = RoomFactory.eINSTANCE.createRefableType(); + refType.setType(ft2); + param2.setRefType(refType); + op2.getArguments().add(EcoreUtil.copy(param1)); + op2.getArguments().add(param2); + ac.getOperations().add(op2); + + translator = new DetailCodeTranslator(ac, new TestTranslationProvider()); + } + + @Test + public void testSingleComment() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("//"); + + String result = translator.translateDetailCode(dc); + + assertEquals("comment", "//", result); + } + + @Test + public void testMultiComment() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("/* some comment"); + dc.getCommands().add("continued"); + dc.getCommands().add("*/"); + + String result = translator.translateDetailCode(dc); + + assertEquals("comment", "/* some comment\ncontinued\n*/", result); + } + + @Test + public void testPortNonExMsg() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out();"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.non_ex_message _no_ replacement", "fct.out();", result); + } + + @Test + public void testPortMsg() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out1();"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message replacement", ">fct.out1()<;", result); + } + + @Test + public void testIndexedPortMsg() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct[2].out1();"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message replacement", ">fct[2].out1()<;", result); + } + + @Test + public void testIndexedPortMsgComplex() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct[self->index[2]].out1();"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message replacement", ">fct[self->index[2]].out1()<;", result); + } + + @Test + public void testPortMsgValue() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("x = 2*fct.in1;"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message as value (getter) replacement", "x = 2*>fct.in1<;", result); + } + + @Test + public void testPortMsgValueInGuard() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.in1"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message as value (getter) replacement", ">fct.in1<", result); + } + + @Test + public void testPortMsgValueNoReplace() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("x = 2*fct.out1;"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message as value (getter) replacement", "x = 2*fct.out1;", result); + } + + @Test + public void testPortMsgComments() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct . out1 (/*comment*/"); + dc.getCommands().add("//comment"); + dc.getCommands().add(" );"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message (with comments and white space) replacement", ">fct.out1()<;", result); + } + + @Test + public void testPortMsgData() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out2(123);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message(data) replacement", ">fct.out2(123)<;", result); + } + + @Test + public void testPortMsgDataComment() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out2(123/4 /*comment*/);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message(data) replacement", ">fct.out2(123/4 /*comment*/)<;", result); + } + + @Test + public void testPortMsgDataRecursive() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out2(value);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message(attrib) recursive replacement", ">fct.out2(>value<)<;", result); + } + + @Test + public void testPortMsgDataFloat() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out2(123.4);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message(data) replacement", ">fct.out2(123.4)<;", result); + } + + @Test + public void testPortMsgDataComplex() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("fct.out2(foxy(abc, 12.3));"); + + String result = translator.translateDetailCode(dc); + + assertEquals("port.message(data) replacement", ">fct.out2(foxy(abc, 12.3))<;", result); + } + + @Test + public void testAttributeGetter() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("int x = value*2;"); + + String result = translator.translateDetailCode(dc); + + assertEquals("read attribute", "int x = >value<*2;", result); + } + + @Test + public void testAttributeIndexedGetter() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("int x = array[2]*2;"); + + String result = translator.translateDetailCode(dc); + + assertEquals("read indexed attribute", "int x = >array[2]<*2;", result); + } + + @Test + public void testAttributeSetter() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("value.set(2);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("write attribute", ">value = 2<;", result); + } + + @Test + public void testAttributeIndexedSetter() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("array[3].set(2);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("write indexed attribute", ">array[3] = 2<;", result); + } + + @Test + public void testAttributeIndexedSetterRecursive() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("array[value].set(value);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("write indexed attribute", ">array[>value<] = >value<<;", result); + } + + @Test + public void testOperation0() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar0();"); + + String result = translator.translateDetailCode(dc); + + assertEquals("fct() replacement", ">bar0()<;", result); + } + + @Test + public void testOperation1() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar1(123);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("bar1(123) replacement", ">bar1(123)<;", result); + } + + @Test + public void testOperation2() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar2(123, 456);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("bar2(123, 456) replacement", ">bar2(123, 456)<;", result); + } + + @Test + public void testOperation3() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar2(123, value);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("bar2(123, value) recursive replacement", ">bar2(123, >value<)<;", result); + } + + @Test + public void testOperation4() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar2(123, bar1(value));"); + + String result = translator.translateDetailCode(dc); + + assertEquals("bar2(123, value) recursive replacement", ">bar2(123, >bar1(>value<)<)<;", result); + } + + @Test + public void testOperationWrongNArg() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("bar2(123, 456, 789);"); + + String result = translator.translateDetailCode(dc); + + assertEquals("fct(123) no replacement", "bar2(123, 456, 789);", result); + } + + @Test (timeout=1000) + public void testCommentBug() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("*/ no comment */"); + + String result = translator.translateDetailCode(dc); + + assertEquals("wrong comment", "*/ no comment */", result); + } + + @Test (timeout=1000) + public void testLargeFile() { + DetailCode dc = getLargeFile(); + + // this adds a trailing \n + String orig = RoomHelpers.getDetailCode(dc); + + // remove trailing \n + orig = orig.substring(0, orig.length()-1); + + String result = translator.translateDetailCode(dc); + + assertEquals("large file", orig, result); + } + + private DetailCode getLargeFile() { + try { + URL fileURL = InstanceTestsActivator.getInstance().getBundle().getEntry("models/largeFile.cpp"); + fileURL = FileLocator.toFileURL(fileURL); + InputStream istream = fileURL.openStream(); + InputStreamReader ireader = new InputStreamReader(istream); + BufferedReader reader = new BufferedReader(ireader); + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + String line; + while ((line = reader.readLine())!=null) { + dc.getCommands().add(line); + } + return dc; + } catch (IOException e) { + e.printStackTrace(); + } + return null; + } + + @Test + public void testTags() { + DetailCode dc = RoomFactory.eINSTANCE.createDetailCode(); + dc.getCommands().add("log(\"my message\", \"<|location|>\");"); + + String result = translator.translateDetailCode(dc); + + assertEquals("large file", "log(\"my message\", \">location<\");", result); + } +} diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestGenFileTreeBuilder.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestGenFileTreeBuilder.java index 004a8ef94..f0bd9ef49 100644 --- a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestGenFileTreeBuilder.java +++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestGenFileTreeBuilder.java @@ -1,92 +1,92 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.generator.base;
-
-import static org.junit.Assert.*;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class TestGenFileTreeBuilder {
-
- private static final String[] files = {
- "/path/to/my/project/sub1/foo/a.txt",
- "/path/to/my/project/sub1/foo/b.txt",
- "/path/to/my/project/sub1/foo/c.txt",
- "/path/to/my/project/sub1/bar/x.txt",
- "/path/to/my/project/sub1/bar/y.txt",
- "/path/to/my/project/sub1/bar/z.txt",
- "/path/to/my/project/sub2/dir1/f.txt",
- "/path/to/my/project/sub2/dir1/g.txt",
- "/path/to/my/project/sub2/dir2/k.txt",
- "/path/to/my/project/sub2/dir2/l.txt",
- "/path/to/my/project/sub2/m.txt",
- "/path/to/my/project/sub2/n.txt"
- };
-
- private void collectGenFiles(GenDir root, HashMap<String, GenFile> genFiles) {
- for (GenItem item : root.getContents()) {
- if (item instanceof GenDir)
- collectGenFiles((GenDir) item, genFiles);
- else if (item instanceof GenFile)
- genFiles.put(item.getPath(), (GenFile) item);
- else
- fail("unexpected sub type");
- }
- }
-
- @Test
- public void testWithoutFilter() {
- GenFileTreeBuilder builder = new GenFileTreeBuilder("/path/to/my/project/", Arrays.asList(files), null);
- GenDir root = builder.getGenFileTree();
- assertNotNull("root available", root);
- assertEquals("name", "root", root.getName());
-
- HashMap<String, GenFile> genFiles = new HashMap<String, GenFile>();
- collectGenFiles(root, genFiles);
-
- GenFile f = genFiles.get("sub2/dir1/f.txt");
- assertNotNull("f.txt", f);
-
- f = genFiles.get("sub2/n.txt");
- assertNotNull("n.txt", f);
- }
-
- @Test
- public void testWithFilter() {
- ArrayList<String> folders = new ArrayList<String>();
- folders.add("sub2/dir1");
- folders.add("sub1");
- FolderFilter ff = new FolderFilter(folders);
- GenFileTreeBuilder builder = new GenFileTreeBuilder("/path/to/my/project/", Arrays.asList(files), ff);
- GenDir root = builder.getGenFileTree();
- assertNotNull("root available", root);
- assertEquals("name", "root", root.getName());
-
- HashMap<String, GenFile> genFiles = new HashMap<String, GenFile>();
- collectGenFiles(root, genFiles);
-
- GenFile f = genFiles.get("sub2/dir1/f.txt");
- assertNotNull("f.txt", f);
-
- f = genFiles.get("sub2/n.txt");
- assertNull("n.txt", f);
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.generator.base; + +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; + +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class TestGenFileTreeBuilder { + + private static final String[] files = { + "/path/to/my/project/sub1/foo/a.txt", + "/path/to/my/project/sub1/foo/b.txt", + "/path/to/my/project/sub1/foo/c.txt", + "/path/to/my/project/sub1/bar/x.txt", + "/path/to/my/project/sub1/bar/y.txt", + "/path/to/my/project/sub1/bar/z.txt", + "/path/to/my/project/sub2/dir1/f.txt", + "/path/to/my/project/sub2/dir1/g.txt", + "/path/to/my/project/sub2/dir2/k.txt", + "/path/to/my/project/sub2/dir2/l.txt", + "/path/to/my/project/sub2/m.txt", + "/path/to/my/project/sub2/n.txt" + }; + + private void collectGenFiles(GenDir root, HashMap<String, GenFile> genFiles) { + for (GenItem item : root.getContents()) { + if (item instanceof GenDir) + collectGenFiles((GenDir) item, genFiles); + else if (item instanceof GenFile) + genFiles.put(item.getPath(), (GenFile) item); + else + fail("unexpected sub type"); + } + } + + @Test + public void testWithoutFilter() { + GenFileTreeBuilder builder = new GenFileTreeBuilder("/path/to/my/project/", Arrays.asList(files), null); + GenDir root = builder.getGenFileTree(); + assertNotNull("root available", root); + assertEquals("name", "root", root.getName()); + + HashMap<String, GenFile> genFiles = new HashMap<String, GenFile>(); + collectGenFiles(root, genFiles); + + GenFile f = genFiles.get("sub2/dir1/f.txt"); + assertNotNull("f.txt", f); + + f = genFiles.get("sub2/n.txt"); + assertNotNull("n.txt", f); + } + + @Test + public void testWithFilter() { + ArrayList<String> folders = new ArrayList<String>(); + folders.add("sub2/dir1"); + folders.add("sub1"); + FolderFilter ff = new FolderFilter(folders); + GenFileTreeBuilder builder = new GenFileTreeBuilder("/path/to/my/project/", Arrays.asList(files), ff); + GenDir root = builder.getGenFileTree(); + assertNotNull("root available", root); + assertEquals("name", "root", root.getName()); + + HashMap<String, GenFile> genFiles = new HashMap<String, GenFile>(); + collectGenFiles(root, genFiles); + + GenFile f = genFiles.get("sub2/dir1/f.txt"); + assertNotNull("f.txt", f); + + f = genFiles.get("sub2/n.txt"); + assertNull("n.txt", f); + } +} diff --git a/tests/org.eclipse.etrice.runtime.c.tests/.gitignore b/tests/org.eclipse.etrice.runtime.c.tests/.gitignore index 1f8db309c..df3bd5584 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/.gitignore +++ b/tests/org.eclipse.etrice.runtime.c.tests/.gitignore @@ -1,8 +1,8 @@ -DebugLinux
-ReleaseLinux
-DebugMinGW
-ReleaseMinGW
-bin
-output
-results
-tmp
+DebugLinux +ReleaseLinux +DebugMinGW +ReleaseMinGW +bin +output +results +tmp diff --git a/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.core.prefs b/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.core.prefs index 8c2536ff3..4de7fe9ee 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.core.prefs +++ b/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.core.prefs @@ -1,3 +1,3 @@ -eclipse.preferences.version=1
-environment/project/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true
-environment/project/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=false
+eclipse.preferences.version=1 +environment/project/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true +environment/project/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=false diff --git a/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs index 4b2864c30..7f8eaa747 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs +++ b/tests/org.eclipse.etrice.runtime.c.tests/.settings/org.eclipse.cdt.managedbuilder.core.prefs @@ -1,31 +1,31 @@ -eclipse.preferences.version=1
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/appendContributed=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/CPATH/delimiter=\:
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/C_INCLUDE_PATH/delimiter=\:
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/LIBRARY_PATH/delimiter=\:
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/appendContributed=true
+eclipse.preferences.version=1 +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/CPATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/CPATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/C_INCLUDE_PATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/C_INCLUDE_PATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/append=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/appendContributed=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/CPATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/CPATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/C_INCLUDE_PATH/delimiter=; +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/C_INCLUDE_PATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/CPATH/delimiter=\: +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/CPATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/C_INCLUDE_PATH/delimiter=\: +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/C_INCLUDE_PATH/operation=remove +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/append=true +environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/appendContributed=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/LIBRARY_PATH/delimiter=; +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/LIBRARY_PATH/operation=remove +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/append=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921.786066887/appendContributed=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/LIBRARY_PATH/delimiter=; +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/LIBRARY_PATH/operation=remove +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/append=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1638834921/appendContributed=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/LIBRARY_PATH/delimiter=\: +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/LIBRARY_PATH/operation=remove +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/append=true +environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.555768451/appendContributed=true diff --git a/tests/org.eclipse.etrice.runtime.c.tests/buckminster.cspec b/tests/org.eclipse.etrice.runtime.c.tests/buckminster.cspec index a16c92562..c84af0960 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.runtime.c.tests/buckminster.cspec @@ -1,11 +1,11 @@ -<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.runtime.c.tests" componentType="buckminster" version="0.3.0.qualifier">
- <cs:actions>
- <cs:public name="run_tests" actor="ant">
- <cs:actorProperties>
- <cs:property key="buildFile" value="make.xml"/>
- <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/>
- <cs:property key="targets" value="all"/>
- </cs:actorProperties>
- </cs:public>
- </cs:actions>
-</cs:cspec>
+<?xml version="1.0" encoding="UTF-8"?><cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.runtime.c.tests" componentType="buckminster" version="0.3.0.qualifier"> + <cs:actions> + <cs:public name="run_tests" actor="ant"> + <cs:actorProperties> + <cs:property key="buildFile" value="make.xml"/> + <cs:property key="target.platform" value="${WORKSPACE}/buildroot/target.platform"/> + <cs:property key="targets" value="all"/> + </cs:actorProperties> + </cs:public> + </cs:actions> +</cs:cspec> diff --git a/tests/org.eclipse.etrice.runtime.c.tests/make.xml b/tests/org.eclipse.etrice.runtime.c.tests/make.xml index a7e646d14..180c011e6 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/make.xml +++ b/tests/org.eclipse.etrice.runtime.c.tests/make.xml @@ -1,247 +1,247 @@ -<?xml version="1.0"?>
-<!--
- Ant makefile for building and running of tests.
- This includes conversion of the etunit
- results into xunit xml.
-
- To work locally you should define in your environment
- ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation
- ETRICE_C_RUNTIME=path to the org.eclipse.etrice.runtime.c folder (relative path doesn't work)
- ETRICE_GCC_PATH=folder where gcc resides
-
- @author Henrik Rentz-Reichert
--->
-<project name="project" default="all">
-
- <property name="runtime.path" value="../../runtime/org.eclipse.etrice.runtime.c"/>
- <property name="bin.path" value="./bin"/>
- <property name="xml.output" value="./tmp"/>
- <property name="output" value="./output"/>
- <property environment="env"/>
-
-
- <!--
- all: compiles, runs, converts and copies the results
- -->
- <target name="all" depends="convert,copy_results">
- <echo>done with org.eclipse.etrice.runtime.c.tests</echo>
- </target>
-
- <!--
- set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already
- -->
- <target name="set_tp" unless="target.platform">
- <echo>using local target platform</echo>
- <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/>
- </target>
-
- <!--
- set_tr: sets the test.result property if not set already
- -->
- <target name="set_tr" unless="test.results">
- <echo>using local test result folder</echo>
- <property name="test.results" value="./results"/>
- </target>
-
- <!--
- set_platform: sets the runtime.platform property if not set already
- -->
- <target name="set_platform" unless="runtime.platform">
- <echo>using MinGW runtime platform</echo>
- <!--
- <property name="runtime.platform" value="MT_WIN_MinGW"/>
- -->
- <property name="runtime.platform" value="MT_POSIX_GENERIC_GCC"/>
- </target>
-
- <!--
- set_rp: sets the runtime.path from the ETRICE_C_RUNTIME environment variable property if not set already
- -->
- <target name="set_rp" unless="c-runtime.path">
- <echo>using local runtime folder</echo>
- <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/>
- </target>
-
- <!--
- set_gcc_path: sets the gcc.path property from the ETRICE_GCC_PATH environment variable property if not set already
- -->
- <target name="set_gcc_path" unless="gcc.path">
- <echo>using gcc from path</echo>
- <property name="gcc.path" value="${env.ETRICE_GCC_PATH}"/>
- </target>
-
- <!--
- clean: deletes all folders created by this script
- -->
- <target name="clean" depends="set_tr,set_rp">
- <delete dir="${bin.path}"/>
- <delete dir="${c-runtime.path}/bin"/>
- <delete dir="${output}"/>
- <delete dir="src-gen"/>
- <delete dir="tmp"/>
- </target>
-
- <!--
- compile_runtime: compiles the C runtime library
- -->
- <target name="compile_runtime" depends="clean,set_rp,set_gcc_path">
- <mkdir dir="${c-runtime.path}/bin"/>
- <mkdir dir="${output}"/>
- <exec dir="${c-runtime.path}/bin" executable="${gcc.path}/gcc" failonerror="true" output="${output}/compile_runtime.txt">
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../src/common/debugging/etMSCLogger.c"/>
- <arg value="../src/common/etUnit/etUnit.c"/>
- <arg value="../src/common/base/etMemory_FreeList.c"/>
- <arg value="../src/common/base/etMemory_FixedSize.c"/>
- <arg value="../src/common/base/etQueue.c"/>
- <arg value="../src/common/messaging/etMessage.c"/>
- <arg value="../src/common/messaging/etMessageQueue.c"/>
- <arg value="../src/common/messaging/etMessageService.c"/>
- <arg value="../src/common/messaging/etSystemProtocol.c"/>
- <arg value="../src/common/helpers/etTimeHelpers.c"/>
- <arg value="../src/common/runtime/etRuntime.c"/>
- <arg value="../src/common/modelbase/etActor.c"/>
- <arg value="../src/common/modelbase/etPort.c"/>
- <arg value="../src/platforms/${runtime.platform}/etLogger.c"/>
- <arg value="../src/platforms/${runtime.platform}/etMutex.c"/>
- <arg value="../src/platforms/${runtime.platform}/etPlatformLifecycle.c"/>
- <arg value="../src/platforms/${runtime.platform}/etSema.c"/>
- <arg value="../src/platforms/${runtime.platform}/etThread.c"/>
- <arg value="../src/platforms/${runtime.platform}/etTime.c"/>
- <arg value="../src/platforms/${runtime.platform}/etTimer.c"/>
- </exec>
- <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true">
- <arg value="-r"/>
- <arg value="liborg.eclipse.etrice.runtime.c.a"/>
- <arg value="etActor.o"/>
- <arg value="etLogger.o"/>
- <arg value="etMessage.o"/>
- <arg value="etMessageQueue.o"/>
- <arg value="etMessageService.o"/>
- <arg value="etSystemProtocol.o"/>
- <arg value="etTimeHelpers.o"/>
- <arg value="etRuntime.o"/>
- <arg value="etMSCLogger.o"/>
- <arg value="etMutex.o"/>
- <arg value="etPlatformLifecycle.o"/>
- <arg value="etPort.o"/>
- <arg value="etSema.o"/>
- <arg value="etThread.o"/>
- <arg value="etTime.o"/>
- <arg value="etTimer.o"/>
- <arg value="etUnit.o"/>
- <arg value="etMemory_FreeList.o"/>
- <arg value="etMemory_FixedSize.o"/>
- <arg value="etQueue.o"/>
- </exec>
- </target>
-
- <!--
- build: compiles and links the generated C sources
- -->
- <target name="build" depends="set_rp,set_gcc_path,set_platform,compile_runtime">
-
- <!-- compile and link RuntimeTest -->
- <mkdir dir="bin/test"/>
- <exec dir="bin/test" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt">
- <arg value="-I../../src/"/>
- <arg value="-I../../src/runtime/"/>
- <arg value="-I${c-runtime.path}/src/common"/>
- <arg value="-I${c-runtime.path}/src/config"/>
- <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/>
- <arg value="-c"/>
- <arg value="-g3"/>
- <arg value="-O0"/>
- <arg value="-Wall"/>
- <!--<arg value="-ansi"/>-->
- <arg value="../../src/RunAllTestcases.c"/>
- <arg value="../../src/runtime/RunCRuntimeTestcases.c"/>
- <arg value="../../src/runtime/TestEtMemory.c"/>
- <arg value="../../src/runtime/TestEtMessage.c"/>
- <arg value="../../src/runtime/TestEtMessageQueue.c"/>
- <arg value="../../src/runtime/TestEtMessageService.c"/>
- <arg value="../../src/runtime/TestEtQueue.c"/>
- <arg value="../../src/runtime/TestEtTimer.c"/>
- <arg value="../../src/runtime/TestEtUnit.c"/>
- <arg value="../../src/runtime/helpers/TestEtTimeHelpers.c"/>
- </exec>
- <exec dir="bin/test" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true">
- <arg value="-L${c-runtime.path}/bin"/>
- <arg value="-oRuntimeTest.exe"/>
- <arg value="RunAllTestcases.o"/>
- <arg value="RunCRuntimeTestcases.o"/>
- <arg value="TestEtMemory.o"/>
- <arg value="TestEtMessage.o"/>
- <arg value="TestEtMessageQueue.o"/>
- <arg value="TestEtMessageService.o"/>
- <arg value="TestEtQueue.o"/>
- <arg value="TestEtTimer.o"/>
- <arg value="TestEtUnit.o"/>
- <arg value="TestEtTimeHelpers.o"/>
-
- <!-- library has to be in the last position -->
- <arg value="-lorg.eclipse.etrice.runtime.c"/>
- <arg value="-lpthread"/>
- <arg value="-lrt"/>
- </exec>
- </target>
-
- <!--
- run: runs all executables
- -->
- <target name="run" depends="build">
- <mkdir dir="tmp/testlog"/>
- <echo>start RuntimeTest</echo>
- <exec dir="./" resolveexecutable="true" executable="./bin/test/RuntimeTest.exe" output="${output}/run.txt" />
- <echo>end RuntimeTest</echo>
- </target>
-
- <!--
- convert: converts etu- into xunit xml-format
- -->
- <target name="convert" depends="run,set_tp">
- <path id="clspath">
- <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/>
- <fileset dir="${target.platform}/plugins/">
- <include name="org.eclipse.core.runtime_3.9*.jar" />
- <include name="org.eclipse.emf.ecore_2.9*.jar" />
- <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" />
- <include name="org.eclipse.emf.common_2.9*.jar" />
- </fileset>
- </path>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.runtime.c.tests.TestEtUnitSpecial"/>
- <arg value="./tmp/testlog/TestEtUnitSpecial.etu"/>
- <classpath refid="clspath"/>
- </java>
-
- <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true">
- <arg value="-suite"/>
- <arg value="org.eclipse.etrice.runtime.c.tests.TestCRuntime"/>
- <arg value="./tmp/testlog/TestCRuntime.etu"/>
- <classpath refid="clspath"/>
- </java>
- </target>
-
- <!--
- copy_results: copies the *.xml results to their final destination
- -->
- <target name="copy_results" depends="set_tr">
- <move file="./tmp/testlog/TestEtUnitSpecial.xml" tofile="./tmp/testlog/CTestEtUnitSpecial.xml"/>
- <copy todir="${test.results}" >
- <fileset dir="./tmp/testlog">
- <include name="*.xml"/>
- </fileset>
- </copy>
- </target>
-
-</project>
+<?xml version="1.0"?> +<!-- + Ant makefile for building and running of tests. + This includes conversion of the etunit + results into xunit xml. + + To work locally you should define in your environment + ETRICE_TARGET_PLATFORM=path to the eclipse folder of your Juno installation + ETRICE_C_RUNTIME=path to the org.eclipse.etrice.runtime.c folder (relative path doesn't work) + ETRICE_GCC_PATH=folder where gcc resides + + @author Henrik Rentz-Reichert +--> +<project name="project" default="all"> + + <property name="runtime.path" value="../../runtime/org.eclipse.etrice.runtime.c"/> + <property name="bin.path" value="./bin"/> + <property name="xml.output" value="./tmp"/> + <property name="output" value="./output"/> + <property environment="env"/> + + + <!-- + all: compiles, runs, converts and copies the results + --> + <target name="all" depends="convert,copy_results"> + <echo>done with org.eclipse.etrice.runtime.c.tests</echo> + </target> + + <!-- + set_tp: get the target.platform property from the environment var ETRICE_TARGET_PLATFORM if not set already + --> + <target name="set_tp" unless="target.platform"> + <echo>using local target platform</echo> + <property name="target.platform" value="${env.ETRICE_TARGET_PLATFORM}"/> + </target> + + <!-- + set_tr: sets the test.result property if not set already + --> + <target name="set_tr" unless="test.results"> + <echo>using local test result folder</echo> + <property name="test.results" value="./results"/> + </target> + + <!-- + set_platform: sets the runtime.platform property if not set already + --> + <target name="set_platform" unless="runtime.platform"> + <echo>using MinGW runtime platform</echo> + <!-- + <property name="runtime.platform" value="MT_WIN_MinGW"/> + --> + <property name="runtime.platform" value="MT_POSIX_GENERIC_GCC"/> + </target> + + <!-- + set_rp: sets the runtime.path from the ETRICE_C_RUNTIME environment variable property if not set already + --> + <target name="set_rp" unless="c-runtime.path"> + <echo>using local runtime folder</echo> + <property name="c-runtime.path" value="${env.ETRICE_C_RUNTIME}"/> + </target> + + <!-- + set_gcc_path: sets the gcc.path property from the ETRICE_GCC_PATH environment variable property if not set already + --> + <target name="set_gcc_path" unless="gcc.path"> + <echo>using gcc from path</echo> + <property name="gcc.path" value="${env.ETRICE_GCC_PATH}"/> + </target> + + <!-- + clean: deletes all folders created by this script + --> + <target name="clean" depends="set_tr,set_rp"> + <delete dir="${bin.path}"/> + <delete dir="${c-runtime.path}/bin"/> + <delete dir="${output}"/> + <delete dir="src-gen"/> + <delete dir="tmp"/> + </target> + + <!-- + compile_runtime: compiles the C runtime library + --> + <target name="compile_runtime" depends="clean,set_rp,set_gcc_path"> + <mkdir dir="${c-runtime.path}/bin"/> + <mkdir dir="${output}"/> + <exec dir="${c-runtime.path}/bin" executable="${gcc.path}/gcc" failonerror="true" output="${output}/compile_runtime.txt"> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../src/common/debugging/etMSCLogger.c"/> + <arg value="../src/common/etUnit/etUnit.c"/> + <arg value="../src/common/base/etMemory_FreeList.c"/> + <arg value="../src/common/base/etMemory_FixedSize.c"/> + <arg value="../src/common/base/etQueue.c"/> + <arg value="../src/common/messaging/etMessage.c"/> + <arg value="../src/common/messaging/etMessageQueue.c"/> + <arg value="../src/common/messaging/etMessageService.c"/> + <arg value="../src/common/messaging/etSystemProtocol.c"/> + <arg value="../src/common/helpers/etTimeHelpers.c"/> + <arg value="../src/common/runtime/etRuntime.c"/> + <arg value="../src/common/modelbase/etActor.c"/> + <arg value="../src/common/modelbase/etPort.c"/> + <arg value="../src/platforms/${runtime.platform}/etLogger.c"/> + <arg value="../src/platforms/${runtime.platform}/etMutex.c"/> + <arg value="../src/platforms/${runtime.platform}/etPlatformLifecycle.c"/> + <arg value="../src/platforms/${runtime.platform}/etSema.c"/> + <arg value="../src/platforms/${runtime.platform}/etThread.c"/> + <arg value="../src/platforms/${runtime.platform}/etTime.c"/> + <arg value="../src/platforms/${runtime.platform}/etTimer.c"/> + </exec> + <exec dir="${c-runtime.path}/bin" executable="ar" failonerror="true" output="${output}/compile_runtime.txt" append="true"> + <arg value="-r"/> + <arg value="liborg.eclipse.etrice.runtime.c.a"/> + <arg value="etActor.o"/> + <arg value="etLogger.o"/> + <arg value="etMessage.o"/> + <arg value="etMessageQueue.o"/> + <arg value="etMessageService.o"/> + <arg value="etSystemProtocol.o"/> + <arg value="etTimeHelpers.o"/> + <arg value="etRuntime.o"/> + <arg value="etMSCLogger.o"/> + <arg value="etMutex.o"/> + <arg value="etPlatformLifecycle.o"/> + <arg value="etPort.o"/> + <arg value="etSema.o"/> + <arg value="etThread.o"/> + <arg value="etTime.o"/> + <arg value="etTimer.o"/> + <arg value="etUnit.o"/> + <arg value="etMemory_FreeList.o"/> + <arg value="etMemory_FixedSize.o"/> + <arg value="etQueue.o"/> + </exec> + </target> + + <!-- + build: compiles and links the generated C sources + --> + <target name="build" depends="set_rp,set_gcc_path,set_platform,compile_runtime"> + + <!-- compile and link RuntimeTest --> + <mkdir dir="bin/test"/> + <exec dir="bin/test" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt"> + <arg value="-I../../src/"/> + <arg value="-I../../src/runtime/"/> + <arg value="-I${c-runtime.path}/src/common"/> + <arg value="-I${c-runtime.path}/src/config"/> + <arg value="-I${c-runtime.path}/src/platforms/${runtime.platform}"/> + <arg value="-c"/> + <arg value="-g3"/> + <arg value="-O0"/> + <arg value="-Wall"/> + <!--<arg value="-ansi"/>--> + <arg value="../../src/RunAllTestcases.c"/> + <arg value="../../src/runtime/RunCRuntimeTestcases.c"/> + <arg value="../../src/runtime/TestEtMemory.c"/> + <arg value="../../src/runtime/TestEtMessage.c"/> + <arg value="../../src/runtime/TestEtMessageQueue.c"/> + <arg value="../../src/runtime/TestEtMessageService.c"/> + <arg value="../../src/runtime/TestEtQueue.c"/> + <arg value="../../src/runtime/TestEtTimer.c"/> + <arg value="../../src/runtime/TestEtUnit.c"/> + <arg value="../../src/runtime/helpers/TestEtTimeHelpers.c"/> + </exec> + <exec dir="bin/test" executable="${gcc.path}/gcc" failonerror="true" output="${output}/build.txt" append="true"> + <arg value="-L${c-runtime.path}/bin"/> + <arg value="-oRuntimeTest.exe"/> + <arg value="RunAllTestcases.o"/> + <arg value="RunCRuntimeTestcases.o"/> + <arg value="TestEtMemory.o"/> + <arg value="TestEtMessage.o"/> + <arg value="TestEtMessageQueue.o"/> + <arg value="TestEtMessageService.o"/> + <arg value="TestEtQueue.o"/> + <arg value="TestEtTimer.o"/> + <arg value="TestEtUnit.o"/> + <arg value="TestEtTimeHelpers.o"/> + + <!-- library has to be in the last position --> + <arg value="-lorg.eclipse.etrice.runtime.c"/> + <arg value="-lpthread"/> + <arg value="-lrt"/> + </exec> + </target> + + <!-- + run: runs all executables + --> + <target name="run" depends="build"> + <mkdir dir="tmp/testlog"/> + <echo>start RuntimeTest</echo> + <exec dir="./" resolveexecutable="true" executable="./bin/test/RuntimeTest.exe" output="${output}/run.txt" /> + <echo>end RuntimeTest</echo> + </target> + + <!-- + convert: converts etu- into xunit xml-format + --> + <target name="convert" depends="run,set_tp"> + <path id="clspath"> + <pathelement location="../../plugins/org.eclipse.etrice.etunit.converter/bin"/> + <fileset dir="${target.platform}/plugins/"> + <include name="org.eclipse.core.runtime_3.9*.jar" /> + <include name="org.eclipse.emf.ecore_2.9*.jar" /> + <include name="org.eclipse.emf.ecore.xmi_2.9*.jar" /> + <include name="org.eclipse.emf.common_2.9*.jar" /> + </fileset> + </path> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.runtime.c.tests.TestEtUnitSpecial"/> + <arg value="./tmp/testlog/TestEtUnitSpecial.etu"/> + <classpath refid="clspath"/> + </java> + + <java output="${output}/convert.txt" append="true" classname="org.eclipse.etrice.etunit.converter.EtUnitReportConverter" fork="true" failonerror="true"> + <arg value="-suite"/> + <arg value="org.eclipse.etrice.runtime.c.tests.TestCRuntime"/> + <arg value="./tmp/testlog/TestCRuntime.etu"/> + <classpath refid="clspath"/> + </java> + </target> + + <!-- + copy_results: copies the *.xml results to their final destination + --> + <target name="copy_results" depends="set_tr"> + <move file="./tmp/testlog/TestEtUnitSpecial.xml" tofile="./tmp/testlog/CTestEtUnitSpecial.xml"/> + <copy todir="${test.results}" > + <fileset dir="./tmp/testlog"> + <include name="*.xml"/> + </fileset> + </copy> + </target> + +</project> diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/RunCRuntimeTestcases.c b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/RunCRuntimeTestcases.c index fb121685a..c34509180 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/RunCRuntimeTestcases.c +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/RunCRuntimeTestcases.c @@ -1,61 +1,61 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz (initial contribution)
- *
- *******************************************************************************/
-
-
-/*
- * RunRuntimeTestcases.c
- *
- * Created on: 12.01.2012
- * Author: tschuetz
- */
-
-
-#include "RunCRuntimeTestcases.h"
-
-#include "TestEtMessage.h"
-#include "TestEtMessageQueue.h"
-#include "TestEtMessageService.h"
-#include "TestEtUnit.h"
-#include "TestEtMemory.h"
-#include "TestEtQueue.h"
-#include "TestEtTimer.h"
-#include "helpers/TestEtTimeHelpers.h"
-
-#include "etUnit/etUnit.h"
-#include "debugging/etMSCLogger.h"
-
-
-void RunCRuntimeTestcases(void){
- etInt16 id;
- etMSCLogger_open("tmp/testlog", "test.log");
- etUnit_open("tmp/testlog","TestCRuntime");
-
- TestEtQueue_runSuite();
- TestEtMemory_runSuite();
- TestEtMessage_runSuite();
- TestEtMessageQueue_runSuite();
- TestEtMessageService_runSuite();
- TestEtUnit_runSuite();
- TestEtTimer_runSuite();
- TestEtTimeHelpers_runSuite();
-
- etUnit_close();
-
- /* special situation for testing openAll and closeAll of etUnit
- * this has to be done outside of etUnit_open and etUnit_close */
- id = etUnit_openAll("tmp/testlog","TestEtUnitSpecial", "etUnit", "openAll and closeAll");
- EXPECT_TRUE(id, "Open and Close", TRUE);
- etUnit_closeAll(id);
-
- etMSCLogger_close();
-}
-
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz (initial contribution) + * + *******************************************************************************/ + + +/* + * RunRuntimeTestcases.c + * + * Created on: 12.01.2012 + * Author: tschuetz + */ + + +#include "RunCRuntimeTestcases.h" + +#include "TestEtMessage.h" +#include "TestEtMessageQueue.h" +#include "TestEtMessageService.h" +#include "TestEtUnit.h" +#include "TestEtMemory.h" +#include "TestEtQueue.h" +#include "TestEtTimer.h" +#include "helpers/TestEtTimeHelpers.h" + +#include "etUnit/etUnit.h" +#include "debugging/etMSCLogger.h" + + +void RunCRuntimeTestcases(void){ + etInt16 id; + etMSCLogger_open("tmp/testlog", "test.log"); + etUnit_open("tmp/testlog","TestCRuntime"); + + TestEtQueue_runSuite(); + TestEtMemory_runSuite(); + TestEtMessage_runSuite(); + TestEtMessageQueue_runSuite(); + TestEtMessageService_runSuite(); + TestEtUnit_runSuite(); + TestEtTimer_runSuite(); + TestEtTimeHelpers_runSuite(); + + etUnit_close(); + + /* special situation for testing openAll and closeAll of etUnit + * this has to be done outside of etUnit_open and etUnit_close */ + id = etUnit_openAll("tmp/testlog","TestEtUnitSpecial", "etUnit", "openAll and closeAll"); + EXPECT_TRUE(id, "Open and Close", TRUE); + etUnit_closeAll(id); + + etMSCLogger_close(); +} + diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.c b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.c index 4e05faa0d..aec8f355b 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.c +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.c @@ -1,150 +1,150 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-#include "TestEtMemory.h"
-
-#include <stddef.h>
-#include <string.h>
-#include "etUnit/etUnit.h"
-#include "base/etMemory_FixedSize.h"
-#include "base/etMemory_FreeList.h"
-
-#define BUF_SIZE (256*1024)
-#define BLOCK_SIZE 128
-#define TEST_BLOCKS 1024
-#define TEST_BLOCK_SIZE 64
-
-#define NOBJ 32
-#define NSLOTS 8
-#define NSIZES 7
-#define SIZE0 64
-#define SIZE1 16
-#define SIZE2 32
-#define SIZE3 48
-#define SIZE4 (16*8)
-#define SIZE5 112
-#define SIZE6 96
-
-
-static void TestEtMemory_testFixedSize(etInt16 id) {
- etUInt8 buffer[BUF_SIZE];
- etUInt8* objects[TEST_BLOCKS];
- int i;
- etMemory* mem = etMemory_FixedSize_init(buffer, BUF_SIZE, BLOCK_SIZE);
- EXPECT_TRUE(id, "mem!=NULL", mem!=NULL);
-
- for (i=0; i<TEST_BLOCKS; ++i) {
- objects[i] = mem->alloc(mem, TEST_BLOCK_SIZE);
- if (objects[i]==NULL)
- EXPECT_TRUE(id, "objects[i]==NULL", FALSE);
-
- memset(objects[i], i%4, TEST_BLOCK_SIZE);
- }
- for (i=0; i<TEST_BLOCKS/2; ++i) {
- mem->free(mem, objects[i*2], TEST_BLOCK_SIZE);
- }
- for (i=0; i<TEST_BLOCKS/2; ++i) {
- objects[i*2] = mem->alloc(mem, TEST_BLOCK_SIZE);
- if (objects[i*2]==NULL)
- EXPECT_TRUE(id, "objects[i*2]==NULL", FALSE);
- }
-}
-
-static void local_alloc(etInt16 id, etMemory* mem, etUInt8* objects[NSIZES][NOBJ], etUInt8 sizes[NSIZES]) {
- int i, kind;
-
- for (kind=0; kind<NSIZES; ++kind) {
- for (i=0; i<NOBJ; ++i) {
- objects[kind][i] = mem->alloc(mem, sizes[kind]);
- if (objects[kind][i]==NULL)
- EXPECT_TRUE(id, "objects[kind][i]==NULL", FALSE);
- }
- }
-}
-
-
-static void local_free(etInt16 id, etMemory* mem, etUInt8* objects[NSIZES][NOBJ], etUInt8 sizes[NSIZES]) {
- int i, kind;
-
- for (kind=0; kind<NSIZES; ++kind) {
- for (i=0; i<NOBJ; ++i) {
- mem->free(mem, objects[kind][i], sizes[kind]);
- }
- }
-}
-
-static void TestEtMemory_testFreeList(etInt16 id) {
- static etUInt8 buffer[BUF_SIZE];
- static etUInt8 sizes[NSIZES] = { SIZE0, SIZE1, SIZE2, SIZE3, SIZE4, SIZE5, SIZE6 };
- etUInt8* objects[NSIZES][NOBJ];
- etMemory* mem = etMemory_FreeList_init(buffer, BUF_SIZE, NSLOTS);
- EXPECT_TRUE(id, "mem!=NULL", mem!=NULL);
-
- local_alloc(id, mem, objects, sizes);
- local_free(id, mem, objects, sizes);
-
- /* causes problems (due to different alignment?)
- Ubuntu 32 bit: 246212
- Hudson: 246152
- */
- if (246212==etMemory_FreeList_freeHeapMem(mem)) {
-
- EXPECT_EQUAL_UINT32(id, "free heap memory", 246212, etMemory_FreeList_freeHeapMem(mem));
-
- EXPECT_EQUAL_UINT16(id, "free slots", NSLOTS-NSIZES, etMemory_FreeList_freeSlots(mem));
-
- EXPECT_EQUAL_UINT16(id, "slot 0 size", SIZE0, etMemory_FreeList_sizeObjects(mem, 0));
- EXPECT_EQUAL_UINT16(id, "slot 0 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 0));
- EXPECT_EQUAL_UINT16(id, "slot 1 size", SIZE2, etMemory_FreeList_sizeObjects(mem, 1));
- EXPECT_EQUAL_UINT16(id, "slot 1 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 1));
- EXPECT_EQUAL_UINT16(id, "slot 2 size", SIZE4, etMemory_FreeList_sizeObjects(mem, 2));
- EXPECT_EQUAL_UINT16(id, "slot 2 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 2));
- EXPECT_EQUAL_UINT16(id, "slot 3 size", SIZE6, etMemory_FreeList_sizeObjects(mem, 3));
- EXPECT_EQUAL_UINT16(id, "slot 3 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 3));
- EXPECT_EQUAL_UINT16(id, "slot 4 size", SIZE1, etMemory_FreeList_sizeObjects(mem, 4));
- EXPECT_EQUAL_UINT16(id, "slot 4 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 4));
- EXPECT_EQUAL_UINT16(id, "slot 5 size", SIZE3, etMemory_FreeList_sizeObjects(mem, 5));
- EXPECT_EQUAL_UINT16(id, "slot 5 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 5));
- EXPECT_EQUAL_UINT16(id, "slot 6 size", SIZE5, etMemory_FreeList_sizeObjects(mem, 6));
- EXPECT_EQUAL_UINT16(id, "slot 6 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 6));
-
- local_alloc(id, mem, objects, sizes);
- local_free(id, mem, objects, sizes);
-
- EXPECT_EQUAL_UINT32(id, "free heap memory", 246212, etMemory_FreeList_freeHeapMem(mem));
-
- EXPECT_EQUAL_UINT16(id, "free slots", NSLOTS-NSIZES, etMemory_FreeList_freeSlots(mem));
-
- EXPECT_EQUAL_UINT16(id, "slot 0 size", SIZE0, etMemory_FreeList_sizeObjects(mem, 0));
- EXPECT_EQUAL_UINT16(id, "slot 0 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 0));
- EXPECT_EQUAL_UINT16(id, "slot 1 size", SIZE2, etMemory_FreeList_sizeObjects(mem, 1));
- EXPECT_EQUAL_UINT16(id, "slot 1 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 1));
- EXPECT_EQUAL_UINT16(id, "slot 2 size", SIZE4, etMemory_FreeList_sizeObjects(mem, 2));
- EXPECT_EQUAL_UINT16(id, "slot 2 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 2));
- EXPECT_EQUAL_UINT16(id, "slot 3 size", SIZE6, etMemory_FreeList_sizeObjects(mem, 3));
- EXPECT_EQUAL_UINT16(id, "slot 3 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 3));
- EXPECT_EQUAL_UINT16(id, "slot 4 size", SIZE1, etMemory_FreeList_sizeObjects(mem, 4));
- EXPECT_EQUAL_UINT16(id, "slot 4 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 4));
- EXPECT_EQUAL_UINT16(id, "slot 5 size", SIZE3, etMemory_FreeList_sizeObjects(mem, 5));
- EXPECT_EQUAL_UINT16(id, "slot 5 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 5));
- EXPECT_EQUAL_UINT16(id, "slot 6 size", SIZE5, etMemory_FreeList_sizeObjects(mem, 6));
- EXPECT_EQUAL_UINT16(id, "slot 6 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 6));
- }
-}
-
-void TestEtMemory_runSuite(void){
- etUnit_openTestSuite("TestMemory");
- ADD_TESTCASE(TestEtMemory_testFixedSize);
- ADD_TESTCASE(TestEtMemory_testFreeList);
- etUnit_closeTestSuite();
-}
-
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +#include "TestEtMemory.h" + +#include <stddef.h> +#include <string.h> +#include "etUnit/etUnit.h" +#include "base/etMemory_FixedSize.h" +#include "base/etMemory_FreeList.h" + +#define BUF_SIZE (256*1024) +#define BLOCK_SIZE 128 +#define TEST_BLOCKS 1024 +#define TEST_BLOCK_SIZE 64 + +#define NOBJ 32 +#define NSLOTS 8 +#define NSIZES 7 +#define SIZE0 64 +#define SIZE1 16 +#define SIZE2 32 +#define SIZE3 48 +#define SIZE4 (16*8) +#define SIZE5 112 +#define SIZE6 96 + + +static void TestEtMemory_testFixedSize(etInt16 id) { + etUInt8 buffer[BUF_SIZE]; + etUInt8* objects[TEST_BLOCKS]; + int i; + etMemory* mem = etMemory_FixedSize_init(buffer, BUF_SIZE, BLOCK_SIZE); + EXPECT_TRUE(id, "mem!=NULL", mem!=NULL); + + for (i=0; i<TEST_BLOCKS; ++i) { + objects[i] = mem->alloc(mem, TEST_BLOCK_SIZE); + if (objects[i]==NULL) + EXPECT_TRUE(id, "objects[i]==NULL", FALSE); + + memset(objects[i], i%4, TEST_BLOCK_SIZE); + } + for (i=0; i<TEST_BLOCKS/2; ++i) { + mem->free(mem, objects[i*2], TEST_BLOCK_SIZE); + } + for (i=0; i<TEST_BLOCKS/2; ++i) { + objects[i*2] = mem->alloc(mem, TEST_BLOCK_SIZE); + if (objects[i*2]==NULL) + EXPECT_TRUE(id, "objects[i*2]==NULL", FALSE); + } +} + +static void local_alloc(etInt16 id, etMemory* mem, etUInt8* objects[NSIZES][NOBJ], etUInt8 sizes[NSIZES]) { + int i, kind; + + for (kind=0; kind<NSIZES; ++kind) { + for (i=0; i<NOBJ; ++i) { + objects[kind][i] = mem->alloc(mem, sizes[kind]); + if (objects[kind][i]==NULL) + EXPECT_TRUE(id, "objects[kind][i]==NULL", FALSE); + } + } +} + + +static void local_free(etInt16 id, etMemory* mem, etUInt8* objects[NSIZES][NOBJ], etUInt8 sizes[NSIZES]) { + int i, kind; + + for (kind=0; kind<NSIZES; ++kind) { + for (i=0; i<NOBJ; ++i) { + mem->free(mem, objects[kind][i], sizes[kind]); + } + } +} + +static void TestEtMemory_testFreeList(etInt16 id) { + static etUInt8 buffer[BUF_SIZE]; + static etUInt8 sizes[NSIZES] = { SIZE0, SIZE1, SIZE2, SIZE3, SIZE4, SIZE5, SIZE6 }; + etUInt8* objects[NSIZES][NOBJ]; + etMemory* mem = etMemory_FreeList_init(buffer, BUF_SIZE, NSLOTS); + EXPECT_TRUE(id, "mem!=NULL", mem!=NULL); + + local_alloc(id, mem, objects, sizes); + local_free(id, mem, objects, sizes); + + /* causes problems (due to different alignment?) + Ubuntu 32 bit: 246212 + Hudson: 246152 + */ + if (246212==etMemory_FreeList_freeHeapMem(mem)) { + + EXPECT_EQUAL_UINT32(id, "free heap memory", 246212, etMemory_FreeList_freeHeapMem(mem)); + + EXPECT_EQUAL_UINT16(id, "free slots", NSLOTS-NSIZES, etMemory_FreeList_freeSlots(mem)); + + EXPECT_EQUAL_UINT16(id, "slot 0 size", SIZE0, etMemory_FreeList_sizeObjects(mem, 0)); + EXPECT_EQUAL_UINT16(id, "slot 0 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 0)); + EXPECT_EQUAL_UINT16(id, "slot 1 size", SIZE2, etMemory_FreeList_sizeObjects(mem, 1)); + EXPECT_EQUAL_UINT16(id, "slot 1 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 1)); + EXPECT_EQUAL_UINT16(id, "slot 2 size", SIZE4, etMemory_FreeList_sizeObjects(mem, 2)); + EXPECT_EQUAL_UINT16(id, "slot 2 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 2)); + EXPECT_EQUAL_UINT16(id, "slot 3 size", SIZE6, etMemory_FreeList_sizeObjects(mem, 3)); + EXPECT_EQUAL_UINT16(id, "slot 3 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 3)); + EXPECT_EQUAL_UINT16(id, "slot 4 size", SIZE1, etMemory_FreeList_sizeObjects(mem, 4)); + EXPECT_EQUAL_UINT16(id, "slot 4 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 4)); + EXPECT_EQUAL_UINT16(id, "slot 5 size", SIZE3, etMemory_FreeList_sizeObjects(mem, 5)); + EXPECT_EQUAL_UINT16(id, "slot 5 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 5)); + EXPECT_EQUAL_UINT16(id, "slot 6 size", SIZE5, etMemory_FreeList_sizeObjects(mem, 6)); + EXPECT_EQUAL_UINT16(id, "slot 6 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 6)); + + local_alloc(id, mem, objects, sizes); + local_free(id, mem, objects, sizes); + + EXPECT_EQUAL_UINT32(id, "free heap memory", 246212, etMemory_FreeList_freeHeapMem(mem)); + + EXPECT_EQUAL_UINT16(id, "free slots", NSLOTS-NSIZES, etMemory_FreeList_freeSlots(mem)); + + EXPECT_EQUAL_UINT16(id, "slot 0 size", SIZE0, etMemory_FreeList_sizeObjects(mem, 0)); + EXPECT_EQUAL_UINT16(id, "slot 0 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 0)); + EXPECT_EQUAL_UINT16(id, "slot 1 size", SIZE2, etMemory_FreeList_sizeObjects(mem, 1)); + EXPECT_EQUAL_UINT16(id, "slot 1 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 1)); + EXPECT_EQUAL_UINT16(id, "slot 2 size", SIZE4, etMemory_FreeList_sizeObjects(mem, 2)); + EXPECT_EQUAL_UINT16(id, "slot 2 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 2)); + EXPECT_EQUAL_UINT16(id, "slot 3 size", SIZE6, etMemory_FreeList_sizeObjects(mem, 3)); + EXPECT_EQUAL_UINT16(id, "slot 3 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 3)); + EXPECT_EQUAL_UINT16(id, "slot 4 size", SIZE1, etMemory_FreeList_sizeObjects(mem, 4)); + EXPECT_EQUAL_UINT16(id, "slot 4 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 4)); + EXPECT_EQUAL_UINT16(id, "slot 5 size", SIZE3, etMemory_FreeList_sizeObjects(mem, 5)); + EXPECT_EQUAL_UINT16(id, "slot 5 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 5)); + EXPECT_EQUAL_UINT16(id, "slot 6 size", SIZE5, etMemory_FreeList_sizeObjects(mem, 6)); + EXPECT_EQUAL_UINT16(id, "slot 6 nobj", NOBJ, etMemory_FreeList_nObjects(mem, 6)); + } +} + +void TestEtMemory_runSuite(void){ + etUnit_openTestSuite("TestMemory"); + ADD_TESTCASE(TestEtMemory_testFixedSize); + ADD_TESTCASE(TestEtMemory_testFreeList); + etUnit_closeTestSuite(); +} + diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.h b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.h index 107c6a504..ccf9a108c 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.h +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMemory.h @@ -1,21 +1,21 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-#ifndef _TEST_MEMORY_H_
-#define _TEST_MEMORY_H_
-
-#include "base/etMemory.h"
-
-void TestEtMemory_runSuite(void);
-
-
-#endif /* _TEST_MEMORY_H_ */
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +#ifndef _TEST_MEMORY_H_ +#define _TEST_MEMORY_H_ + +#include "base/etMemory.h" + +void TestEtMemory_runSuite(void); + + +#endif /* _TEST_MEMORY_H_ */ diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMessageService.c b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMessageService.c index d4b9a3c01..bbb3cc2b4 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMessageService.c +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtMessageService.c @@ -1,302 +1,302 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz (initial contribution)
- *
- *******************************************************************************/
-
-#include "TestEtMessageService.h"
-#include "etUnit/etUnit.h"
-#include "messaging/etMessageService.h"
-
-
-/* mocking for MessageDispatcher */
-
-static etInt16 receivedEventIDs[2] = {0,0};
-static etInt16 receivedEventIDCounter = 0;
-
-void MessageReceiver1(const etMessage* msg){
- receivedEventIDs[receivedEventIDCounter] = msg->evtID;
- receivedEventIDCounter++;
-}
-
-void MessageReceiver2(const etMessage* msg){
- receivedEventIDs[receivedEventIDCounter] = msg->evtID;
- receivedEventIDCounter++;
-}
-
-/* dummy message dispatcher */
-etBool DummyMessageDispatcher(const etMessage* msg){
- switch(msg->address){
- case 11:
- MessageReceiver1(msg);
- break;
- case 22:
- MessageReceiver2(msg);
- break;
- default:
- break;
- }
- return TRUE;
-}
-
-void TestEtMessageService_init(etInt16 id){
-
- etMessageService msgService;
- uint16 max = 6;
- uint16 blockSize = 32;
- etTime interval;
-
- uint8 msgBuffer[max*blockSize];
-
- etMessageService_init(
- &msgService,
- msgBuffer,
- max,
- blockSize,
- 1024,
- 0,
- interval,
- DummyMessageDispatcher,
- EXECMODE_BLOCKED);
-
- EXPECT_EQUAL_PTR(id, "msgService.messagePool.first", msgBuffer, msgService.messagePool.first);
- EXPECT_EQUAL_PTR(id, "msgService.messagePool in between", &msgBuffer[3*blockSize], msgService.messagePool.first->next->next->next);
- EXPECT_EQUAL_PTR(id, "msgService.messagePool.last(1)", &msgBuffer[5*blockSize], msgService.messagePool.first->next->next->next->next->next);
- EXPECT_EQUAL_PTR(id, "msgService.messagePool.last(2)", &msgBuffer[5*blockSize], msgService.messagePool.last);
- EXPECT_EQUAL_PTR(id, "msgService.messagePool.last.next", 0, msgService.messagePool.last->next);
-
- etMessageService_destroy(&msgService);
-}
-
-void TestEtMessageService_GetPushPopReturn(etInt16 id){
-
- etMessageService msgService;
- uint16 max = 6;
- uint16 blockSize = 32;
- uint8 msgBuffer[max*blockSize];
- etTime interval;
-
- etMessageService_init(
- &msgService,
- msgBuffer,
- max,
- blockSize,
- 1024,
- 0,
- interval,
- DummyMessageDispatcher,
- EXECMODE_BLOCKED);
-
- // get messages from pool
- etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
-
- EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 4, msgService.messagePool.size);
-
- // define content
- msg1->address = 11;
- msg1->evtID = 111;
- msg2->address = 22;
- msg2->evtID = 222;
-
- // push messages to queue
- etMessageService_pushMessage(&msgService, msg2);
- etMessageService_pushMessage(&msgService, msg1);
-
- EXPECT_EQUAL_INT16(id, "msgService.messageQueue.size", 2, msgService.messageQueue.size);
-
- // pop messages from queue
- etMessage* rcvMsg1 = etMessageService_popMessage(&msgService);
- etMessage* rcvMsg2 = etMessageService_popMessage(&msgService);
-
- EXPECT_EQUAL_INT16(id, "msgService.messageQueue.size",0, msgService.messageQueue.size);
-
-
- EXPECT_EQUAL_INT16(id, "msgService.popMessage", 22, rcvMsg1->address);
- EXPECT_EQUAL_INT16(id, "msgService.popMessage", 222, rcvMsg1->evtID);
- EXPECT_EQUAL_INT16(id, "msgService.popMessage", 11, rcvMsg2->address);
- EXPECT_EQUAL_INT16(id, "msgService.popMessage", 111, rcvMsg2->evtID);
-
- etMessageService_returnMessageBuffer(&msgService, rcvMsg1);
- etMessageService_returnMessageBuffer(&msgService, rcvMsg2);
-
- EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 6, msgService.messagePool.size);
-
- etMessageService_destroy(&msgService);
-}
-
-void TestEtMessageService_GetReturn(etInt16 id){
-
- etMessageService msgService;
- uint16 max = 2;
- uint16 blockSize = 32;
- uint8 msgBuffer[max*blockSize];
- etTime interval;
-
- etMessageService_init(
- &msgService,
- msgBuffer,
- max,
- blockSize,
- 1024,
- 0,
- interval,
- DummyMessageDispatcher,
- EXECMODE_BLOCKED);
-
- // get one message too much from pool
- etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessage* msg3 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); /* this line triggers an error log */
- EXPECT_TRUE(id, "msgService getMessageBuffer", msg1!=NULL);
- EXPECT_TRUE(id, "msgService getMessageBuffer", msg2!=NULL);
- EXPECT_EQUAL_PTR(id, "msgService getMessageBuffer", msg3, NULL);
-
- // return messages
- etMessageService_returnMessageBuffer(&msgService, msg1);
- etMessageService_returnMessageBuffer(&msgService, msg2);
- EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 2, msgService.messagePool.size);
-
- // get message bigger than blocksize
- etMessage* msg4 = etMessageService_getMessageBuffer(&msgService, 33); /* this line triggers an error log */
- EXPECT_EQUAL_PTR(id, "msgService getMessageBuffer", msg4, NULL);
-
- etMessageService_destroy(&msgService);
-}
-
-#define TEST_EXECUTE__POOL_SIZE 6
-#define TEST_EXECUTE__BLOCK_SIZE 32
-
-void TestEtMessageService_execute(etInt16 id){
- /* msgService and buffer data have to be static because they are used in a separate thread */
- static etMessageService msgService;
- static uint8 msgBuffer[TEST_EXECUTE__POOL_SIZE*TEST_EXECUTE__BLOCK_SIZE];
- etTime interval;
-
- etMessageService_init(
- &msgService,
- msgBuffer,
- TEST_EXECUTE__POOL_SIZE,
- TEST_EXECUTE__BLOCK_SIZE,
- 1024,
- 0,
- interval,
- DummyMessageDispatcher,
- EXECMODE_BLOCKED);
-
- // get messages from pool
- etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
-
- // define content
- msg1->address = 11;
- msg1->evtID = 111;
- msg2->address = 22;
- msg2->evtID = 222;
-
- // push messages to queue
- etMessageService_pushMessage(&msgService, msg1);
- etMessageService_pushMessage(&msgService, msg2);
-
- etMessageService_start(&msgService);
- etThread_sleep(100); /* wait 100 ms for the delivery */
-
- EXPECT_EQUAL_INT16(id, "deliverAllMessages msg1", msg1->evtID, receivedEventIDs[0]);
- EXPECT_EQUAL_INT16(id, "deliverAllMessages msg2", msg2->evtID, receivedEventIDs[1]);
- EXPECT_EQUAL_INT16(id, "deliverAllMessages receivedEventIDCounter", 2, receivedEventIDCounter);
-
- etMessageService_stop(&msgService);
-
- etMessageService_destroy(&msgService);
-}
-
-void TestEtMessageService_getMessagePoolLowWaterMark(etInt16 id){
- etMessageService msgService;
- uint16 max = 6;
- uint16 blockSize = 32;
- uint8 msgBuffer[max*blockSize];
- etTime interval;
-
- etMessageService_init(
- &msgService,
- msgBuffer,
- max,
- blockSize,
- 1024,
- 0,
- interval,
- DummyMessageDispatcher,
- EXECMODE_BLOCKED);
-
- EXPECT_EQUAL_INT16(id, "inital low water mark", max, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
- // get messages from pool
- etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
-
- // define content
- msg1->address = 11;
- msg1->evtID = 111;
- msg2->address = 22;
- msg2->evtID = 222;
-
- // push messages to queue
- etMessageService_pushMessage(&msgService, msg2);
- etMessageService_pushMessage(&msgService, msg1);
-
- EXPECT_EQUAL_INT16(id, "low water mark 1", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
- // pop messages from queue
- etMessage* rcvMsg1 = etMessageService_popMessage(&msgService);
- etMessage* rcvMsg2 = etMessageService_popMessage(&msgService);
-
- etMessageService_returnMessageBuffer(&msgService, rcvMsg1);
- etMessageService_returnMessageBuffer(&msgService, rcvMsg2);
-
- EXPECT_EQUAL_INT16(id, "low water mark 2", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessageService_pushMessage(&msgService, msg2);
- etMessageService_pushMessage(&msgService, msg1);
-
- /*still the same*/
- EXPECT_EQUAL_INT16(id, "low water mark 3", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessageService_pushMessage(&msgService, msg2);
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessageService_pushMessage(&msgService, msg2);
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessageService_pushMessage(&msgService, msg2);
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- etMessageService_pushMessage(&msgService, msg2);
-
- /* no message left */
- EXPECT_EQUAL_INT16(id, "low water mark 4", 0, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
- msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage));
- EXPECT_EQUAL_PTR(id, "check message for NULL", NULL, msg1);
-
- /* still no message left */
- EXPECT_EQUAL_INT16(id, "low water mark 6", 0, etMessageService_getMessagePoolLowWaterMark(&msgService));
-
-
-}
-
-
-void TestEtMessageService_runSuite(void){
- etUnit_openTestSuite("TestEtMessageService");
- ADD_TESTCASE(TestEtMessageService_init);
- ADD_TESTCASE(TestEtMessageService_GetPushPopReturn);
- ADD_TESTCASE(TestEtMessageService_GetReturn);
- ADD_TESTCASE(TestEtMessageService_execute);
- ADD_TESTCASE(TestEtMessageService_getMessagePoolLowWaterMark)
- etUnit_closeTestSuite();
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz (initial contribution) + * + *******************************************************************************/ + +#include "TestEtMessageService.h" +#include "etUnit/etUnit.h" +#include "messaging/etMessageService.h" + + +/* mocking for MessageDispatcher */ + +static etInt16 receivedEventIDs[2] = {0,0}; +static etInt16 receivedEventIDCounter = 0; + +void MessageReceiver1(const etMessage* msg){ + receivedEventIDs[receivedEventIDCounter] = msg->evtID; + receivedEventIDCounter++; +} + +void MessageReceiver2(const etMessage* msg){ + receivedEventIDs[receivedEventIDCounter] = msg->evtID; + receivedEventIDCounter++; +} + +/* dummy message dispatcher */ +etBool DummyMessageDispatcher(const etMessage* msg){ + switch(msg->address){ + case 11: + MessageReceiver1(msg); + break; + case 22: + MessageReceiver2(msg); + break; + default: + break; + } + return TRUE; +} + +void TestEtMessageService_init(etInt16 id){ + + etMessageService msgService; + uint16 max = 6; + uint16 blockSize = 32; + etTime interval; + + uint8 msgBuffer[max*blockSize]; + + etMessageService_init( + &msgService, + msgBuffer, + max, + blockSize, + 1024, + 0, + interval, + DummyMessageDispatcher, + EXECMODE_BLOCKED); + + EXPECT_EQUAL_PTR(id, "msgService.messagePool.first", msgBuffer, msgService.messagePool.first); + EXPECT_EQUAL_PTR(id, "msgService.messagePool in between", &msgBuffer[3*blockSize], msgService.messagePool.first->next->next->next); + EXPECT_EQUAL_PTR(id, "msgService.messagePool.last(1)", &msgBuffer[5*blockSize], msgService.messagePool.first->next->next->next->next->next); + EXPECT_EQUAL_PTR(id, "msgService.messagePool.last(2)", &msgBuffer[5*blockSize], msgService.messagePool.last); + EXPECT_EQUAL_PTR(id, "msgService.messagePool.last.next", 0, msgService.messagePool.last->next); + + etMessageService_destroy(&msgService); +} + +void TestEtMessageService_GetPushPopReturn(etInt16 id){ + + etMessageService msgService; + uint16 max = 6; + uint16 blockSize = 32; + uint8 msgBuffer[max*blockSize]; + etTime interval; + + etMessageService_init( + &msgService, + msgBuffer, + max, + blockSize, + 1024, + 0, + interval, + DummyMessageDispatcher, + EXECMODE_BLOCKED); + + // get messages from pool + etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + + EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 4, msgService.messagePool.size); + + // define content + msg1->address = 11; + msg1->evtID = 111; + msg2->address = 22; + msg2->evtID = 222; + + // push messages to queue + etMessageService_pushMessage(&msgService, msg2); + etMessageService_pushMessage(&msgService, msg1); + + EXPECT_EQUAL_INT16(id, "msgService.messageQueue.size", 2, msgService.messageQueue.size); + + // pop messages from queue + etMessage* rcvMsg1 = etMessageService_popMessage(&msgService); + etMessage* rcvMsg2 = etMessageService_popMessage(&msgService); + + EXPECT_EQUAL_INT16(id, "msgService.messageQueue.size",0, msgService.messageQueue.size); + + + EXPECT_EQUAL_INT16(id, "msgService.popMessage", 22, rcvMsg1->address); + EXPECT_EQUAL_INT16(id, "msgService.popMessage", 222, rcvMsg1->evtID); + EXPECT_EQUAL_INT16(id, "msgService.popMessage", 11, rcvMsg2->address); + EXPECT_EQUAL_INT16(id, "msgService.popMessage", 111, rcvMsg2->evtID); + + etMessageService_returnMessageBuffer(&msgService, rcvMsg1); + etMessageService_returnMessageBuffer(&msgService, rcvMsg2); + + EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 6, msgService.messagePool.size); + + etMessageService_destroy(&msgService); +} + +void TestEtMessageService_GetReturn(etInt16 id){ + + etMessageService msgService; + uint16 max = 2; + uint16 blockSize = 32; + uint8 msgBuffer[max*blockSize]; + etTime interval; + + etMessageService_init( + &msgService, + msgBuffer, + max, + blockSize, + 1024, + 0, + interval, + DummyMessageDispatcher, + EXECMODE_BLOCKED); + + // get one message too much from pool + etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessage* msg3 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); /* this line triggers an error log */ + EXPECT_TRUE(id, "msgService getMessageBuffer", msg1!=NULL); + EXPECT_TRUE(id, "msgService getMessageBuffer", msg2!=NULL); + EXPECT_EQUAL_PTR(id, "msgService getMessageBuffer", msg3, NULL); + + // return messages + etMessageService_returnMessageBuffer(&msgService, msg1); + etMessageService_returnMessageBuffer(&msgService, msg2); + EXPECT_EQUAL_INT16(id, "msgService.messagePool.size", 2, msgService.messagePool.size); + + // get message bigger than blocksize + etMessage* msg4 = etMessageService_getMessageBuffer(&msgService, 33); /* this line triggers an error log */ + EXPECT_EQUAL_PTR(id, "msgService getMessageBuffer", msg4, NULL); + + etMessageService_destroy(&msgService); +} + +#define TEST_EXECUTE__POOL_SIZE 6 +#define TEST_EXECUTE__BLOCK_SIZE 32 + +void TestEtMessageService_execute(etInt16 id){ + /* msgService and buffer data have to be static because they are used in a separate thread */ + static etMessageService msgService; + static uint8 msgBuffer[TEST_EXECUTE__POOL_SIZE*TEST_EXECUTE__BLOCK_SIZE]; + etTime interval; + + etMessageService_init( + &msgService, + msgBuffer, + TEST_EXECUTE__POOL_SIZE, + TEST_EXECUTE__BLOCK_SIZE, + 1024, + 0, + interval, + DummyMessageDispatcher, + EXECMODE_BLOCKED); + + // get messages from pool + etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + + // define content + msg1->address = 11; + msg1->evtID = 111; + msg2->address = 22; + msg2->evtID = 222; + + // push messages to queue + etMessageService_pushMessage(&msgService, msg1); + etMessageService_pushMessage(&msgService, msg2); + + etMessageService_start(&msgService); + etThread_sleep(100); /* wait 100 ms for the delivery */ + + EXPECT_EQUAL_INT16(id, "deliverAllMessages msg1", msg1->evtID, receivedEventIDs[0]); + EXPECT_EQUAL_INT16(id, "deliverAllMessages msg2", msg2->evtID, receivedEventIDs[1]); + EXPECT_EQUAL_INT16(id, "deliverAllMessages receivedEventIDCounter", 2, receivedEventIDCounter); + + etMessageService_stop(&msgService); + + etMessageService_destroy(&msgService); +} + +void TestEtMessageService_getMessagePoolLowWaterMark(etInt16 id){ + etMessageService msgService; + uint16 max = 6; + uint16 blockSize = 32; + uint8 msgBuffer[max*blockSize]; + etTime interval; + + etMessageService_init( + &msgService, + msgBuffer, + max, + blockSize, + 1024, + 0, + interval, + DummyMessageDispatcher, + EXECMODE_BLOCKED); + + EXPECT_EQUAL_INT16(id, "inital low water mark", max, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + // get messages from pool + etMessage* msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessage* msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + + // define content + msg1->address = 11; + msg1->evtID = 111; + msg2->address = 22; + msg2->evtID = 222; + + // push messages to queue + etMessageService_pushMessage(&msgService, msg2); + etMessageService_pushMessage(&msgService, msg1); + + EXPECT_EQUAL_INT16(id, "low water mark 1", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + // pop messages from queue + etMessage* rcvMsg1 = etMessageService_popMessage(&msgService); + etMessage* rcvMsg2 = etMessageService_popMessage(&msgService); + + etMessageService_returnMessageBuffer(&msgService, rcvMsg1); + etMessageService_returnMessageBuffer(&msgService, rcvMsg2); + + EXPECT_EQUAL_INT16(id, "low water mark 2", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + msg2 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessageService_pushMessage(&msgService, msg2); + etMessageService_pushMessage(&msgService, msg1); + + /*still the same*/ + EXPECT_EQUAL_INT16(id, "low water mark 3", max-2, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessageService_pushMessage(&msgService, msg2); + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessageService_pushMessage(&msgService, msg2); + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessageService_pushMessage(&msgService, msg2); + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + etMessageService_pushMessage(&msgService, msg2); + + /* no message left */ + EXPECT_EQUAL_INT16(id, "low water mark 4", 0, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + msg1 = etMessageService_getMessageBuffer(&msgService, sizeof(etMessage)); + EXPECT_EQUAL_PTR(id, "check message for NULL", NULL, msg1); + + /* still no message left */ + EXPECT_EQUAL_INT16(id, "low water mark 6", 0, etMessageService_getMessagePoolLowWaterMark(&msgService)); + + +} + + +void TestEtMessageService_runSuite(void){ + etUnit_openTestSuite("TestEtMessageService"); + ADD_TESTCASE(TestEtMessageService_init); + ADD_TESTCASE(TestEtMessageService_GetPushPopReturn); + ADD_TESTCASE(TestEtMessageService_GetReturn); + ADD_TESTCASE(TestEtMessageService_execute); + ADD_TESTCASE(TestEtMessageService_getMessagePoolLowWaterMark) + etUnit_closeTestSuite(); +} diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.c b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.c index 8479ac93f..0eb3c4e57 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.c +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.c @@ -1,69 +1,69 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-#include "TestEtQueue.h"
-
-#include <stddef.h>
-#include "etUnit/etUnit.h"
-#include "base/etQueue.h"
-
-#define MAX 1000
-
-typedef struct etTestObject {
- etQueueObj base;
- etInt16 a;
- etInt16 b;
-} etTestObject;
-
-static void TestEtQueue_test(etInt16 id){
- etTestObject objects[MAX];
- int16 i;
-
- etQueue queue;
- etQueue_init(&queue);
-
- for(i=0; i<MAX; i++){
- objects[i].a = i;
- objects[i].b = i*2;
- }
-
- int j;
- for(j=0; j<3; j++){
- for (i=0; i<MAX; i++){
- etQueue_push(&queue, &(objects[i].base));
- }
- for (i=0; i<MAX; i++){
- etTestObject* obj = (etTestObject*) etQueue_pop(&queue);
- // EXPECTS are hidden to avoid too many testcases in log
- if (obj == NULL){
- EXPECT_FALSE(id, "obj == NULL", TRUE);
- break;
- }
- if (2*obj->a != obj->b){
- EXPECT_FALSE(id, "2*obj->a != obj->b", TRUE);
- break;
- }
- if (obj->a != i){
- EXPECT_FALSE(id, "obj->a != i", TRUE);
- break;
- }
- }
- EXPECT_EQUAL_INT32(id, "i==MAX", MAX, i);
- }
-}
-
-void TestEtQueue_runSuite(void){
- etUnit_openTestSuite("TestQueue");
- ADD_TESTCASE(TestEtQueue_test);
- etUnit_closeTestSuite();
-}
-
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +#include "TestEtQueue.h" + +#include <stddef.h> +#include "etUnit/etUnit.h" +#include "base/etQueue.h" + +#define MAX 1000 + +typedef struct etTestObject { + etQueueObj base; + etInt16 a; + etInt16 b; +} etTestObject; + +static void TestEtQueue_test(etInt16 id){ + etTestObject objects[MAX]; + int16 i; + + etQueue queue; + etQueue_init(&queue); + + for(i=0; i<MAX; i++){ + objects[i].a = i; + objects[i].b = i*2; + } + + int j; + for(j=0; j<3; j++){ + for (i=0; i<MAX; i++){ + etQueue_push(&queue, &(objects[i].base)); + } + for (i=0; i<MAX; i++){ + etTestObject* obj = (etTestObject*) etQueue_pop(&queue); + // EXPECTS are hidden to avoid too many testcases in log + if (obj == NULL){ + EXPECT_FALSE(id, "obj == NULL", TRUE); + break; + } + if (2*obj->a != obj->b){ + EXPECT_FALSE(id, "2*obj->a != obj->b", TRUE); + break; + } + if (obj->a != i){ + EXPECT_FALSE(id, "obj->a != i", TRUE); + break; + } + } + EXPECT_EQUAL_INT32(id, "i==MAX", MAX, i); + } +} + +void TestEtQueue_runSuite(void){ + etUnit_openTestSuite("TestQueue"); + ADD_TESTCASE(TestEtQueue_test); + etUnit_closeTestSuite(); +} + diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.h b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.h index 1a4f9e90e..9b8cce190 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.h +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/TestEtQueue.h @@ -1,21 +1,21 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-#ifndef _TEST_QUEUE_H_
-#define _TEST_QUEUE_H_
-
-#include "base/etQueue.h"
-
-void TestEtQueue_runSuite(void);
-
-
-#endif /* _TEST_QUEUE_H_ */
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +#ifndef _TEST_QUEUE_H_ +#define _TEST_QUEUE_H_ + +#include "base/etQueue.h" + +void TestEtQueue_runSuite(void); + + +#endif /* _TEST_QUEUE_H_ */ diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.c b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.c index 1ff442503..19b21ec76 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.c +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.c @@ -1,65 +1,65 @@ -/*******************************************************************************
- * Copyright (c) 2013 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz (initial contribution)
- *
- *******************************************************************************/
-
-#include "TestEtTimeHelpers.h"
-#include "helpers/etTimeHelpers.h"
-
-#include "etUnit/etUnit.h"
-
-static void TestEtTimeHelpers_convertToMSec (etInt16 id) {
- etInt32 result;
- etTime time;
-
- time.sec = 0;
- time.nSec = 0;
- result = etTimeHelpers_convertToMSec(&time);
- EXPECT_EQUAL_INT32(id, "0 ms", 0, result);
-
- time.sec = 1;
- time.nSec = 1000000;
- result = etTimeHelpers_convertToMSec(&time);
- EXPECT_EQUAL_INT32(id, "1001 ms", 1001, result);
-
- time.sec = 1111;
- time.nSec = 55000000;
- result = etTimeHelpers_convertToMSec(&time);
- EXPECT_EQUAL_INT32(id, "111055 ms", 1111055, result);
-
-}
-
-static void TestEtTimeHelpers_convertToEtTime (etInt16 id) {
- etInt32 ms_time;
- etTime result;
-
- ms_time=0;
- etTimeHelpers_convertToEtTime(&result, ms_time);
- EXPECT_EQUAL_INT32(id, "0 s", 0, result.sec);
- EXPECT_EQUAL_INT32(id, "0 ns", 0, result.nSec);
-
-
- ms_time=1234567;
- etTimeHelpers_convertToEtTime(&result, ms_time);
- EXPECT_EQUAL_INT32(id, "1234 s", 1234, result.sec);
- EXPECT_EQUAL_INT32(id, "567000000 ns", 567000000, result.nSec);
-
-}
-
-
-
-void TestEtTimeHelpers_runSuite(void){
- etUnit_openTestSuite("TestEtTimeHelpers");
- ADD_TESTCASE(TestEtTimeHelpers_convertToMSec);
- ADD_TESTCASE(TestEtTimeHelpers_convertToEtTime);
- etUnit_closeTestSuite();
-}
-
-
+/******************************************************************************* + * Copyright (c) 2013 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz (initial contribution) + * + *******************************************************************************/ + +#include "TestEtTimeHelpers.h" +#include "helpers/etTimeHelpers.h" + +#include "etUnit/etUnit.h" + +static void TestEtTimeHelpers_convertToMSec (etInt16 id) { + etInt32 result; + etTime time; + + time.sec = 0; + time.nSec = 0; + result = etTimeHelpers_convertToMSec(&time); + EXPECT_EQUAL_INT32(id, "0 ms", 0, result); + + time.sec = 1; + time.nSec = 1000000; + result = etTimeHelpers_convertToMSec(&time); + EXPECT_EQUAL_INT32(id, "1001 ms", 1001, result); + + time.sec = 1111; + time.nSec = 55000000; + result = etTimeHelpers_convertToMSec(&time); + EXPECT_EQUAL_INT32(id, "111055 ms", 1111055, result); + +} + +static void TestEtTimeHelpers_convertToEtTime (etInt16 id) { + etInt32 ms_time; + etTime result; + + ms_time=0; + etTimeHelpers_convertToEtTime(&result, ms_time); + EXPECT_EQUAL_INT32(id, "0 s", 0, result.sec); + EXPECT_EQUAL_INT32(id, "0 ns", 0, result.nSec); + + + ms_time=1234567; + etTimeHelpers_convertToEtTime(&result, ms_time); + EXPECT_EQUAL_INT32(id, "1234 s", 1234, result.sec); + EXPECT_EQUAL_INT32(id, "567000000 ns", 567000000, result.nSec); + +} + + + +void TestEtTimeHelpers_runSuite(void){ + etUnit_openTestSuite("TestEtTimeHelpers"); + ADD_TESTCASE(TestEtTimeHelpers_convertToMSec); + ADD_TESTCASE(TestEtTimeHelpers_convertToEtTime); + etUnit_closeTestSuite(); +} + + diff --git a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.h b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.h index 899888304..091774c86 100644 --- a/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.h +++ b/tests/org.eclipse.etrice.runtime.c.tests/src/runtime/helpers/TestEtTimeHelpers.h @@ -1,19 +1,19 @@ -/*******************************************************************************
- * Copyright (c) 2013 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz (initial contribution)
- *
- *******************************************************************************/
-
-#ifndef _TESTETTIMEHELPERS_H_
-#define _TESTETTIMEHELPERS_H_
-
-void TestEtTimeHelpers_runSuite(void);
-
-
-#endif /* _TESTETTIMEHELPERS_H_ */
+/******************************************************************************* + * Copyright (c) 2013 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz (initial contribution) + * + *******************************************************************************/ + +#ifndef _TESTETTIMEHELPERS_H_ +#define _TESTETTIMEHELPERS_H_ + +void TestEtTimeHelpers_runSuite(void); + + +#endif /* _TESTETTIMEHELPERS_H_ */ diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.classpath b/tests/org.eclipse.etrice.runtime.java.tests/.classpath index 1378d071f..707c20f92 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/.classpath +++ b/tests/org.eclipse.etrice.runtime.java.tests/.classpath @@ -1,8 +1,8 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/>
- <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.etrice.runtime.java"/> + <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.gitignore b/tests/org.eclipse.etrice.runtime.java.tests/.gitignore index 5c21edf4a..4d1bb7bb6 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/.gitignore +++ b/tests/org.eclipse.etrice.runtime.java.tests/.gitignore @@ -1,2 +1,2 @@ -bin
-test.etu
+bin +test.etu diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.project b/tests/org.eclipse.etrice.runtime.java.tests/.project index 0f220c3dd..7ad23c49c 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/.project +++ b/tests/org.eclipse.etrice.runtime.java.tests/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.runtime.java.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.runtime.java.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs index 912f280ba..709e4b091 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,12 +1,12 @@ -#Fri Dec 03 09:11:14 CET 2010
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Fri Dec 03 09:11:14 CET 2010 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry index f350ed35e..2fb76f2a8 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry +++ b/tests/org.eclipse.etrice.runtime.java.tests/.settings/org.eclipse.ocl.modelregistry @@ -1,2 +1,2 @@ -<?xml version="1.0" encoding="ASCII"?>
-<mreg:ModelRegistrySettings xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:mreg="http://www.eclipse.org/ocl/1.0/ModelRegistry"/>
+<?xml version="1.0" encoding="ASCII"?> +<mreg:ModelRegistrySettings xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:mreg="http://www.eclipse.org/ocl/1.0/ModelRegistry"/> diff --git a/tests/org.eclipse.etrice.runtime.java.tests/about.html b/tests/org.eclipse.etrice.runtime.java.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/about.html +++ b/tests/org.eclipse.etrice.runtime.java.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.runtime.java.tests/buckminster.cspec b/tests/org.eclipse.etrice.runtime.java.tests/buckminster.cspec index 65d50e5bf..80303d75d 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/buckminster.cspec +++ b/tests/org.eclipse.etrice.runtime.java.tests/buckminster.cspec @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.runtime.java.tests" componentType="buckminster" version="0.3.0.qualifier">
- <cs:dependencies>
- <cs:dependency name="org.eclipse.etrice.runtime.java" componentType="buckminster"/>
- </cs:dependencies>
-</cs:cspec>
+<?xml version="1.0" encoding="UTF-8"?> +<cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="org.eclipse.etrice.runtime.java.tests" componentType="buckminster" version="0.3.0.qualifier"> + <cs:dependencies> + <cs:dependency name="org.eclipse.etrice.runtime.java" componentType="buckminster"/> + </cs:dependencies> +</cs:cspec> diff --git a/tests/org.eclipse.etrice.runtime.java.tests/org.eclipse.etrice.runtime.java.tests.launch b/tests/org.eclipse.etrice.runtime.java.tests/org.eclipse.etrice.runtime.java.tests.launch index 93ff9cc71..d9ad1884a 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/org.eclipse.etrice.runtime.java.tests.launch +++ b/tests/org.eclipse.etrice.runtime.java.tests/org.eclipse.etrice.runtime.java.tests.launch @@ -1,16 +1,16 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.runtime.java.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.runtime.java.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.runtime.java.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.junit.launchconfig"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.runtime.java.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.runtime.java.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.runtime.java.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/config/ConfigSourceFileTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/config/ConfigSourceFileTest.java index ed6aca002..554b05f8c 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/config/ConfigSourceFileTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/config/ConfigSourceFileTest.java @@ -1,69 +1,69 @@ -package org.eclipse.etrice.runtime.java.config;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import junit.framework.TestCase;
-
-public class ConfigSourceFileTest extends TestCase {
-
- private Map<String, Object> map;
-
- public void testConfigSourceFile() {
-
- IConfigSource source = new ConfigSourceFile("tmp/ConfigTest");
-
- map = new HashMap<String, Object>();
- map.put("SS/AC/doubleA", new Double[] { 0.0, 1.1, 2.2, 0.4e-5 });
- map.put("SS/AC/int", 3);
- map.put("SS/AC/double", 0.4e-5);
- map.put("SS/AC/booleanA", new Boolean[] { true, false, true, false });
- map.put("SS/AC/boolean", true);
- map.put("SS/AC/string", "test");
- map.put("SS/AC/stringA", new String[] { "\"\"", "", "test1",
- "\"test2\"" });
- map.put("SS/AC/intA", new Integer[] { 1, 2, 3, 4, 5, 6 });
-
- source.writeValues(map);
- assertTrue(readAndCompare(source));
-
- map.put("SS/AC/int", 999);
- map.put("SS/AC/stringA", new String[] { "\"\"", "", "test1" });
- map.put("SS/AC/booleanA", new Boolean[] { false });
- map.put("SS/AC/long", Long.MIN_VALUE);
- source.writeValues(map);
- assertTrue(readAndCompare(source));
- }
-
- private boolean readAndCompare(IConfigSource source) {
- Map<String, Object> readMap = source.readValues();
- for (Entry<String, Object> entry : map.entrySet()) {
- String key = entry.getKey();
- if (!readMap.containsKey(key))
- return false;
-
- Object readValue = readMap.get(key);
- Object origValue = entry.getValue();
- if (origValue instanceof Object[]) {
- if (!(readValue instanceof String[]))
- continue;
- List<String> tmp = new ArrayList<String>();
- for (Object s : (Object[]) origValue)
- tmp.add(s.toString());
- if (Arrays.deepEquals(tmp.toArray(new String[0]),
- (String[]) readValue))
- readMap.remove(key);
- } else if (origValue.toString().equals(readValue.toString()))
- readMap.remove(key);
- }
-
- for (String key : readMap.keySet())
- if (map.containsKey(key))
- return false;
- return true;
- }
-}
+package org.eclipse.etrice.runtime.java.config; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + +import junit.framework.TestCase; + +public class ConfigSourceFileTest extends TestCase { + + private Map<String, Object> map; + + public void testConfigSourceFile() { + + IConfigSource source = new ConfigSourceFile("tmp/ConfigTest"); + + map = new HashMap<String, Object>(); + map.put("SS/AC/doubleA", new Double[] { 0.0, 1.1, 2.2, 0.4e-5 }); + map.put("SS/AC/int", 3); + map.put("SS/AC/double", 0.4e-5); + map.put("SS/AC/booleanA", new Boolean[] { true, false, true, false }); + map.put("SS/AC/boolean", true); + map.put("SS/AC/string", "test"); + map.put("SS/AC/stringA", new String[] { "\"\"", "", "test1", + "\"test2\"" }); + map.put("SS/AC/intA", new Integer[] { 1, 2, 3, 4, 5, 6 }); + + source.writeValues(map); + assertTrue(readAndCompare(source)); + + map.put("SS/AC/int", 999); + map.put("SS/AC/stringA", new String[] { "\"\"", "", "test1" }); + map.put("SS/AC/booleanA", new Boolean[] { false }); + map.put("SS/AC/long", Long.MIN_VALUE); + source.writeValues(map); + assertTrue(readAndCompare(source)); + } + + private boolean readAndCompare(IConfigSource source) { + Map<String, Object> readMap = source.readValues(); + for (Entry<String, Object> entry : map.entrySet()) { + String key = entry.getKey(); + if (!readMap.containsKey(key)) + return false; + + Object readValue = readMap.get(key); + Object origValue = entry.getValue(); + if (origValue instanceof Object[]) { + if (!(readValue instanceof String[])) + continue; + List<String> tmp = new ArrayList<String>(); + for (Object s : (Object[]) origValue) + tmp.add(s.toString()); + if (Arrays.deepEquals(tmp.toArray(new String[0]), + (String[]) readValue)) + readMap.remove(key); + } else if (origValue.toString().equals(readValue.toString())) + readMap.remove(key); + } + + for (String key : readMap.keySet()) + if (map.containsKey(key)) + return false; + return true; + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java index 8e6524ce8..055a31f46 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/debugging/MSCLoggerTest.java @@ -1,37 +1,37 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.debugging;
-
-import org.eclipse.etrice.runtime.java.debugging.MSCLogger;
-
-import junit.framework.TestCase;
-
-public class MSCLoggerTest extends TestCase {
-
- public void testMSCLogger() {
- MSCLogger logger = new MSCLogger();
- logger.setMSC("MSC1", ".\\");
- logger.open();
- logger.addMessageAsyncOut("Inst1", "Inst2", "msg1");
- logger.addMessageAsyncIn("Inst1", "Inst2", "msg1");
- logger.addMessageSyncCall("Inst1", "Inst2", "msg1");
- logger.addMessageSyncReturn("Inst1", "Inst2", "msg1");
- logger.addActorState("Actor1", "State1");
- logger.close();
-
- assertEquals("\tInst1 >-- Inst2 msg1", logger.getCommandList().get(0));
- assertEquals("\tInst1 --> Inst2 msg1", logger.getCommandList().get(1));
- assertEquals("\tInst1 ==> Inst2 msg1", logger.getCommandList().get(2));
- assertEquals("\tInst1 <== Inst2 msg1", logger.getCommandList().get(3));
- assertEquals("\tActor1 >>> State1", logger.getCommandList().get(4));
-
- //TODO: how should we check generated files?
-
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.debugging; + +import org.eclipse.etrice.runtime.java.debugging.MSCLogger; + +import junit.framework.TestCase; + +public class MSCLoggerTest extends TestCase { + + public void testMSCLogger() { + MSCLogger logger = new MSCLogger(); + logger.setMSC("MSC1", ".\\"); + logger.open(); + logger.addMessageAsyncOut("Inst1", "Inst2", "msg1"); + logger.addMessageAsyncIn("Inst1", "Inst2", "msg1"); + logger.addMessageSyncCall("Inst1", "Inst2", "msg1"); + logger.addMessageSyncReturn("Inst1", "Inst2", "msg1"); + logger.addActorState("Actor1", "State1"); + logger.close(); + + assertEquals("\tInst1 >-- Inst2 msg1", logger.getCommandList().get(0)); + assertEquals("\tInst1 --> Inst2 msg1", logger.getCommandList().get(1)); + assertEquals("\tInst1 ==> Inst2 msg1", logger.getCommandList().get(2)); + assertEquals("\tInst1 <== Inst2 msg1", logger.getCommandList().get(3)); + assertEquals("\tActor1 >>> State1", logger.getCommandList().get(4)); + + //TODO: how should we check generated files? + + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/etunit/EtUnitTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/etunit/EtUnitTest.java index 122c90991..99c7f60d8 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/etunit/EtUnitTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/etunit/EtUnitTest.java @@ -1,110 +1,110 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.etunit;
-
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_FLOAT32;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT16;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT32;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT8;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_PTR;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT16;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT32;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT8;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_FALSE;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER_END;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER_START;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_TRUE;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_close;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_closeTestCase;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_closeTestSuite;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_open;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_openTestCase;
-import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_openTestSuite;
-
-import java.io.BufferedReader;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.ArrayList;
-
-import junit.framework.TestCase;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class EtUnitTest extends TestCase {
-
- public void doTestExpect(int id) {
- EXPECT_TRUE(id, "EXPECT_TRUE", true);
- EXPECT_FALSE(id, "EXPECT_FALSE", false);
-
- /* signed integer values */
- EXPECT_EQUAL_INT8(id, "EXPECT_EQUAL_INT8", (byte) -122, (byte) -123); // produces a failure
- EXPECT_EQUAL_INT16(id, "EXPECT_EQUAL_INT16", (short) -12345, (short) -12345);
- EXPECT_EQUAL_INT32(id, "EXPECT_EQUAL_INT32", -1234567, -1234567);
-
- /* unsigned integer values */
- EXPECT_EQUAL_UINT8(id, "EXPECT_EQUAL_INT8", (char) 123, (char) 123);
- EXPECT_EQUAL_UINT16(id, "EXPECT_EQUAL_INT16", (short) 12345, (short) 12345);
- EXPECT_EQUAL_UINT32(id, "EXPECT_EQUAL_INT32", 1234567, 1234567);
-
- /* float values */
- EXPECT_EQUAL_FLOAT32(id, "EXPECT_EQUAL_FLOAT32", 123.456f, 123.456f, 0.0001f);
- EXPECT_EQUAL_FLOAT32(id, "EXPECT_EQUAL_FLOAT32", 123.456f, 123.456f, 0.0001f);
-
- /* Pointers */
- Integer value = new Integer(123);
- Integer valuePtr = value;
-
- EXPECT_EQUAL_PTR(id, "EXPECT_EQUAL_PTR", value, valuePtr);
- }
-
- public void doTestOrder(int id) {
- short list[] = {1,2,3,4};
- EXPECT_ORDER_START(id, list, list.length);
- EXPECT_ORDER(id, "id=1", 1);
- EXPECT_ORDER(id, "id=2", 2);
- EXPECT_ORDER(id, "id=3", 3);
- EXPECT_ORDER_END(id, "id=4", 4);
- }
-
- public void testSuite() throws IOException {
- etUnit_open(null, "test");
- etUnit_openTestSuite("TestEtUnit");
-
- int id = etUnit_openTestCase("doTestExpect");
- doTestExpect(id);
- etUnit_closeTestCase(id);
-
- id = etUnit_openTestCase("doTestOrder");
- doTestOrder(id);
- etUnit_closeTestCase(id);
-
- etUnit_closeTestSuite();
- etUnit_close();
-
- ArrayList<String> lines = new ArrayList<String>();
- {
- FileReader fr = new FileReader("test.etu");
- BufferedReader br = new BufferedReader(fr);
- String line;
- while ((line=br.readLine())!=null)
- lines.add(line);
- br.close();
- }
-
- assertEquals("#lines in test output", 7, lines.size());
- assertEquals("contents of line 4", "tc fail 1: #-122#-123#org.eclipse.etrice.runtime.java.etunit.EtUnitTest:53#EXPECT_EQUAL_INT8: expected=-122, actual=-123", lines.get(3));
- }
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.etunit; + +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_FLOAT32; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT16; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT32; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_INT8; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_PTR; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT16; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT32; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_EQUAL_UINT8; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_FALSE; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER_END; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_ORDER_START; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.EXPECT_TRUE; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_close; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_closeTestCase; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_closeTestSuite; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_open; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_openTestCase; +import static org.eclipse.etrice.runtime.java.etunit.EtUnit.etUnit_openTestSuite; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.IOException; +import java.util.ArrayList; + +import junit.framework.TestCase; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class EtUnitTest extends TestCase { + + public void doTestExpect(int id) { + EXPECT_TRUE(id, "EXPECT_TRUE", true); + EXPECT_FALSE(id, "EXPECT_FALSE", false); + + /* signed integer values */ + EXPECT_EQUAL_INT8(id, "EXPECT_EQUAL_INT8", (byte) -122, (byte) -123); // produces a failure + EXPECT_EQUAL_INT16(id, "EXPECT_EQUAL_INT16", (short) -12345, (short) -12345); + EXPECT_EQUAL_INT32(id, "EXPECT_EQUAL_INT32", -1234567, -1234567); + + /* unsigned integer values */ + EXPECT_EQUAL_UINT8(id, "EXPECT_EQUAL_INT8", (char) 123, (char) 123); + EXPECT_EQUAL_UINT16(id, "EXPECT_EQUAL_INT16", (short) 12345, (short) 12345); + EXPECT_EQUAL_UINT32(id, "EXPECT_EQUAL_INT32", 1234567, 1234567); + + /* float values */ + EXPECT_EQUAL_FLOAT32(id, "EXPECT_EQUAL_FLOAT32", 123.456f, 123.456f, 0.0001f); + EXPECT_EQUAL_FLOAT32(id, "EXPECT_EQUAL_FLOAT32", 123.456f, 123.456f, 0.0001f); + + /* Pointers */ + Integer value = new Integer(123); + Integer valuePtr = value; + + EXPECT_EQUAL_PTR(id, "EXPECT_EQUAL_PTR", value, valuePtr); + } + + public void doTestOrder(int id) { + short list[] = {1,2,3,4}; + EXPECT_ORDER_START(id, list, list.length); + EXPECT_ORDER(id, "id=1", 1); + EXPECT_ORDER(id, "id=2", 2); + EXPECT_ORDER(id, "id=3", 3); + EXPECT_ORDER_END(id, "id=4", 4); + } + + public void testSuite() throws IOException { + etUnit_open(null, "test"); + etUnit_openTestSuite("TestEtUnit"); + + int id = etUnit_openTestCase("doTestExpect"); + doTestExpect(id); + etUnit_closeTestCase(id); + + id = etUnit_openTestCase("doTestOrder"); + doTestOrder(id); + etUnit_closeTestCase(id); + + etUnit_closeTestSuite(); + etUnit_close(); + + ArrayList<String> lines = new ArrayList<String>(); + { + FileReader fr = new FileReader("test.etu"); + BufferedReader br = new BufferedReader(fr); + String line; + while ((line=br.readLine())!=null) + lines.add(line); + br.close(); + } + + assertEquals("#lines in test output", 7, lines.size()); + assertEquals("contents of line 4", "tc fail 1: #-122#-123#org.eclipse.etrice.runtime.java.etunit.EtUnitTest:53#EXPECT_EQUAL_INT8: expected=-122, actual=-123", lines.get(3)); + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java index 7375e2a64..eb03269d7 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/AddressTest.java @@ -1,28 +1,28 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-
-import junit.framework.TestCase;
-
-public class AddressTest extends TestCase {
-
- public void testAddress() {
- Address addr = new Address(1,2,3);
- assertEquals(1, addr.nodeID);
- assertEquals(2, addr.threadID);
- assertEquals(3, addr.objectID);
- }
- public void testToString() {
- Address addr = new Address(1,2,3);
- assertEquals("Address(nodeID=1,threadID=2,objectID=3)", addr.toString());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; + +import junit.framework.TestCase; + +public class AddressTest extends TestCase { + + public void testAddress() { + Address addr = new Address(1,2,3); + assertEquals(1, addr.nodeID); + assertEquals(2, addr.threadID); + assertEquals(3, addr.objectID); + } + public void testToString() { + Address addr = new Address(1,2,3); + assertEquals("Address(nodeID=1,threadID=2,objectID=3)", addr.toString()); + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java index 60ac2419b..9448b0a96 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/DummyMessageReceiver.java @@ -1,57 +1,57 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-
-// this class is purely for testing purposes
-// it remembers the last receive message
-public class DummyMessageReceiver extends RTObject implements IMessageReceiver {
-
- DummyMessageReceiver (Address address){
- super(null, "dummy");
- this.address = address;
- }
-
- public void receive(Message msg) {
- last_received_message = msg;
- }
-
- public Address getAddress() {
- // TODO Auto-generated method stub
- return this.address;
- }
-
- public Message getLastReceivedMessage(){
- return last_received_message;
- }
-
- private Message last_received_message = null;
- private Address address = null;
-
- @Override
- public String getInstancePath(char delim) {
- return null;
- }
-
- @Override
- public String getInstancePath() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public String getInstancePathName() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.IMessageReceiver; +import org.eclipse.etrice.runtime.java.messaging.Message; + +// this class is purely for testing purposes +// it remembers the last receive message +public class DummyMessageReceiver extends RTObject implements IMessageReceiver { + + DummyMessageReceiver (Address address){ + super(null, "dummy"); + this.address = address; + } + + public void receive(Message msg) { + last_received_message = msg; + } + + public Address getAddress() { + // TODO Auto-generated method stub + return this.address; + } + + public Message getLastReceivedMessage(){ + return last_received_message; + } + + private Message last_received_message = null; + private Address address = null; + + @Override + public String getInstancePath(char delim) { + return null; + } + + @Override + public String getInstancePath() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getInstancePathName() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java index d130c82be..fb33e8645 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageDispatcherTest.java @@ -1,71 +1,71 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-import org.eclipse.etrice.runtime.java.messaging.MessageDispatcher;
-
-import junit.framework.TestCase;
-
-public class MessageDispatcherTest extends TestCase {
-
- public void testAddMessageReceiver() {
- Address dispatcher_address = new Address(0,0,0);
-
- // Create Receivers to check if the messages are delivered
- DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1));
- DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,0,2));
- DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(0,0,3));
- DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,0,4));
- DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,0,5));
- DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(0,0,6));
-
-
- // Add all Receivers to the Dispatcher
- MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1");
- dispatcher.addMessageReceiver(receiver1);
- dispatcher.addMessageReceiver(receiver2);
- dispatcher.addMessageReceiver(receiver3);
- dispatcher.addMessageReceiver(receiver4);
- dispatcher.addMessageReceiver(receiver5);
- dispatcher.addMessageReceiver(receiver6);
-
- Message msg1 = new Message(new Address(0,0,1));
- Message msg2 = new Message(new Address(0,0,2));
- Message msg3 = new Message(new Address(0,0,3));
- Message msg4 = new Message(new Address(0,0,4));
- Message msg5 = new Message(new Address(0,0,5));
- Message msg6 = new Message(new Address(0,0,6));
-
-
- dispatcher.receive(msg1);
- dispatcher.receive(msg2);
- dispatcher.receive(msg3);
- dispatcher.receive(msg4);
- dispatcher.receive(msg5);
- dispatcher.receive(msg6);
-
-
- assertEquals(msg1, receiver1.getLastReceivedMessage());
- assertEquals(msg2, receiver2.getLastReceivedMessage());
- assertEquals(msg3, receiver3.getLastReceivedMessage());
- assertEquals(msg4, receiver4.getLastReceivedMessage());
- assertEquals(msg5, receiver5.getLastReceivedMessage());
- assertEquals(msg6, receiver6.getLastReceivedMessage());
-
- }
-
- public void testInstanceId() {
- Address dispatcher_address = new Address(0,0,0);
- MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1");
- assertEquals("/Dispatcher1", dispatcher.getInstancePath());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageDispatcher; + +import junit.framework.TestCase; + +public class MessageDispatcherTest extends TestCase { + + public void testAddMessageReceiver() { + Address dispatcher_address = new Address(0,0,0); + + // Create Receivers to check if the messages are delivered + DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1)); + DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,0,2)); + DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(0,0,3)); + DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,0,4)); + DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,0,5)); + DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(0,0,6)); + + + // Add all Receivers to the Dispatcher + MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1"); + dispatcher.addMessageReceiver(receiver1); + dispatcher.addMessageReceiver(receiver2); + dispatcher.addMessageReceiver(receiver3); + dispatcher.addMessageReceiver(receiver4); + dispatcher.addMessageReceiver(receiver5); + dispatcher.addMessageReceiver(receiver6); + + Message msg1 = new Message(new Address(0,0,1)); + Message msg2 = new Message(new Address(0,0,2)); + Message msg3 = new Message(new Address(0,0,3)); + Message msg4 = new Message(new Address(0,0,4)); + Message msg5 = new Message(new Address(0,0,5)); + Message msg6 = new Message(new Address(0,0,6)); + + + dispatcher.receive(msg1); + dispatcher.receive(msg2); + dispatcher.receive(msg3); + dispatcher.receive(msg4); + dispatcher.receive(msg5); + dispatcher.receive(msg6); + + + assertEquals(msg1, receiver1.getLastReceivedMessage()); + assertEquals(msg2, receiver2.getLastReceivedMessage()); + assertEquals(msg3, receiver3.getLastReceivedMessage()); + assertEquals(msg4, receiver4.getLastReceivedMessage()); + assertEquals(msg5, receiver5.getLastReceivedMessage()); + assertEquals(msg6, receiver6.getLastReceivedMessage()); + + } + + public void testInstanceId() { + Address dispatcher_address = new Address(0,0,0); + MessageDispatcher dispatcher = new MessageDispatcher(null, dispatcher_address, "Dispatcher1"); + assertEquals("/Dispatcher1", dispatcher.getInstancePath()); + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java index 440c46c2f..c96ecf30d 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageSeQueueTest.java @@ -1,129 +1,129 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-import org.eclipse.etrice.runtime.java.messaging.MessageSeQueue;
-
-import junit.framework.TestCase;
-
-public class MessageSeQueueTest extends TestCase {
-
- public void testPushPop() {
- MessageSeQueue queue = new MessageSeQueue(null, "QueueName");
- Message msg1 = new Message(new Address(0, 0, 0));
- Message msg2 = new Message(new Address(0, 0, 0));
- Message msg3 = new Message(new Address(0, 0, 0));
-
- Message msg_received = null;
-
- // check fresh queue
- assertEquals(null, queue.getFirst());
- assertEquals(null, queue.getLast());
-
- // push first message
- queue.push(msg1);
- assertEquals(null, msg1.getNext());
-
- assertEquals(msg1, queue.getFirst());
- assertEquals(msg1, queue.getLast());
-
- // push second message
- queue.push(msg2);
- assertEquals(msg2, msg1.getNext());
- assertEquals(null, msg2.getNext());
-
- assertEquals(msg1, queue.getFirst());
- assertEquals(msg2, queue.getLast());
-
- // push third message
- queue.push(msg3);
- assertEquals(msg2, msg1.getNext());
- assertEquals(msg3, msg2.getNext());
- assertEquals(null, msg3.getNext());
-
- assertEquals(msg1, queue.getFirst());
- assertEquals(msg3, queue.getLast());
-
- // pop msg1
- msg_received = queue.pop();
- assertEquals(msg1, msg_received);
- assertEquals(null, msg1.getNext());
- assertEquals(msg3, msg2.getNext());
- assertEquals(null, msg3.getNext());
-
- assertEquals(msg2, queue.getFirst());
- assertEquals(msg3, queue.getLast());
-
-
- // pop msg2
- msg_received = queue.pop();
- assertEquals(msg2, msg_received);
- assertEquals(null, msg2.getNext());
- assertEquals(null, msg3.getNext());
-
- assertEquals(msg3, queue.getFirst());
- assertEquals(msg3, queue.getLast());
-
- // pop msg3
- msg_received = queue.pop();
- assertEquals(msg3, msg_received);
- assertEquals(null, msg3.getNext());
-
- assertEquals(null, queue.getFirst());
- assertEquals(null, queue.getLast());
-
- msg_received = queue.pop();
- assertEquals(null, msg_received);
-
- }
-
-
- public void testSizeAndHighwatermark() {
- MessageSeQueue queue = new MessageSeQueue(null, "QueueName");
- Message msg1 = new Message(new Address(0, 0, 0));
- Message msg2 = new Message(new Address(0, 0, 0));
- Message msg3 = new Message(new Address(0, 0, 0));
-
- Message msg_received = null;
-
- assertEquals(0, queue.getSize());
- assertEquals(0, queue.getHightWaterMark());
-
- queue.push(msg1);
- assertEquals(1, queue.getSize());
- assertEquals(1, queue.getHightWaterMark());
-
- queue.push(msg2);
- assertEquals(2, queue.getSize());
- assertEquals(2, queue.getHightWaterMark());
-
- queue.push(msg3);
- assertEquals(3, queue.getSize());
- assertEquals(3, queue.getHightWaterMark());
-
- msg_received = queue.pop();
- assertEquals(msg1, msg_received);
- assertEquals(2, queue.getSize());
- assertEquals(3, queue.getHightWaterMark());
-
- msg_received = queue.pop();
- assertEquals(msg2, msg_received);
- assertEquals(1, queue.getSize());
- assertEquals(3, queue.getHightWaterMark());
-
- msg_received = queue.pop();
- assertEquals(msg3, msg_received);
- assertEquals(0, queue.getSize());
- assertEquals(3, queue.getHightWaterMark());
-
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageSeQueue; + +import junit.framework.TestCase; + +public class MessageSeQueueTest extends TestCase { + + public void testPushPop() { + MessageSeQueue queue = new MessageSeQueue(null, "QueueName"); + Message msg1 = new Message(new Address(0, 0, 0)); + Message msg2 = new Message(new Address(0, 0, 0)); + Message msg3 = new Message(new Address(0, 0, 0)); + + Message msg_received = null; + + // check fresh queue + assertEquals(null, queue.getFirst()); + assertEquals(null, queue.getLast()); + + // push first message + queue.push(msg1); + assertEquals(null, msg1.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg1, queue.getLast()); + + // push second message + queue.push(msg2); + assertEquals(msg2, msg1.getNext()); + assertEquals(null, msg2.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg2, queue.getLast()); + + // push third message + queue.push(msg3); + assertEquals(msg2, msg1.getNext()); + assertEquals(msg3, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg1, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + // pop msg1 + msg_received = queue.pop(); + assertEquals(msg1, msg_received); + assertEquals(null, msg1.getNext()); + assertEquals(msg3, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg2, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + + // pop msg2 + msg_received = queue.pop(); + assertEquals(msg2, msg_received); + assertEquals(null, msg2.getNext()); + assertEquals(null, msg3.getNext()); + + assertEquals(msg3, queue.getFirst()); + assertEquals(msg3, queue.getLast()); + + // pop msg3 + msg_received = queue.pop(); + assertEquals(msg3, msg_received); + assertEquals(null, msg3.getNext()); + + assertEquals(null, queue.getFirst()); + assertEquals(null, queue.getLast()); + + msg_received = queue.pop(); + assertEquals(null, msg_received); + + } + + + public void testSizeAndHighwatermark() { + MessageSeQueue queue = new MessageSeQueue(null, "QueueName"); + Message msg1 = new Message(new Address(0, 0, 0)); + Message msg2 = new Message(new Address(0, 0, 0)); + Message msg3 = new Message(new Address(0, 0, 0)); + + Message msg_received = null; + + assertEquals(0, queue.getSize()); + assertEquals(0, queue.getHightWaterMark()); + + queue.push(msg1); + assertEquals(1, queue.getSize()); + assertEquals(1, queue.getHightWaterMark()); + + queue.push(msg2); + assertEquals(2, queue.getSize()); + assertEquals(2, queue.getHightWaterMark()); + + queue.push(msg3); + assertEquals(3, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg1, msg_received); + assertEquals(2, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg2, msg_received); + assertEquals(1, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + msg_received = queue.pop(); + assertEquals(msg3, msg_received); + assertEquals(0, queue.getSize()); + assertEquals(3, queue.getHightWaterMark()); + + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java index 05ab54401..6b867e446 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageServiceTest.java @@ -1,157 +1,157 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-import org.eclipse.etrice.runtime.java.messaging.MessageService;
-
-import junit.framework.TestCase;
-
-public class MessageServiceTest extends TestCase {
-
-
- public void testRun() {
-
- // testing basic functionality of MessageService and Dispatcher
- MessageService msg_service1 = new MessageService(null, 0, 0, "MessageService1", Thread.NORM_PRIORITY);
- MessageService msg_service2 = new MessageService(null, 0, 0, "MessageService2", Thread.NORM_PRIORITY);
- MessageService msg_service3 = new MessageService(null, 0, 0, "MessageService3", Thread.NORM_PRIORITY);
- MessageService msg_service4 = new MessageService(null, 0, 0, "MessageService4", Thread.NORM_PRIORITY);
- MessageService msg_service5 = new MessageService(null, 0, 0, "MessageService5", Thread.NORM_PRIORITY);
- MessageService msg_service6 = new MessageService(null, 0, 0, "MessageService6", Thread.NORM_PRIORITY);
-
- DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1));
- DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,1,2));
- DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(0,2,5));
- DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,3,18));
- DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,4,39));
- DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(0,5,111));
-
-
- msg_service1.getMessageDispatcher().addMessageReceiver(receiver1);
- msg_service2.getMessageDispatcher().addMessageReceiver(receiver2);
- msg_service3.getMessageDispatcher().addMessageReceiver(receiver3);
- msg_service4.getMessageDispatcher().addMessageReceiver(receiver4);
- msg_service5.getMessageDispatcher().addMessageReceiver(receiver5);
- msg_service6.getMessageDispatcher().addMessageReceiver(receiver6);
-
- Message msg1 = new Message(new Address(0,0,1));
- Message msg2 = new Message(new Address(0,1,2));
- Message msg3 = new Message(new Address(0,2,5));
- Message msg4 = new Message(new Address(0,3,18));
- Message msg5 = new Message(new Address(0,4,39));
- Message msg6 = new Message(new Address(0,5,111));
-
- start(msg_service1);
- start(msg_service2);
- start(msg_service3);
- start(msg_service4);
- start(msg_service5);
- start(msg_service6);
-
- msg_service1.receive(msg1);
- msg_service2.receive(msg2);
- msg_service3.receive(msg3);
- msg_service4.receive(msg4);
- msg_service5.receive(msg5);
- msg_service6.receive(msg6);
-
- try {
- // give the other thread in MessageService a bit time to compute the queue
- Thread.sleep(100);
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- assertEquals(msg1, receiver1.getLastReceivedMessage());
- assertEquals(msg2, receiver2.getLastReceivedMessage());
- assertEquals(msg3, receiver3.getLastReceivedMessage());
- assertEquals(msg4, receiver4.getLastReceivedMessage());
- assertEquals(msg5, receiver5.getLastReceivedMessage());
- assertEquals(msg6, receiver6.getLastReceivedMessage());
-
-
- }
-
- public void testMassiveMessaging(){
- // testing massive use of messaging between two threads
- // current thread sends, MessageService has its own thread to dispatch the received messages
- // implicit test of race conditions -> test breaks if you take out the synchronized keywords from the MessageService
-
- MessageService msg_service = new MessageService(null, 0, 0, "MessageService1");
-
- int max=3000;
- int max_iter=10;
-
- // create and register message receivers
- DummyMessageReceiver receiver[]=new DummyMessageReceiver[max];
- for (int i=0; i<max; i++){
- receiver[i] = new DummyMessageReceiver(new Address(0,0,1+i));
- msg_service.getMessageDispatcher().addMessageReceiver(receiver[i]);
- }
-
-
- // Create all Messages
- Message msg[][]=new Message[max][max_iter];
- for (int j=0; j<max_iter; j++){
- for (int i=0; i<max; i++){
- msg[i][j] = new Message(new Address(0,0,i+1));
- }
- }
-
- // Start Message Service before sending the Messages to test the synchronization
- // This test fails without the synchronized keywords in the MessageService
- start(msg_service);
-
- // send all messages
- for (int j=0; j<max_iter; j++){
- for (int i=0; i<max; i++){
- msg_service.receive(msg[i][j]);
- }
- }
-
-
- try {
- // give the other thread in MessageService a bit time to compute the queue
- // TODO: maybe not a good choice to make a sleep in a test, a better strategy for multi threaded unit tests is needed
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- for (int i=0; i<max; i++){
- assertEquals(msg[i][max_iter-1], receiver[i].getLastReceivedMessage());
- }
-
- }
-
- public void testMessageService() {
- Address addr = new Address(0,0,0);
- MessageService msg_service = new MessageService(null, 0, 0, "MessageService1");
- assertEquals(addr, msg_service.getAddress());
- assertEquals(msg_service.getMessageDispatcher().getAddress().objectID, msg_service.getAddress().objectID+1);
- }
-
- public void testInstanceId() {
- // setInstanceId via Constructor
- MessageService msg_service = new MessageService(null, 0, 0, "MessageService1");
- assertEquals("/MessageService_MessageService1", msg_service.getInstancePath());
- assertEquals("/MessageService_MessageService1/Queue", msg_service.getMessageQueue().getInstancePath());
- assertEquals("/MessageService_MessageService1/Dispatcher", msg_service.getMessageDispatcher().getInstancePath());
- }
-
- private void start(MessageService svc) {
- Thread thread = new Thread(svc, svc.getName());
- svc.setThread(thread);
- thread.start();
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageService; + +import junit.framework.TestCase; + +public class MessageServiceTest extends TestCase { + + + public void testRun() { + + // testing basic functionality of MessageService and Dispatcher + MessageService msg_service1 = new MessageService(null, 0, 0, "MessageService1", Thread.NORM_PRIORITY); + MessageService msg_service2 = new MessageService(null, 0, 0, "MessageService2", Thread.NORM_PRIORITY); + MessageService msg_service3 = new MessageService(null, 0, 0, "MessageService3", Thread.NORM_PRIORITY); + MessageService msg_service4 = new MessageService(null, 0, 0, "MessageService4", Thread.NORM_PRIORITY); + MessageService msg_service5 = new MessageService(null, 0, 0, "MessageService5", Thread.NORM_PRIORITY); + MessageService msg_service6 = new MessageService(null, 0, 0, "MessageService6", Thread.NORM_PRIORITY); + + DummyMessageReceiver receiver1 = new DummyMessageReceiver(new Address(0,0,1)); + DummyMessageReceiver receiver2 = new DummyMessageReceiver(new Address(0,1,2)); + DummyMessageReceiver receiver3 = new DummyMessageReceiver(new Address(0,2,5)); + DummyMessageReceiver receiver4 = new DummyMessageReceiver(new Address(0,3,18)); + DummyMessageReceiver receiver5 = new DummyMessageReceiver(new Address(0,4,39)); + DummyMessageReceiver receiver6 = new DummyMessageReceiver(new Address(0,5,111)); + + + msg_service1.getMessageDispatcher().addMessageReceiver(receiver1); + msg_service2.getMessageDispatcher().addMessageReceiver(receiver2); + msg_service3.getMessageDispatcher().addMessageReceiver(receiver3); + msg_service4.getMessageDispatcher().addMessageReceiver(receiver4); + msg_service5.getMessageDispatcher().addMessageReceiver(receiver5); + msg_service6.getMessageDispatcher().addMessageReceiver(receiver6); + + Message msg1 = new Message(new Address(0,0,1)); + Message msg2 = new Message(new Address(0,1,2)); + Message msg3 = new Message(new Address(0,2,5)); + Message msg4 = new Message(new Address(0,3,18)); + Message msg5 = new Message(new Address(0,4,39)); + Message msg6 = new Message(new Address(0,5,111)); + + start(msg_service1); + start(msg_service2); + start(msg_service3); + start(msg_service4); + start(msg_service5); + start(msg_service6); + + msg_service1.receive(msg1); + msg_service2.receive(msg2); + msg_service3.receive(msg3); + msg_service4.receive(msg4); + msg_service5.receive(msg5); + msg_service6.receive(msg6); + + try { + // give the other thread in MessageService a bit time to compute the queue + Thread.sleep(100); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + assertEquals(msg1, receiver1.getLastReceivedMessage()); + assertEquals(msg2, receiver2.getLastReceivedMessage()); + assertEquals(msg3, receiver3.getLastReceivedMessage()); + assertEquals(msg4, receiver4.getLastReceivedMessage()); + assertEquals(msg5, receiver5.getLastReceivedMessage()); + assertEquals(msg6, receiver6.getLastReceivedMessage()); + + + } + + public void testMassiveMessaging(){ + // testing massive use of messaging between two threads + // current thread sends, MessageService has its own thread to dispatch the received messages + // implicit test of race conditions -> test breaks if you take out the synchronized keywords from the MessageService + + MessageService msg_service = new MessageService(null, 0, 0, "MessageService1"); + + int max=3000; + int max_iter=10; + + // create and register message receivers + DummyMessageReceiver receiver[]=new DummyMessageReceiver[max]; + for (int i=0; i<max; i++){ + receiver[i] = new DummyMessageReceiver(new Address(0,0,1+i)); + msg_service.getMessageDispatcher().addMessageReceiver(receiver[i]); + } + + + // Create all Messages + Message msg[][]=new Message[max][max_iter]; + for (int j=0; j<max_iter; j++){ + for (int i=0; i<max; i++){ + msg[i][j] = new Message(new Address(0,0,i+1)); + } + } + + // Start Message Service before sending the Messages to test the synchronization + // This test fails without the synchronized keywords in the MessageService + start(msg_service); + + // send all messages + for (int j=0; j<max_iter; j++){ + for (int i=0; i<max; i++){ + msg_service.receive(msg[i][j]); + } + } + + + try { + // give the other thread in MessageService a bit time to compute the queue + // TODO: maybe not a good choice to make a sleep in a test, a better strategy for multi threaded unit tests is needed + Thread.sleep(1000); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + for (int i=0; i<max; i++){ + assertEquals(msg[i][max_iter-1], receiver[i].getLastReceivedMessage()); + } + + } + + public void testMessageService() { + Address addr = new Address(0,0,0); + MessageService msg_service = new MessageService(null, 0, 0, "MessageService1"); + assertEquals(addr, msg_service.getAddress()); + assertEquals(msg_service.getMessageDispatcher().getAddress().objectID, msg_service.getAddress().objectID+1); + } + + public void testInstanceId() { + // setInstanceId via Constructor + MessageService msg_service = new MessageService(null, 0, 0, "MessageService1"); + assertEquals("/MessageService_MessageService1", msg_service.getInstancePath()); + assertEquals("/MessageService_MessageService1/Queue", msg_service.getMessageQueue().getInstancePath()); + assertEquals("/MessageService_MessageService1/Dispatcher", msg_service.getMessageDispatcher().getInstancePath()); + } + + private void start(MessageService svc) { + Thread thread = new Thread(svc, svc.getName()); + svc.setThread(thread); + thread.start(); + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java index 0c89fb07f..82d6f136b 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/messaging/MessageTest.java @@ -1,33 +1,33 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.messaging;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-
-import junit.framework.TestCase;
-
-public class MessageTest extends TestCase {
-
- public void testSetGetNext() {
- Message msg1 = new Message(new Address(0, 0, 0));
- Message msg2 = new Message(new Address(0, 0, 0));
- msg1.setNext(msg2);
- msg2.setNext(msg1);
- assertEquals(msg1.getNext(), msg2);
- assertEquals(msg2.getNext(), msg1);
- }
-
- public void testToString() {
- Message msg = new Message(new Address(1,2,3));
- assertEquals("Message(Address(nodeID=1,threadID=2,objectID=3))", msg.toString());
- }
-
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.messaging; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.Message; + +import junit.framework.TestCase; + +public class MessageTest extends TestCase { + + public void testSetGetNext() { + Message msg1 = new Message(new Address(0, 0, 0)); + Message msg2 = new Message(new Address(0, 0, 0)); + msg1.setNext(msg2); + msg2.setNext(msg1); + assertEquals(msg1.getNext(), msg2); + assertEquals(msg2.getNext(), msg1); + } + + public void testToString() { + Message msg = new Message(new Address(1,2,3)); + assertEquals("Message(Address(nodeID=1,threadID=2,objectID=3))", msg.toString()); + } + + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java index f6a620526..e0b24ab32 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ActorClassBaseTest.java @@ -1,69 +1,69 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import junit.framework.TestCase;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.Message;
-import org.eclipse.etrice.runtime.java.messaging.MessageService;
-import org.eclipse.etrice.runtime.java.messaging.MessageServiceController;
-import org.eclipse.etrice.runtime.java.messaging.RTServices;
-
-public class ActorClassBaseTest extends TestCase {
-
- public class MockActor extends ActorClassBase {
- public MockActor(IRTObject parent, String name) {
- super(parent, name);
- }
- public void receive(Message msg) {
-
- }
- public Address getAddress() {
- return null;
- }
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {
- }
-
- @Override
- public void init() {}
- @Override
- public void start() {}
- @Override
- public void stop() {}
- @Override
- public void destroy() {}
- @Override
- public void executeInitTransition() {
- }
- }
-
- public void testActorClassBase() {
- TopRTObject topRTObject = new TopRTObject("TOP");
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
- msgSvcCtrl.addMsgSvc(
- new MessageService(topRTObject, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_Main", Thread.NORM_PRIORITY));
-
- // PathNames
- ActorClassBase actor = new MockActor(topRTObject, "MockActor1");
- assertEquals("/TOP/MockActor1", actor.getInstancePath());
- assertEquals("_TOP_MockActor1", actor.getInstancePathName());
-
- // ClassName
- actor.setClassName("MockActor");
- assertEquals("MockActor", actor.getClassName());
-
- actor.setClassName("MockActor");
- assertEquals("ActorClass(className=MockActor, instancePath=/TOP/MockActor1)", actor.toString());
-
- }
-
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import junit.framework.TestCase; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.messaging.IRTObject; +import org.eclipse.etrice.runtime.java.messaging.Message; +import org.eclipse.etrice.runtime.java.messaging.MessageService; +import org.eclipse.etrice.runtime.java.messaging.MessageServiceController; +import org.eclipse.etrice.runtime.java.messaging.RTServices; + +public class ActorClassBaseTest extends TestCase { + + public class MockActor extends ActorClassBase { + public MockActor(IRTObject parent, String name) { + super(parent, name); + } + public void receive(Message msg) { + + } + public Address getAddress() { + return null; + } + public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) { + } + + @Override + public void init() {} + @Override + public void start() {} + @Override + public void stop() {} + @Override + public void destroy() {} + @Override + public void executeInitTransition() { + } + } + + public void testActorClassBase() { + TopRTObject topRTObject = new TopRTObject("TOP"); + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + msgSvcCtrl.addMsgSvc( + new MessageService(topRTObject, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_Main", Thread.NORM_PRIORITY)); + + // PathNames + ActorClassBase actor = new MockActor(topRTObject, "MockActor1"); + assertEquals("/TOP/MockActor1", actor.getInstancePath()); + assertEquals("_TOP_MockActor1", actor.getInstancePathName()); + + // ClassName + actor.setClassName("MockActor"); + assertEquals("MockActor", actor.getClassName()); + + actor.setClassName("MockActor"); + assertEquals("ActorClass(className=MockActor, instancePath=/TOP/MockActor1)", actor.toString()); + + } + + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java index 13b29f616..da1804ea2 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventMessageTest.java @@ -1,34 +1,34 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.modelbase.EventMessage;
-
-import junit.framework.TestCase;
-
-public class EventMessageTest extends TestCase {
-
- public void testSetGetNext() {
- EventMessage msg1 = new EventMessage(new Address(0, 0, 0), 123);
- EventMessage msg2 = new EventMessage(new Address(0, 0, 0), 456);
- msg1.setNext(msg2);
- msg2.setNext(msg1);
- assertEquals(msg1.getNext(), msg2);
- assertEquals(msg2.getNext(), msg1);
-
- assertEquals(123, msg1.getEvtId());
- assertEquals(456, msg2.getEvtId());
- }
-
- public void testToString() {
- EventMessage msg = new EventMessage(new Address(1,2,3), 789);
- assertEquals("EventMessage(Address(nodeID=1,threadID=2,objectID=3), evt=789)", msg.toString());
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.modelbase.EventMessage; + +import junit.framework.TestCase; + +public class EventMessageTest extends TestCase { + + public void testSetGetNext() { + EventMessage msg1 = new EventMessage(new Address(0, 0, 0), 123); + EventMessage msg2 = new EventMessage(new Address(0, 0, 0), 456); + msg1.setNext(msg2); + msg2.setNext(msg1); + assertEquals(msg1.getNext(), msg2); + assertEquals(msg2.getNext(), msg1); + + assertEquals(123, msg1.getEvtId()); + assertEquals(456, msg2.getEvtId()); + } + + public void testToString() { + EventMessage msg = new EventMessage(new Address(1,2,3), 789); + assertEquals("EventMessage(Address(nodeID=1,threadID=2,objectID=3), evt=789)", msg.toString()); + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java index 0a837d7ed..02ca0c43f 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/EventWithDataMessageTest.java @@ -1,36 +1,36 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import org.eclipse.etrice.runtime.java.messaging.Address;
-import org.eclipse.etrice.runtime.java.modelbase.EventWithDataMessage;
-
-import junit.framework.TestCase;
-
-public class EventWithDataMessageTest extends TestCase {
-
- public void testSetGetNext() {
- EventWithDataMessage msg1 = new EventWithDataMessage(new Address(0, 0, 0), 123, "abc");
- EventWithDataMessage msg2 = new EventWithDataMessage(new Address(0, 0, 0), 456, "def");
- msg1.setNext(msg2);
- msg2.setNext(msg1);
- assertEquals(msg1.getNext(), msg2);
- assertEquals(msg2.getNext(), msg1);
-
- assertEquals(123, msg1.getEvtId());
- assertEquals(456, msg2.getEvtId());
- assertEquals("abc", msg1.getData());
- assertEquals("def", msg2.getData());
- }
-
- public void testToString() {
- EventWithDataMessage msg = new EventWithDataMessage(new Address(1,2,3), 789, "eTrice");
- assertEquals("EventWithDataMessage(Address(nodeID=1,threadID=2,objectID=3), evt=789, data=(eTrice))", msg.toString());
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import org.eclipse.etrice.runtime.java.messaging.Address; +import org.eclipse.etrice.runtime.java.modelbase.EventWithDataMessage; + +import junit.framework.TestCase; + +public class EventWithDataMessageTest extends TestCase { + + public void testSetGetNext() { + EventWithDataMessage msg1 = new EventWithDataMessage(new Address(0, 0, 0), 123, "abc"); + EventWithDataMessage msg2 = new EventWithDataMessage(new Address(0, 0, 0), 456, "def"); + msg1.setNext(msg2); + msg2.setNext(msg1); + assertEquals(msg1.getNext(), msg2); + assertEquals(msg2.getNext(), msg1); + + assertEquals(123, msg1.getEvtId()); + assertEquals(456, msg2.getEvtId()); + assertEquals("abc", msg1.getData()); + assertEquals("def", msg2.getData()); + } + + public void testToString() { + EventWithDataMessage msg = new EventWithDataMessage(new Address(1,2,3), 789, "eTrice"); + assertEquals("EventWithDataMessage(Address(nodeID=1,threadID=2,objectID=3), evt=789, data=(eTrice))", msg.toString()); + } +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockEventReceiver.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockEventReceiver.java index e27aee894..380ed2a75 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockEventReceiver.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockEventReceiver.java @@ -1,28 +1,28 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import org.eclipse.etrice.runtime.java.messaging.IRTObject;
-import org.eclipse.etrice.runtime.java.messaging.RTObject;
-
-class MockEventReceiver extends RTObject implements IEventReceiver {
-
- protected MockEventReceiver(IRTObject parent, String name) {
- super(parent, name);
- }
-
- @Override
- public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) {
- }
-
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import org.eclipse.etrice.runtime.java.messaging.IRTObject; +import org.eclipse.etrice.runtime.java.messaging.RTObject; + +class MockEventReceiver extends RTObject implements IEventReceiver { + + protected MockEventReceiver(IRTObject parent, String name) { + super(parent, name); + } + + @Override + public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data) { + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockPort.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockPort.java index beb362524..d414d4168 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockPort.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/MockPort.java @@ -1,24 +1,24 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import org.eclipse.etrice.runtime.java.messaging.Message;
-
-class MockPort extends PortBase {
- public MockPort(IEventReceiver parent, String name, int localId, int idx) {
- super(parent, name, localId, idx);
- }
-
- public void receive(Message msg) {
- }
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import org.eclipse.etrice.runtime.java.messaging.Message; + +class MockPort extends PortBase { + public MockPort(IEventReceiver parent, String name, int localId, int idx) { + super(parent, name, localId, idx); + } + + public void receive(Message msg) { + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java index cfa37b324..f40b9ddaf 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/PortBaseTest.java @@ -1,68 +1,68 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import junit.framework.TestCase;
-
-import org.eclipse.etrice.runtime.java.messaging.MessageService;
-import org.eclipse.etrice.runtime.java.messaging.MessageServiceController;
-import org.eclipse.etrice.runtime.java.messaging.RTServices;
-
-public class PortBaseTest extends TestCase {
- protected void setUp() throws Exception {
- super.setUp();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testPortBase() {
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
- msgSvcCtrl.resetAll();
-
- msgSvcCtrl.addMsgSvc(
- new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_0", Thread.NORM_PRIORITY));
- msgSvcCtrl.addMsgSvc(
- new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_1", Thread.NORM_PRIORITY));
-
- msgSvcCtrl.addPathToThread("/TOP/Rcv0", 0);
- msgSvcCtrl.addPathToThread("/TOP/Rcv1", 1);
- msgSvcCtrl.addPathToPeer("/TOP/Rcv0/Port0", "/TOP/Rcv1/Port1");
- msgSvcCtrl.addPathToPeer("/TOP/Rcv1/Port1", "/TOP/Rcv0/Port0");
-
- TopRTObject top = new TopRTObject("TOP");
- MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0");
- MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1");
- PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0);
- PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5);
-
- assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver());
-
- assertEquals(port1.getAddress(), port0.getPeerAddress());
- assertEquals(port0.getAddress(), port1.getPeerAddress());
-
- assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath());
- assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName());
- assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath());
- assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName());
-
- assertEquals(33, port0.getLocalId());
- assertEquals(44, port1.getLocalId());
-
- assertEquals(0, port0.getIdx());
- assertEquals(5, port1.getIdx());
-
- assertEquals(eventRcv0, port0.getActor());
- assertEquals(eventRcv1, port1.getActor());
- }
-
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import junit.framework.TestCase; + +import org.eclipse.etrice.runtime.java.messaging.MessageService; +import org.eclipse.etrice.runtime.java.messaging.MessageServiceController; +import org.eclipse.etrice.runtime.java.messaging.RTServices; + +public class PortBaseTest extends TestCase { + protected void setUp() throws Exception { + super.setUp(); + } + + protected void tearDown() throws Exception { + super.tearDown(); + } + + public void testPortBase() { + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + msgSvcCtrl.resetAll(); + + msgSvcCtrl.addMsgSvc( + new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_0", Thread.NORM_PRIORITY)); + msgSvcCtrl.addMsgSvc( + new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_1", Thread.NORM_PRIORITY)); + + msgSvcCtrl.addPathToThread("/TOP/Rcv0", 0); + msgSvcCtrl.addPathToThread("/TOP/Rcv1", 1); + msgSvcCtrl.addPathToPeer("/TOP/Rcv0/Port0", "/TOP/Rcv1/Port1"); + msgSvcCtrl.addPathToPeer("/TOP/Rcv1/Port1", "/TOP/Rcv0/Port0"); + + TopRTObject top = new TopRTObject("TOP"); + MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0"); + MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1"); + PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0); + PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5); + + assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver()); + + assertEquals(port1.getAddress(), port0.getPeerAddress()); + assertEquals(port0.getAddress(), port1.getPeerAddress()); + + assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath()); + assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName()); + assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath()); + assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName()); + + assertEquals(33, port0.getLocalId()); + assertEquals(44, port1.getLocalId()); + + assertEquals(0, port0.getIdx()); + assertEquals(5, port1.getIdx()); + + assertEquals(eventRcv0, port0.getActor()); + assertEquals(eventRcv1, port1.getActor()); + } + + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ReplicatedPortBaseTest.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ReplicatedPortBaseTest.java index d4ee8fb32..2d3375ace 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ReplicatedPortBaseTest.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/ReplicatedPortBaseTest.java @@ -1,197 +1,197 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import static org.junit.Assert.assertEquals;
-
-import org.eclipse.etrice.runtime.java.messaging.MessageService;
-import org.eclipse.etrice.runtime.java.messaging.MessageServiceController;
-import org.eclipse.etrice.runtime.java.messaging.RTServices;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @author Henrik Rentz-Reichert
- *
- */
-public class ReplicatedPortBaseTest {
-
- private static class MockReplicatedPort extends ReplicatedPortBase {
-
- public MockReplicatedPort(IEventReceiver parent, String name, int localId) {
- super(parent, name, localId);
- }
-
- @Override
- protected InterfaceItemBase createInterfaceItem(IEventReceiver rcv, String name, int lid, int idx) {
- return new MockPort(rcv, name, lid, idx);
- }
-
- }
-
- @Before
- public void setUp() {
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
- msgSvcCtrl.resetAll();
-
- msgSvcCtrl.addMsgSvc(
- new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_0", Thread.NORM_PRIORITY));
- msgSvcCtrl.addMsgSvc(
- new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_1", Thread.NORM_PRIORITY));
-
- msgSvcCtrl.addPathToThread("/TOP/Rcv0", 0);
- msgSvcCtrl.addPathToThread("/TOP/Rcv1", 1);
- msgSvcCtrl.addPathToThread("/TOP/Rcv2", 1);
- msgSvcCtrl.addPathToPeer("/TOP/Rcv0/Port0", "/TOP/Rcv2/Port2");
- msgSvcCtrl.addPathToPeer("/TOP/Rcv1/Port1", "/TOP/Rcv2/Port2");
- msgSvcCtrl.addPathToPeer("/TOP/Rcv2/Port2", "/TOP/Rcv0/Port0");
- msgSvcCtrl.addPathToPeer("/TOP/Rcv2/Port2", "/TOP/Rcv1/Port1");
- }
-
- @Test
- public void testPort2Repl() {
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
-
- TopRTObject top = new TopRTObject("TOP");
- MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0");
- MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1");
- MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2");
- PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0);
- PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5);
- MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55);
-
- assertEquals(2, port2.getNInterfaceItems());
-
- assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver());
-
- assertEquals(port0.getAddress(), port2.getInterfaceItem(0).getPeerAddress());
- assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress());
-
- assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath());
- assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName());
- assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath());
- assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName());
- assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath());
- assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath());
- assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath());
-
- assertEquals(33, port0.getLocalId());
- assertEquals(44, port1.getLocalId());
- assertEquals(55, port2.getLocalId());
-
- assertEquals(0, port0.getIdx());
- assertEquals(5, port1.getIdx());
- assertEquals(0, port2.getInterfaceItem(0).getIdx());
- assertEquals(1, port2.getInterfaceItem(1).getIdx());
-
- assertEquals(eventRcv0, port0.getActor());
- assertEquals(eventRcv1, port1.getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor());
- }
-
- @Test
- public void testRepl2Port() {
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
-
- TopRTObject top = new TopRTObject("TOP");
- MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0");
- MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1");
- MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2");
- MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55);
- PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0);
- PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5);
-
- assertEquals(2, port2.getNInterfaceItems());
-
- assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver());
-
- assertEquals(port0.getAddress(), port2.getInterfaceItem(0).getPeerAddress());
- assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress());
-
- assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath());
- assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName());
- assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath());
- assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName());
- assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath());
- assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath());
- assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath());
-
- assertEquals(33, port0.getLocalId());
- assertEquals(44, port1.getLocalId());
- assertEquals(55, port2.getLocalId());
-
- assertEquals(0, port0.getIdx());
- assertEquals(5, port1.getIdx());
- assertEquals(0, port2.getInterfaceItem(0).getIdx());
- assertEquals(1, port2.getInterfaceItem(1).getIdx());
-
- assertEquals(eventRcv0, port0.getActor());
- assertEquals(eventRcv1, port1.getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor());
- }
-
- @Test
- public void testRepl2Repl() {
- MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl();
-
- TopRTObject top = new TopRTObject("TOP");
- MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0");
- MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1");
- MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2");
- MockReplicatedPort port0 = new MockReplicatedPort(eventRcv0, "Port0", 33);
- PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5);
- MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55);
-
- assertEquals(1, port0.getNInterfaceItems());
- assertEquals(2, port2.getNInterfaceItems());
-
- assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getInterfaceItem(0).getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver());
- assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver());
-
- assertEquals(port0.getInterfaceItem(0).getAddress(), port2.getInterfaceItem(0).getPeerAddress());
- assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress());
-
- assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath());
- assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName());
- assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath());
- assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName());
- assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath());
- assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath());
- assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath());
-
- assertEquals(33, port0.getLocalId());
- assertEquals(44, port1.getLocalId());
- assertEquals(55, port2.getLocalId());
-
- assertEquals(0, port0.getInterfaceItem(0).getIdx());
- assertEquals(5, port1.getIdx());
- assertEquals(0, port2.getInterfaceItem(0).getIdx());
- assertEquals(1, port2.getInterfaceItem(1).getIdx());
-
- assertEquals(eventRcv0, port0.getInterfaceItem(0).getActor());
- assertEquals(eventRcv1, port1.getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor());
- assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor());
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import static org.junit.Assert.assertEquals; + +import org.eclipse.etrice.runtime.java.messaging.MessageService; +import org.eclipse.etrice.runtime.java.messaging.MessageServiceController; +import org.eclipse.etrice.runtime.java.messaging.RTServices; +import org.junit.Before; +import org.junit.Test; + +/** + * @author Henrik Rentz-Reichert + * + */ +public class ReplicatedPortBaseTest { + + private static class MockReplicatedPort extends ReplicatedPortBase { + + public MockReplicatedPort(IEventReceiver parent, String name, int localId) { + super(parent, name, localId); + } + + @Override + protected InterfaceItemBase createInterfaceItem(IEventReceiver rcv, String name, int lid, int idx) { + return new MockPort(rcv, name, lid, idx); + } + + } + + @Before + public void setUp() { + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + msgSvcCtrl.resetAll(); + + msgSvcCtrl.addMsgSvc( + new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_0", Thread.NORM_PRIORITY)); + msgSvcCtrl.addMsgSvc( + new MessageService(null, 0, msgSvcCtrl.getNMsgSvc(), "MessageService_1", Thread.NORM_PRIORITY)); + + msgSvcCtrl.addPathToThread("/TOP/Rcv0", 0); + msgSvcCtrl.addPathToThread("/TOP/Rcv1", 1); + msgSvcCtrl.addPathToThread("/TOP/Rcv2", 1); + msgSvcCtrl.addPathToPeer("/TOP/Rcv0/Port0", "/TOP/Rcv2/Port2"); + msgSvcCtrl.addPathToPeer("/TOP/Rcv1/Port1", "/TOP/Rcv2/Port2"); + msgSvcCtrl.addPathToPeer("/TOP/Rcv2/Port2", "/TOP/Rcv0/Port0"); + msgSvcCtrl.addPathToPeer("/TOP/Rcv2/Port2", "/TOP/Rcv1/Port1"); + } + + @Test + public void testPort2Repl() { + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + + TopRTObject top = new TopRTObject("TOP"); + MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0"); + MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1"); + MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2"); + PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0); + PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5); + MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55); + + assertEquals(2, port2.getNInterfaceItems()); + + assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver()); + + assertEquals(port0.getAddress(), port2.getInterfaceItem(0).getPeerAddress()); + assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress()); + + assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath()); + assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName()); + assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath()); + assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName()); + assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath()); + assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath()); + assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath()); + + assertEquals(33, port0.getLocalId()); + assertEquals(44, port1.getLocalId()); + assertEquals(55, port2.getLocalId()); + + assertEquals(0, port0.getIdx()); + assertEquals(5, port1.getIdx()); + assertEquals(0, port2.getInterfaceItem(0).getIdx()); + assertEquals(1, port2.getInterfaceItem(1).getIdx()); + + assertEquals(eventRcv0, port0.getActor()); + assertEquals(eventRcv1, port1.getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor()); + } + + @Test + public void testRepl2Port() { + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + + TopRTObject top = new TopRTObject("TOP"); + MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0"); + MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1"); + MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2"); + MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55); + PortBase port0 = new MockPort(eventRcv0, "Port0", 33, 0); + PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5); + + assertEquals(2, port2.getNInterfaceItems()); + + assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver()); + + assertEquals(port0.getAddress(), port2.getInterfaceItem(0).getPeerAddress()); + assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress()); + + assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath()); + assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName()); + assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath()); + assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName()); + assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath()); + assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath()); + assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath()); + + assertEquals(33, port0.getLocalId()); + assertEquals(44, port1.getLocalId()); + assertEquals(55, port2.getLocalId()); + + assertEquals(0, port0.getIdx()); + assertEquals(5, port1.getIdx()); + assertEquals(0, port2.getInterfaceItem(0).getIdx()); + assertEquals(1, port2.getInterfaceItem(1).getIdx()); + + assertEquals(eventRcv0, port0.getActor()); + assertEquals(eventRcv1, port1.getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor()); + } + + @Test + public void testRepl2Repl() { + MessageServiceController msgSvcCtrl = RTServices.getInstance().getMsgSvcCtrl(); + + TopRTObject top = new TopRTObject("TOP"); + MockEventReceiver eventRcv0 = new MockEventReceiver(top, "Rcv0"); + MockEventReceiver eventRcv1 = new MockEventReceiver(top, "Rcv1"); + MockEventReceiver eventRcv2 = new MockEventReceiver(top, "Rcv2"); + MockReplicatedPort port0 = new MockReplicatedPort(eventRcv0, "Port0", 33); + PortBase port1 = new MockPort(eventRcv1, "Port1", 44, 5); + MockReplicatedPort port2 = new MockReplicatedPort(eventRcv2, "Port2", 55); + + assertEquals(1, port0.getNInterfaceItems()); + assertEquals(2, port2.getNInterfaceItems()); + + assertEquals(msgSvcCtrl.getMsgSvc(0), port0.getInterfaceItem(0).getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port1.getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(0).getMsgReceiver()); + assertEquals(msgSvcCtrl.getMsgSvc(1), port2.getInterfaceItem(1).getMsgReceiver()); + + assertEquals(port0.getInterfaceItem(0).getAddress(), port2.getInterfaceItem(0).getPeerAddress()); + assertEquals(port1.getAddress(), port2.getInterfaceItem(1).getPeerAddress()); + + assertEquals("/TOP/Rcv0/Port0", port0.getInstancePath()); + assertEquals("_TOP_Rcv0_Port0", port0.getInstancePathName()); + assertEquals("/TOP/Rcv1/Port1", port1.getInstancePath()); + assertEquals("_TOP_Rcv1_Port1", port1.getInstancePathName()); + assertEquals("/TOP/Rcv2/Port2", port2.getInstancePath()); + assertEquals("/TOP/Rcv2/Port20", port2.getInterfaceItem(0).getInstancePath()); + assertEquals("/TOP/Rcv2/Port21", port2.getInterfaceItem(1).getInstancePath()); + + assertEquals(33, port0.getLocalId()); + assertEquals(44, port1.getLocalId()); + assertEquals(55, port2.getLocalId()); + + assertEquals(0, port0.getInterfaceItem(0).getIdx()); + assertEquals(5, port1.getIdx()); + assertEquals(0, port2.getInterfaceItem(0).getIdx()); + assertEquals(1, port2.getInterfaceItem(1).getIdx()); + + assertEquals(eventRcv0, port0.getInterfaceItem(0).getActor()); + assertEquals(eventRcv1, port1.getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(0).getActor()); + assertEquals(eventRcv2, port2.getInterfaceItem(1).getActor()); + } + +} diff --git a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/TopRTObject.java b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/TopRTObject.java index 7db6f1ce1..a97eadd10 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/TopRTObject.java +++ b/tests/org.eclipse.etrice.runtime.java.tests/src/org/eclipse/etrice/runtime/java/modelbase/TopRTObject.java @@ -1,23 +1,23 @@ -/*******************************************************************************
- * Copyright (c) 2012 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.runtime.java.modelbase;
-
-import org.eclipse.etrice.runtime.java.messaging.RTObject;
-
-// TODO: pull out all Mock Objects
-class TopRTObject extends RTObject {
-
- protected TopRTObject(String name) {
- super(null, name);
- }
+/******************************************************************************* + * Copyright (c) 2012 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.runtime.java.modelbase; + +import org.eclipse.etrice.runtime.java.messaging.RTObject; + +// TODO: pull out all Mock Objects +class TopRTObject extends RTObject { + + protected TopRTObject(String name) { + super(null, name); + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.runtime.java.tests/tmp/ConfigTest b/tests/org.eclipse.etrice.runtime.java.tests/tmp/ConfigTest index ae2f8491c..af469a74a 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/tmp/ConfigTest +++ b/tests/org.eclipse.etrice.runtime.java.tests/tmp/ConfigTest @@ -1,9 +1,9 @@ -SS/AC/boolean=true
-SS/AC/booleanA={ false }
-SS/AC/double=4.0E-6
-SS/AC/doubleA={ 0.0,1.1,2.2,4.0E-6 }
-SS/AC/int=999
-SS/AC/intA={ 1,2,3,4,5,6 }
-SS/AC/long=-9223372036854775808
-SS/AC/string="test"
-SS/AC/stringA={ "\"\"","","test1" }
+SS/AC/boolean=true +SS/AC/booleanA={ false } +SS/AC/double=4.0E-6 +SS/AC/doubleA={ 0.0,1.1,2.2,4.0E-6 } +SS/AC/int=999 +SS/AC/intA={ 1,2,3,4,5,6 } +SS/AC/long=-9223372036854775808 +SS/AC/string="test" +SS/AC/stringA={ "\"\"","","test1" } diff --git a/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/.gitignore b/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/.gitignore index 74295d032..768a95400 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/.gitignore +++ b/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/.gitignore @@ -1 +1 @@ -/*.seq
+/*.seq diff --git a/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/readme.txt b/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/readme.txt index 6ddc7fb65..983f5f57c 100644 --- a/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/readme.txt +++ b/tests/org.eclipse.etrice.runtime.java.tests/tmp/log/readme.txt @@ -1 +1 @@ -the MSCLogger output is directed to this directory
+the MSCLogger output is directed to this directory diff --git a/tests/org.eclipse.etrice.test.common/.classpath b/tests/org.eclipse.etrice.test.common/.classpath index c6c8b806f..8778ddd58 100644 --- a/tests/org.eclipse.etrice.test.common/.classpath +++ b/tests/org.eclipse.etrice.test.common/.classpath @@ -1,5 +1,5 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.test.common/.project b/tests/org.eclipse.etrice.test.common/.project index 863527dba..dbf8359f1 100644 --- a/tests/org.eclipse.etrice.test.common/.project +++ b/tests/org.eclipse.etrice.test.common/.project @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.test.common</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.test.common</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.test.common/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.test.common/.settings/org.eclipse.jdt.core.prefs index 6e74ed03c..6cddd3ba4 100644 --- a/tests/org.eclipse.etrice.test.common/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.test.common/.settings/org.eclipse.jdt.core.prefs @@ -1,12 +1,12 @@ -#Mon Feb 06 15:15:37 CET 2012
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Mon Feb 06 15:15:37 CET 2012 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.test.common/scripts/test-launcher.sh b/tests/org.eclipse.etrice.test.common/scripts/test-launcher.sh index 4dc3bc42a..a1b90d145 100644 --- a/tests/org.eclipse.etrice.test.common/scripts/test-launcher.sh +++ b/tests/org.eclipse.etrice.test.common/scripts/test-launcher.sh @@ -1,146 +1,146 @@ -###############################################################################
-# Copyright (c) 2012 protos software gmbh (http://www.protos.de).
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# CONTRIBUTORS:
-# Thomas Schuetz (initial contribution)
-#
-###############################################################################
-
-#!/bin/sh
-
-TESTNAME="noname"
-RESULTFILE="noname.xml"
-
-
-##############################
-# logging
-##############################
-
-# $1=message
-function etLogger_logInfo {
- echo "INFO (test-launcher): $1"
-}
-
-# $1=message
-function etLogger_logWarning {
- echo "* WARNING (test-launcher): $1"
-}
-
-# $1=message
-function etLogger_logError {
- echo "*** ERROR (test-launcher): $1"
-}
-
-
-
-##############################
-# helpers for writing junit test report
-##############################
-
-# arguments $1 = name of testsuite
-function openTestSuite {
- TESTNAME="$1"
- RESULTFILE="$1.xml"
- echo "<testsuite name=\"$1\">" > $RESULTFILE
-}
-function closeTestSuite {
- echo "</testsuite>" >> $RESULTFILE
-}
-
-# arguments: $1=testcase name, $2=result (true or false), $3=message (only needed for result=false)
-function writeTestCase {
- if $2 ; then
- echo -e "\t<testcase name=\"$1\"/>" >> $RESULTFILE
- etLogger_logInfo "testcase $1 OK"
- else
- echo -e "\t<testcase name=\"$1\">" >> $RESULTFILE
- echo -e "\t\t<failure>$3</failure>" >> $RESULTFILE
- echo -e "\t</testcase>" >> $RESULTFILE
- etLogger_logError "testcase $1 FAILURE: $3"
- fi
-}
-
-##############################
-# execution of all testcases
-##############################
-
-#global array to pass tokenized line between functions
-declare -a LINE_TOKENS
-
-# $1=number of arguments, LINE_TOKENS is global array with arguments
-function executeOneTest {
- #check if executable test file exists
- EXECUTABLE=./${LINE_TOKENS[0]}
- if [ -e $EXECUTABLE ] ; then
- #execute test file
- $EXECUTABLE
- else
- writeTestCase "execute $EXECUTABLE" false "file $EXECUTABLE does not exist"
- return
- fi
-
- for ((i=1; i<$1; i+=2)); do
- logfile=${LINE_TOKENS[$i]}
- expected_hits=${LINE_TOKENS[$i+1]}
- #check if logfile exists
- if [ -e $logfile ] ; then
- #everything ok -> nothing to do
- etLogger_logInfo "logfile $logfile exists -> checking for testcases"
- else
- writeTestCase "logfile $logfile" false "file $logfile does not exist"
- return
- fi
-
- actual_hits=`grep -c "<testcase" $logfile`
- if (( $actual_hits == $expected_hits )); then
- writeTestCase "Check $logfile" true
- etLogger_logInfo "check OK: logfile $logfile contains $actual_hits testcases"
- else
- writeTestCase "Check $logfile" false "logfile $logfile should contain $expected_hits testcases but contains $actual_hits testcases"
- fi
- done
-}
-
-function executeAllTests {
- # redirect read
- exec 10<&0
- exec < "$TESTNAME.config"
-
- while read LINE; do
- etLogger_logInfo "parsing line: $LINE"
- counter=0
- #parse tokens from line to array
- for word in $LINE; do
- LINE_TOKENS[$counter]=$word
- let counter++
- done
-
- if (($counter > 0)); then
- #line is not empty
- if (($counter % 2 != 1)); then
- writeTestCase "CheckCounter" false "ERROR: Line has wrong number of arguments: '$LINE', Format: test-program resultfile1 expected-testcases resultfile2 expected-testcases ..."
- else
- writeTestCase "CheckCounter for ${LINE_TOKENS[0]}" true
- executeOneTest $counter
- fi
- fi
- done
-
-}
-
-
-
-##############################
-# MAIN
-##############################
-
-# $1 = name of testcase -> $1.config is expected as config file and $1.xml contains the results in JUnit format
-etLogger_logInfo "START test-launcher for test-launcher.config"
-openTestSuite $1
-executeAllTests
-closeTestSuite
-etLogger_logInfo "END test-launcher for test-launcher.config"
+############################################################################### +# Copyright (c) 2012 protos software gmbh (http://www.protos.de). +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# CONTRIBUTORS: +# Thomas Schuetz (initial contribution) +# +############################################################################### + +#!/bin/sh + +TESTNAME="noname" +RESULTFILE="noname.xml" + + +############################## +# logging +############################## + +# $1=message +function etLogger_logInfo { + echo "INFO (test-launcher): $1" +} + +# $1=message +function etLogger_logWarning { + echo "* WARNING (test-launcher): $1" +} + +# $1=message +function etLogger_logError { + echo "*** ERROR (test-launcher): $1" +} + + + +############################## +# helpers for writing junit test report +############################## + +# arguments $1 = name of testsuite +function openTestSuite { + TESTNAME="$1" + RESULTFILE="$1.xml" + echo "<testsuite name=\"$1\">" > $RESULTFILE +} +function closeTestSuite { + echo "</testsuite>" >> $RESULTFILE +} + +# arguments: $1=testcase name, $2=result (true or false), $3=message (only needed for result=false) +function writeTestCase { + if $2 ; then + echo -e "\t<testcase name=\"$1\"/>" >> $RESULTFILE + etLogger_logInfo "testcase $1 OK" + else + echo -e "\t<testcase name=\"$1\">" >> $RESULTFILE + echo -e "\t\t<failure>$3</failure>" >> $RESULTFILE + echo -e "\t</testcase>" >> $RESULTFILE + etLogger_logError "testcase $1 FAILURE: $3" + fi +} + +############################## +# execution of all testcases +############################## + +#global array to pass tokenized line between functions +declare -a LINE_TOKENS + +# $1=number of arguments, LINE_TOKENS is global array with arguments +function executeOneTest { + #check if executable test file exists + EXECUTABLE=./${LINE_TOKENS[0]} + if [ -e $EXECUTABLE ] ; then + #execute test file + $EXECUTABLE + else + writeTestCase "execute $EXECUTABLE" false "file $EXECUTABLE does not exist" + return + fi + + for ((i=1; i<$1; i+=2)); do + logfile=${LINE_TOKENS[$i]} + expected_hits=${LINE_TOKENS[$i+1]} + #check if logfile exists + if [ -e $logfile ] ; then + #everything ok -> nothing to do + etLogger_logInfo "logfile $logfile exists -> checking for testcases" + else + writeTestCase "logfile $logfile" false "file $logfile does not exist" + return + fi + + actual_hits=`grep -c "<testcase" $logfile` + if (( $actual_hits == $expected_hits )); then + writeTestCase "Check $logfile" true + etLogger_logInfo "check OK: logfile $logfile contains $actual_hits testcases" + else + writeTestCase "Check $logfile" false "logfile $logfile should contain $expected_hits testcases but contains $actual_hits testcases" + fi + done +} + +function executeAllTests { + # redirect read + exec 10<&0 + exec < "$TESTNAME.config" + + while read LINE; do + etLogger_logInfo "parsing line: $LINE" + counter=0 + #parse tokens from line to array + for word in $LINE; do + LINE_TOKENS[$counter]=$word + let counter++ + done + + if (($counter > 0)); then + #line is not empty + if (($counter % 2 != 1)); then + writeTestCase "CheckCounter" false "ERROR: Line has wrong number of arguments: '$LINE', Format: test-program resultfile1 expected-testcases resultfile2 expected-testcases ..." + else + writeTestCase "CheckCounter for ${LINE_TOKENS[0]}" true + executeOneTest $counter + fi + fi + done + +} + + + +############################## +# MAIN +############################## + +# $1 = name of testcase -> $1.config is expected as config file and $1.xml contains the results in JUnit format +etLogger_logInfo "START test-launcher for test-launcher.config" +openTestSuite $1 +executeAllTests +closeTestSuite +etLogger_logInfo "END test-launcher for test-launcher.config" diff --git a/tests/org.eclipse.etrice.test.common/test/test-launcher.config b/tests/org.eclipse.etrice.test.common/test/test-launcher.config index cbd21d4a9..2985fd9d8 100644 --- a/tests/org.eclipse.etrice.test.common/test/test-launcher.config +++ b/tests/org.eclipse.etrice.test.common/test/test-launcher.config @@ -1 +1 @@ -org.eclipse.etrice.generator.c.tests.exe tmp/testlog/TestCGenerator.xml 2 tmp/testlog/TestCRuntime.xml 9 tmp/testlog/TestEtUnitSpecial.xml 1
+org.eclipse.etrice.generator.c.tests.exe tmp/testlog/TestCGenerator.xml 2 tmp/testlog/TestCRuntime.xml 9 tmp/testlog/TestEtUnitSpecial.xml 1 diff --git a/tests/org.eclipse.etrice.test.common/test/test-launcher.xml b/tests/org.eclipse.etrice.test.common/test/test-launcher.xml index fb3854e28..e0aa8c15f 100644 --- a/tests/org.eclipse.etrice.test.common/test/test-launcher.xml +++ b/tests/org.eclipse.etrice.test.common/test/test-launcher.xml @@ -1,6 +1,6 @@ -<testsuite name="test-launcher">
- <testcase name="CheckCounter for org.eclipse.etrice.generator.c.tests.exe"/>
- <testcase name="Check tmp/testlog/TestCGenerator.xml"/>
- <testcase name="Check tmp/testlog/TestCRuntime.xml"/>
- <testcase name="Check tmp/testlog/TestEtUnitSpecial.xml"/>
-</testsuite>
+<testsuite name="test-launcher"> + <testcase name="CheckCounter for org.eclipse.etrice.generator.c.tests.exe"/> + <testcase name="Check tmp/testlog/TestCGenerator.xml"/> + <testcase name="Check tmp/testlog/TestCRuntime.xml"/> + <testcase name="Check tmp/testlog/TestEtUnitSpecial.xml"/> +</testsuite> diff --git a/tests/org.eclipse.etrice.test.common/test/tmp/msc.seq b/tests/org.eclipse.etrice.test.common/test/tmp/msc.seq index 60a7fb597..617db491a 100644 --- a/tests/org.eclipse.etrice.test.common/test/tmp/msc.seq +++ b/tests/org.eclipse.etrice.test.common/test/tmp/msc.seq @@ -1,12182 +1,12182 @@ -RunAllTestcases ==> RunAllTestcases runTestCases
-RunAllTestcases ==> etMessageQueue init
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue init
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue push
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageQueue pop
-RunAllTestcases <== etMessageQueue
-RunAllTestcases ==> etMessageService init
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService initMessagePool
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService init
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService initMessagePool
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService pushMessage
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService pushMessage
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService popMessage
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService popMessage
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService init
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService initMessagePool
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService init
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue init
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService initMessagePool
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService getMessageBuffer
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService pushMessage
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService pushMessage
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-RunAllTestcases <== etMessageService
-RunAllTestcases ==> etMessageService execute
-etMessageService ==> etMessageService deliverAllMessages
-etMessageService ==> etMessageQueue isNotEmpty
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService popMessage
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-etMessageService ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-etMessageService ==> etMessageQueue isNotEmpty
-etMessageService <== etMessageQueue
-etMessageService ==> etMessageService popMessage
-etMessageService ==> etMessageQueue pop
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-etMessageService ==> etMessageService returnMessageBuffer
-etMessageService ==> etMessageQueue push
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-etMessageService ==> etMessageQueue isNotEmpty
-etMessageService <== etMessageQueue
-etMessageService <== etMessageService
-RunAllTestcases <== etMessageService
-RunAllTestcases <== RunAllTestcases
+RunAllTestcases ==> RunAllTestcases runTestCases +RunAllTestcases ==> etMessageQueue init +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue init +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue push +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageQueue pop +RunAllTestcases <== etMessageQueue +RunAllTestcases ==> etMessageService init +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageService initMessagePool +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService init +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageService initMessagePool +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService pushMessage +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService pushMessage +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService popMessage +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService popMessage +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService init +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageService initMessagePool +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService init +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue init +etMessageService <== etMessageQueue +etMessageService ==> etMessageService initMessagePool +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService getMessageBuffer +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService pushMessage +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService pushMessage +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +RunAllTestcases <== etMessageService +RunAllTestcases ==> etMessageService execute +etMessageService ==> etMessageService deliverAllMessages +etMessageService ==> etMessageQueue isNotEmpty +etMessageService <== etMessageQueue +etMessageService ==> etMessageService popMessage +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +etMessageService <== etMessageService +etMessageService ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +etMessageService ==> etMessageQueue isNotEmpty +etMessageService <== etMessageQueue +etMessageService ==> etMessageService popMessage +etMessageService ==> etMessageQueue pop +etMessageService <== etMessageQueue +etMessageService <== etMessageService +etMessageService ==> etMessageService returnMessageBuffer +etMessageService ==> etMessageQueue push +etMessageService <== etMessageQueue +etMessageService <== etMessageService +etMessageService ==> etMessageQueue isNotEmpty +etMessageService <== etMessageQueue +etMessageService <== etMessageService +RunAllTestcases <== etMessageService +RunAllTestcases <== RunAllTestcases diff --git a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCGenerator.xml b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCGenerator.xml index 14f63325b..d9fd4e997 100644 --- a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCGenerator.xml +++ b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCGenerator.xml @@ -1,6 +1,6 @@ -<testsuites name="TestCGenerator" tests="0" failures="0" errors="0" time="0">
- <testsuite name="TestDataClass" tests="0" failures="0" errors="0" time="0">
- <testcase name="TestDataClass_Operations" time="2"/>
- <testcase name="TestDataClass_testDataClassDeepCopy" time="0"/>
- </testsuite>
-</testsuites>
+<testsuites name="TestCGenerator" tests="0" failures="0" errors="0" time="0"> + <testsuite name="TestDataClass" tests="0" failures="0" errors="0" time="0"> + <testcase name="TestDataClass_Operations" time="2"/> + <testcase name="TestDataClass_testDataClassDeepCopy" time="0"/> + </testsuite> +</testsuites> diff --git a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCRuntime.xml b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCRuntime.xml index de02b3a0b..2c6a47be8 100644 --- a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCRuntime.xml +++ b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestCRuntime.xml @@ -1,21 +1,21 @@ -<testsuites name="TestCRuntime" tests="0" failures="0" errors="0" time="0">
- <testsuite name="TestMessage" tests="0" failures="0" errors="0" time="0">
- <testcase name="TestEtMessage_testBasicMessage" time="1"/>
- </testsuite>
- <testsuite name="TestEtMessageQueue" tests="0" failures="0" errors="0" time="0">
- <testcase name="TestEtMessageQueue_testPushPop" time="0"/>
- <testcase name="TestEtMessageQueue_testMassiveMessaging" time="9"/>
- </testsuite>
- <testsuite name="TestEtMessageService" tests="0" failures="0" errors="0" time="0">
- <testcase name="TestEtMessageService_init" time="1"/>
- <testcase name="TestEtMessageService_GetPushPopReturn" time="2"/>
- <testcase name="TestEtMessageService_GetReturn" time="0"/>
- <testcase name="TestEtMessageService_execute" classname="none" time="1">
- <failure>deliverAllMessages receivedEventIDCounter: expected=3, actual=2</failure>
- </testcase>
- </testsuite>
- <testsuite name="TestEtUnit" tests="0" failures="0" errors="0" time="0">
- <testcase name="TestEtUnit_Expect_Order" time="1"/>
- <testcase name="TestEtUnit_Expect" time="1"/>
- </testsuite>
-</testsuites>
+<testsuites name="TestCRuntime" tests="0" failures="0" errors="0" time="0"> + <testsuite name="TestMessage" tests="0" failures="0" errors="0" time="0"> + <testcase name="TestEtMessage_testBasicMessage" time="1"/> + </testsuite> + <testsuite name="TestEtMessageQueue" tests="0" failures="0" errors="0" time="0"> + <testcase name="TestEtMessageQueue_testPushPop" time="0"/> + <testcase name="TestEtMessageQueue_testMassiveMessaging" time="9"/> + </testsuite> + <testsuite name="TestEtMessageService" tests="0" failures="0" errors="0" time="0"> + <testcase name="TestEtMessageService_init" time="1"/> + <testcase name="TestEtMessageService_GetPushPopReturn" time="2"/> + <testcase name="TestEtMessageService_GetReturn" time="0"/> + <testcase name="TestEtMessageService_execute" classname="none" time="1"> + <failure>deliverAllMessages receivedEventIDCounter: expected=3, actual=2</failure> + </testcase> + </testsuite> + <testsuite name="TestEtUnit" tests="0" failures="0" errors="0" time="0"> + <testcase name="TestEtUnit_Expect_Order" time="1"/> + <testcase name="TestEtUnit_Expect" time="1"/> + </testsuite> +</testsuites> diff --git a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestEtUnitSpecial.xml b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestEtUnitSpecial.xml index 8867b0a19..f319d0648 100644 --- a/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestEtUnitSpecial.xml +++ b/tests/org.eclipse.etrice.test.common/test/tmp/testlog/TestEtUnitSpecial.xml @@ -1,5 +1,5 @@ -<testsuites name="TestEtUnitSpecial" tests="0" failures="0" errors="0" time="0">
- <testsuite name="etUnit" tests="0" failures="0" errors="0" time="0">
- <testcase name="openAll and closeAll" time="0"/>
- </testsuite>
-</testsuites>
+<testsuites name="TestEtUnitSpecial" tests="0" failures="0" errors="0" time="0"> + <testsuite name="etUnit" tests="0" failures="0" errors="0" time="0"> + <testcase name="openAll and closeAll" time="0"/> + </testsuite> +</testsuites> diff --git a/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java b/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java index da3f3534e..04ed1b596 100644 --- a/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java +++ b/tests/org.eclipse.etrice.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java @@ -1,77 +1,77 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.tests.base;
-
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.LinkedList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-
-public abstract class TestBase {
-
- private String basePath;
- private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
-
- protected void loadModelFile() {
- try {
- URL modelsDir = getModelsDirectoy();
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- loadModels(getModelFileName());
- }
-
- protected void removeDiagramsDirectory() {
- File diagDir = new File(basePath+File.separator+"diagrams");
- if (diagDir.isDirectory()) {
- File[] files = diagDir.listFiles();
- if (files!=null)
- for (int i = 0; i < files.length; i++) {
- files[i].delete();
- }
- diagDir.delete();
- }
- }
-
- private void loadModels(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- Resource resource = rs.getResource(uri, true);
- Object root = resource.getContents().get(0);
- if (root instanceof RoomModel)
- models.add((RoomModel) root);
- else
- fail("File contains no RoomModel as root object");
- }
-
- public LinkedList<RoomModel> getModels() {
- return models;
- }
-
- protected abstract String getModelFileName();
- protected abstract URL getModelsDirectoy();
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.tests.base; + +import static org.junit.Assert.fail; + +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.util.LinkedList; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.resource.XtextResourceSet; + +public abstract class TestBase { + + private String basePath; + private LinkedList<RoomModel> models = new LinkedList<RoomModel>(); + + protected void loadModelFile() { + try { + URL modelsDir = getModelsDirectoy(); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + + loadModels(getModelFileName()); + } + + protected void removeDiagramsDirectory() { + File diagDir = new File(basePath+File.separator+"diagrams"); + if (diagDir.isDirectory()) { + File[] files = diagDir.listFiles(); + if (files!=null) + for (int i = 0; i < files.length; i++) { + files[i].delete(); + } + diagDir.delete(); + } + } + + private void loadModels(String modelName) { + XtextResourceSet rs = new XtextResourceSet(); + rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE); + String path = basePath + modelName; + URI uri = URI.createFileURI(path); + Resource resource = rs.getResource(uri, true); + Object root = resource.getContents().get(0); + if (root instanceof RoomModel) + models.add((RoomModel) root); + else + fail("File contains no RoomModel as root object"); + } + + public LinkedList<RoomModel> getModels() { + return models; + } + + protected abstract String getModelFileName(); + protected abstract URL getModelsDirectoy(); +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath +++ b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore b/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore +++ b/tests/org.eclipse.etrice.ui.behavior.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.project b/tests/org.eclipse.etrice.ui.behavior.tests/.project index 9b5577fbd..0b60a5db7 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/.project +++ b/tests/org.eclipse.etrice.ui.behavior.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.ui.behavior.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.ui.behavior.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.ui.behavior.tests/.settings/org.eclipse.jdt.core.prefs index 66115425c..eeaec2b96 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.ui.behavior.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Thu Feb 10 11:58:16 CET 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Thu Feb 10 11:58:16 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF index 202a36210..8d094bab3 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF @@ -1,18 +1,18 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Behavior Diagram Tests
-Bundle-SymbolicName: org.eclipse.etrice.ui.behavior.tests
-Bundle-Version: 0.3.0.qualifier
-Bundle-Activator: org.eclipse.etrice.ui.behavior.BehaviorTestActivator
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0",
- org.eclipse.etrice.ui.behavior;bundle-version="0.3.0",
- org.eclipse.etrice.ui.common;bundle-version="0.3.0",
- org.eclipse.etrice.ui.tests.base;bundle-version="0.3.0",
- org.eclipse.ui,
- org.eclipse.core.runtime,
- org.junit;bundle-version="4.8.1",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.graphiti;bundle-version="0.8.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-ActivationPolicy: lazy
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Behavior Diagram Tests +Bundle-SymbolicName: org.eclipse.etrice.ui.behavior.tests +Bundle-Version: 0.3.0.qualifier +Bundle-Activator: org.eclipse.etrice.ui.behavior.BehaviorTestActivator +Bundle-Vendor: Eclipse eTrice (Incubation) +Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0", + org.eclipse.etrice.ui.behavior;bundle-version="0.3.0", + org.eclipse.etrice.ui.common;bundle-version="0.3.0", + org.eclipse.etrice.ui.tests.base;bundle-version="0.3.0", + org.eclipse.ui, + org.eclipse.core.runtime, + org.junit;bundle-version="4.8.1", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.graphiti;bundle-version="0.8.0" +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-ActivationPolicy: lazy diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/about.html b/tests/org.eclipse.etrice.ui.behavior.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/about.html +++ b/tests/org.eclipse.etrice.ui.behavior.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/build.properties b/tests/org.eclipse.etrice.ui.behavior.tests/build.properties index 41eb6ade2..34d2e4d2d 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/build.properties +++ b/tests/org.eclipse.etrice.ui.behavior.tests/build.properties @@ -1,4 +1,4 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/FlatStateMachine.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/FlatStateMachine.room index f1ed2b4b6..9fd09be03 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/models/FlatStateMachine.room +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/FlatStateMachine.room @@ -1,67 +1,67 @@ -RoomModel ActorClassWithPorts {
- ActorClass MyActorClass {
- Interface {
- Port ip : MyProtocol
- Port xp : MyProtocol
- }
- Structure {
- external Port xp
- conjugated Port sp : MyProtocol
- }
- Behavior {
- StateMachine {
- Transition init: initial -> state1 {
- action {
- "//initial"
- }
- }
- Transition tr0: my tp -> my tp {
- triggers {
- <in2: xp>
- }
- }
- Transition tr1: state1 -> cp cp0 {
- triggers {
- <out1: sp>
- }
- }
- Transition tr2: cp cp0 -> elseState {
- }
- Transition tr3: cp cp0 -> ifState {
- cond {
- "true"
- }
- }
- Transition tr4: state1 -> ifState {
- triggers {
- <in1: xp>
- }
- }
- ChoicePoint cp0
- TransitionPoint tp
- State state1 {
- entry {
- "//entry"
- }
- exit {
- "//exit"
- }
- }
- State elseState {
- }
- State ifState {
- }
- }
- }
- }
-
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
+RoomModel ActorClassWithPorts { + ActorClass MyActorClass { + Interface { + Port ip : MyProtocol + Port xp : MyProtocol + } + Structure { + external Port xp + conjugated Port sp : MyProtocol + } + Behavior { + StateMachine { + Transition init: initial -> state1 { + action { + "//initial" + } + } + Transition tr0: my tp -> my tp { + triggers { + <in2: xp> + } + } + Transition tr1: state1 -> cp cp0 { + triggers { + <out1: sp> + } + } + Transition tr2: cp cp0 -> elseState { + } + Transition tr3: cp cp0 -> ifState { + cond { + "true" + } + } + Transition tr4: state1 -> ifState { + triggers { + <in1: xp> + } + } + ChoicePoint cp0 + TransitionPoint tp + State state1 { + entry { + "//entry" + } + exit { + "//exit" + } + } + State elseState { + } + State ifState { + } + } + } + } + + ProtocolClass MyProtocol { + incoming { + Message in1 () + Message in2 () + } + outgoing { + Message out1 () + } + } }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room index e62059df3..4afd5c530 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/HierarchicalStateMachine.room @@ -1,88 +1,88 @@ -RoomModel ActorClassWithPorts {
- ActorClass MyActorClass {
- Interface {
- Port ip: MyProtocol
- Port xp: MyProtocol
- }
- Structure {
- external Port xp
- conjugated Port sp: MyProtocol
- }
- Behavior {
- StateMachine {
- Transition tr0: my tptop -> my tptop {
- triggers {
- <in2: xp>
- }
- }
- Transition tr1: state1 -> cp cp0 {
- triggers {
- <out1: sp>
- }
- }
- Transition tr2: cp cp0 -> elseState {
- }
- Transition tr3: cp cp0 -> ifState {
- cond {
- "true"
- }
- }
- Transition init: initial -> enter of state1 {
- }
- Transition tr4: leave of state1 -> ifState {
- }
- ChoicePoint cp0
- TransitionPoint tptop
- State state1 {
- entry {
- "//entry"
- }
- exit {
- "//exit"
- }
- subgraph {
- Transition tr0: my tp -> my tp {
- triggers {
- <in1: xp>
- }
- }
- Transition tr1: second -> my leave {
- triggers {
- <in2: xp>
- }
- }
- Transition tr2: first -> second {
- triggers {
- <out1: sp>
- }
- }
- Transition tr3: my enter -> first {
- }
- EntryPoint enter
- ExitPoint leave
- TransitionPoint tp
- State first {
- }
- State second {
- }
- }
- }
- State elseState {
- }
- State ifState {
- }
- }
- }
- }
-
- ProtocolClass MyProtocol {
- incoming {
- Message in1()
- Message in2()
- }
- outgoing {
- Message out1()
- }
- }
-
+RoomModel ActorClassWithPorts { + ActorClass MyActorClass { + Interface { + Port ip: MyProtocol + Port xp: MyProtocol + } + Structure { + external Port xp + conjugated Port sp: MyProtocol + } + Behavior { + StateMachine { + Transition tr0: my tptop -> my tptop { + triggers { + <in2: xp> + } + } + Transition tr1: state1 -> cp cp0 { + triggers { + <out1: sp> + } + } + Transition tr2: cp cp0 -> elseState { + } + Transition tr3: cp cp0 -> ifState { + cond { + "true" + } + } + Transition init: initial -> enter of state1 { + } + Transition tr4: leave of state1 -> ifState { + } + ChoicePoint cp0 + TransitionPoint tptop + State state1 { + entry { + "//entry" + } + exit { + "//exit" + } + subgraph { + Transition tr0: my tp -> my tp { + triggers { + <in1: xp> + } + } + Transition tr1: second -> my leave { + triggers { + <in2: xp> + } + } + Transition tr2: first -> second { + triggers { + <out1: sp> + } + } + Transition tr3: my enter -> first { + } + EntryPoint enter + ExitPoint leave + TransitionPoint tp + State first { + } + State second { + } + } + } + State elseState { + } + State ifState { + } + } + } + } + + ProtocolClass MyProtocol { + incoming { + Message in1() + Message in2() + } + outgoing { + Message out1() + } + } + }
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/InheritedStateMachine.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/InheritedStateMachine.room index c2b2ddeff..c7e0cb6e9 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/models/InheritedStateMachine.room +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/InheritedStateMachine.room @@ -1,92 +1,92 @@ -RoomModel InheritedStateMachine {
-
- ActorClass Base {
- Interface {
- Port p0: PC
- }
- Structure {
- external Port p0
- }
- Behavior {
- StateMachine {
- Transition init: initial -> b0 { }
- Transition tr0: b0 -> cp cp0 {
- triggers {
- <x: p0>
- }
- }
- Transition tr1: cp cp0 -> b2
- Transition tr2: cp cp0 -> tp0 of b1 {
- cond {
- "true"
- }
- }
- Transition tr3: tp1 of b1 -> b2
- ChoicePoint cp0
- TransitionPoint tp0
- State b0
- State b1 {
- subgraph {
- EntryPoint tp0
- ExitPoint tp1
- }
- }
- State b2
- }
- }
- }
-
- ActorClass Derived extends Base {
- Structure { }
- Behavior {
- StateMachine {
- RefinedState b1 {
- subgraph {
- Transition tr0: my tp0 -> d11
- Transition tr1: d11 -> my tp1 {
- triggers {
- <x: p0>
- }
- }
- State d11
- }
- }
- RefinedState b2 {
- subgraph {
- State d21
- }
- }
- }
- }
- }
-
- ActorClass DoubleDerived extends Derived {
- Structure { }
- Behavior {
- StateMachine {
- RefinedState b1 {
- subgraph {
- RefinedState d11 {
- subgraph {
- State dd111
- }
- }
- State dd12
- State dd13
- }
- }
- RefinedState b2 {
- subgraph {
- State xt2
- RefinedState d21 {
- subgraph {
- State dd211
- }
- }
- }
- }
- }
- }
+RoomModel InheritedStateMachine { + + ActorClass Base { + Interface { + Port p0: PC + } + Structure { + external Port p0 + } + Behavior { + StateMachine { + Transition init: initial -> b0 { } + Transition tr0: b0 -> cp cp0 { + triggers { + <x: p0> + } + } + Transition tr1: cp cp0 -> b2 + Transition tr2: cp cp0 -> tp0 of b1 { + cond { + "true" + } + } + Transition tr3: tp1 of b1 -> b2 + ChoicePoint cp0 + TransitionPoint tp0 + State b0 + State b1 { + subgraph { + EntryPoint tp0 + ExitPoint tp1 + } + } + State b2 + } + } + } + + ActorClass Derived extends Base { + Structure { } + Behavior { + StateMachine { + RefinedState b1 { + subgraph { + Transition tr0: my tp0 -> d11 + Transition tr1: d11 -> my tp1 { + triggers { + <x: p0> + } + } + State d11 + } + } + RefinedState b2 { + subgraph { + State d21 + } + } + } + } + } + + ActorClass DoubleDerived extends Derived { + Structure { } + Behavior { + StateMachine { + RefinedState b1 { + subgraph { + RefinedState d11 { + subgraph { + State dd111 + } + } + State dd12 + State dd13 + } + } + RefinedState b2 { + subgraph { + State xt2 + RefinedState d21 { + subgraph { + State dd211 + } + } + } + } + } + } } ActorClass Base2 { @@ -113,13 +113,13 @@ RoomModel InheritedStateMachine { } } - ProtocolClass PC {
- incoming {
- Message x()
- }
- outgoing {
- Message x()
- }
- }
-
+ ProtocolClass PC { + incoming { + Message x() + } + outgoing { + Message x() + } + } + } diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/org.eclipse.etrice.ui.behavior.tests.launch b/tests/org.eclipse.etrice.ui.behavior.tests/org.eclipse.etrice.ui.behavior.tests.launch index f0dbd741e..6f43ef7af 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/org.eclipse.etrice.ui.behavior.tests.launch +++ b/tests/org.eclipse.etrice.ui.behavior.tests/org.eclipse.etrice.ui.behavior.tests.launch @@ -1,47 +1,47 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bad_container_name" value="\org.eclipse.etrice.ui..tests"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.generator.tests,org.eclipse.etrice.ui.structure.tests"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.ui.behavior.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.ui.behavior.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.ui.behavior.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.platform.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<stringAttribute key="selected_target_plugins" value="com.google.guava@default:default,com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,javax.annotation@default:default,javax.el@default:default,javax.inject@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util.gui@default:default,org.apache.batik.util@default:default,org.apache.commons.cli@default:default,org.apache.commons.codec@default:default,org.apache.commons.httpclient@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging@default:default,org.apache.jasper.glassfish@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.eclipse.ant.core@default:default,org.eclipse.ant.launching@default:default,org.eclipse.ant.ui@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare.win32@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.cvs@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.converter@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.ds@default:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.pattern@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help.webapp@default:default,org.eclipse.help@default:default,org.eclipse.jdt.annotation@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jetty.continuation@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.jsch.core@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.pde.api.tools@default:default,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.pde.ds.core@default:default,org.eclipse.pde.ds.ui@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.pde.launching@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.pde.ui@default:default,org.eclipse.pde@default:default,org.eclipse.platform.doc.isv@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.sdk@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.cvs.core@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xsd@default:default,org.eclipse.xtend.lib@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.activities@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.edit@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit4@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.smap@default:default,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit4@default:default,org.objectweb.asm@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil*1.0.1.v200903091627@default:default,org.w3c.dom.svg@default:default"/>
-<stringAttribute key="selected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior@default:default,org.eclipse.etrice.core.config.tests@default:default,org.eclipse.etrice.core.config.ui@default:default,org.eclipse.etrice.core.config@default:default,org.eclipse.etrice.core.genmodel.tests@default:default,org.eclipse.etrice.core.genmodel@default:default,org.eclipse.etrice.core.room.tests@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.doc@default:default,org.eclipse.etrice.etunit.converter.tests@default:default,org.eclipse.etrice.etunit.converter@default:default,org.eclipse.etrice.generator.c@default:default,org.eclipse.etrice.generator.doc@default:default,org.eclipse.etrice.generator.java@default:default,org.eclipse.etrice.generator.launch.c@default:default,org.eclipse.etrice.generator.launch.java@default:default,org.eclipse.etrice.generator.launch@default:default,org.eclipse.etrice.generator@default:default,org.eclipse.etrice.logging@default:false,org.eclipse.etrice.ui.behavior.tests@default:default,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.etrice.ui.commands@default:default,org.eclipse.etrice.ui.common@default:default,org.eclipse.etrice.ui.runtime@default:default,org.eclipse.etrice.ui.structure@default:default,org.eclipse.etrice.ui.tests.base@default:default"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bad_container_name" value="\org.eclipse.etrice.ui..tests"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.generator.tests,org.eclipse.etrice.ui.structure.tests"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.ui.behavior.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.ui.behavior.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.ui.behavior.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.platform.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<stringAttribute key="selected_target_plugins" value="com.google.guava@default:default,com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,javax.annotation@default:default,javax.el@default:default,javax.inject@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util.gui@default:default,org.apache.batik.util@default:default,org.apache.commons.cli@default:default,org.apache.commons.codec@default:default,org.apache.commons.httpclient@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging@default:default,org.apache.jasper.glassfish@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.eclipse.ant.core@default:default,org.eclipse.ant.launching@default:default,org.eclipse.ant.ui@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare.win32@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.cvs@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.converter@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.ds@default:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.pattern@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help.webapp@default:default,org.eclipse.help@default:default,org.eclipse.jdt.annotation@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jetty.continuation@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.jsch.core@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.pde.api.tools@default:default,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.pde.ds.core@default:default,org.eclipse.pde.ds.ui@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.pde.launching@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.pde.ui@default:default,org.eclipse.pde@default:default,org.eclipse.platform.doc.isv@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.sdk@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.cvs.core@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xsd@default:default,org.eclipse.xtend.lib@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.activities@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.edit@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit4@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.smap@default:default,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit4@default:default,org.objectweb.asm@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil*1.0.1.v200903091627@default:default,org.w3c.dom.svg@default:default"/> +<stringAttribute key="selected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior@default:default,org.eclipse.etrice.core.config.tests@default:default,org.eclipse.etrice.core.config.ui@default:default,org.eclipse.etrice.core.config@default:default,org.eclipse.etrice.core.genmodel.tests@default:default,org.eclipse.etrice.core.genmodel@default:default,org.eclipse.etrice.core.room.tests@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.doc@default:default,org.eclipse.etrice.etunit.converter.tests@default:default,org.eclipse.etrice.etunit.converter@default:default,org.eclipse.etrice.generator.c@default:default,org.eclipse.etrice.generator.doc@default:default,org.eclipse.etrice.generator.java@default:default,org.eclipse.etrice.generator.launch.c@default:default,org.eclipse.etrice.generator.launch.java@default:default,org.eclipse.etrice.generator.launch@default:default,org.eclipse.etrice.generator@default:default,org.eclipse.etrice.logging@default:false,org.eclipse.etrice.ui.behavior.tests@default:default,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.etrice.ui.commands@default:default,org.eclipse.etrice.ui.common@default:default,org.eclipse.etrice.ui.runtime@default:default,org.eclipse.etrice.ui.structure@default:default,org.eclipse.etrice.ui.tests.base@default:default"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/BehaviorTestActivator.java b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/BehaviorTestActivator.java index 021561a69..bf0b31a69 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/BehaviorTestActivator.java +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/BehaviorTestActivator.java @@ -1,50 +1,50 @@ -package org.eclipse.etrice.ui.behavior;
-
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class BehaviorTestActivator extends AbstractUIPlugin {
-
- // The plug-in ID
- public static final String PLUGIN_ID = "org.eclipse.etrice.ui.behavior.tests"; //$NON-NLS-1$
-
- // The shared instance
- private static BehaviorTestActivator plugin;
-
- /**
- * The constructor
- */
- public BehaviorTestActivator() {
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext context) throws Exception {
- plugin = null;
- super.stop(context);
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static BehaviorTestActivator getDefault() {
- return plugin;
- }
-
-}
+package org.eclipse.etrice.ui.behavior; + +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.osgi.framework.BundleContext; + +/** + * The activator class controls the plug-in life cycle + */ +public class BehaviorTestActivator extends AbstractUIPlugin { + + // The plug-in ID + public static final String PLUGIN_ID = "org.eclipse.etrice.ui.behavior.tests"; //$NON-NLS-1$ + + // The shared instance + private static BehaviorTestActivator plugin; + + /** + * The constructor + */ + public BehaviorTestActivator() { + } + + /* + * (non-Javadoc) + * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) + */ + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + } + + /* + * (non-Javadoc) + * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) + */ + public void stop(BundleContext context) throws Exception { + plugin = null; + super.stop(context); + } + + /** + * Returns the shared instance + * + * @return the shared instance + */ + public static BehaviorTestActivator getDefault() { + return plugin; + } + +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/AbstractStateMachineTest.java b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/AbstractStateMachineTest.java index ac8bf0cde..9b90ba618 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/AbstractStateMachineTest.java +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/AbstractStateMachineTest.java @@ -1,173 +1,173 @@ -/*******************************************************************************
- * Copyright (c) 2011 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.behavior.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.net.URL;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ChoicePoint;
-import org.eclipse.etrice.core.room.EntryPoint;
-import org.eclipse.etrice.core.room.ExitPoint;
-import org.eclipse.etrice.core.room.InitialTransition;
-import org.eclipse.etrice.core.room.RefinedState;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.core.room.StateGraphItem;
-import org.eclipse.etrice.core.room.TrPoint;
-import org.eclipse.etrice.core.room.Transition;
-import org.eclipse.etrice.core.room.TransitionPoint;
-import org.eclipse.etrice.tests.base.TestBase;
-import org.eclipse.etrice.ui.behavior.BehaviorTestActivator;
-import org.eclipse.etrice.ui.behavior.support.StateSupport;
-import org.eclipse.etrice.ui.behavior.support.TrPointSupport;
-import org.eclipse.graphiti.mm.algorithms.Ellipse;
-import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm;
-import org.eclipse.graphiti.mm.algorithms.Rectangle;
-import org.eclipse.graphiti.mm.algorithms.RoundedRectangle;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.PictogramElement;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-
-/**
- * base class for state machine tests
- *
- * @author Henrik Rentz-Reichert - API and initial contribution
- */
-public abstract class AbstractStateMachineTest extends TestBase {
-
- /**
- * test general conditions for state graphs
- * @param diagram the diagram
- * @param sg the state graph to test
- */
- protected void testStateGraph(Diagram diagram, StateGraph sg) {
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
- assertTrue("diagram bo is actor class", bo instanceof ActorClass);
-
- ActorClass ac = (ActorClass) bo;
-
- boolean hasInitialTransition = false;
- for (Transition trans : sg.getTransitions()) {
- if (trans instanceof InitialTransition) {
- hasInitialTransition = true;
- break;
- }
- }
- List<PictogramElement> elements = Graphiti.getLinkService().getPictogramElements(diagram, sg);
- assertEquals("PEs for our state graph: sg and initial point", hasInitialTransition? 2:1, elements.size());
-
- for (State s : sg.getStates()) {
- elements = Graphiti.getLinkService().getPictogramElements(diagram, s);
- assertEquals("PEs for our state", 1, elements.size());
- assertTrue("PE is shape", elements.get(0) instanceof Shape);
- checkStateGAs(ac, s, (Shape) elements.get(0));
- }
-
- for (ChoicePoint cp : sg.getChPoints()) {
- elements = Graphiti.getLinkService().getPictogramElements(diagram, cp);
- assertEquals("PEs for our cp", 1, elements.size());
- assertTrue("PE is shape", elements.get(0) instanceof Shape);
- }
-
- for (TrPoint tp : sg.getTrPoints()) {
- elements = Graphiti.getLinkService().getPictogramElements(diagram, tp);
- assertEquals("PEs for our tp", (tp instanceof TransitionPoint)? 1:2, elements.size());
- assertTrue("PE is shape", elements.get(0) instanceof Shape);
- checkTrpGAs(ac, tp, (Shape) elements.get(0));
- }
-
- for (Transition trans : sg.getTransitions()) {
- elements = Graphiti.getLinkService().getPictogramElements(diagram, trans);
- assertEquals("PEs for our transition", 1, elements.size());
- }
- }
-
- /**
- * test general conditions for states
- *
- * @param ac actor class
- * @param s the state to test
- * @param shape the state's shape
- */
- private void checkStateGAs(ActorClass ac, State s, Shape shape) {
- assertNotNull("ga is there (invisible rectangle)", shape.getGraphicsAlgorithm());
- assertTrue("ga is rounded rectangle", shape.getGraphicsAlgorithm() instanceof Rectangle);
- assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getFilled());
- assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getLineVisible());
- assertEquals("border rect", 1, shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size());
- GraphicsAlgorithm borderRect = shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0);
- assertTrue("border rect is rounded rectangle", borderRect instanceof RoundedRectangle);
- if (isInherited(ac,s))
- assertTrue("border rect background", isEqual(borderRect.getForeground(), StateSupport.INHERITED_COLOR));
- else
- assertTrue("border rect background", isEqual(borderRect.getForeground(), StateSupport.LINE_COLOR));
- }
-
- /**
- * test general conditions for transition points
- *
- * @param ac actor class
- * @param tp the transition point to test
- * @param shape the state's shape
- */
- private void checkTrpGAs(ActorClass ac, TrPoint tp, Shape shape) {
- assertNotNull("ga is there (invisible rectangle)", shape.getGraphicsAlgorithm());
- assertTrue("ga is ellipse", shape.getGraphicsAlgorithm() instanceof Rectangle);
- assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getFilled());
- assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getLineVisible());
- int nga = 1;
- if (tp instanceof EntryPoint)
- nga = 3;
- else if (tp instanceof ExitPoint)
- nga = 2;
- assertEquals("border rect", nga, shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size());
- GraphicsAlgorithm borderRect = shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0);
- assertTrue("border rect is rounded rectangle", borderRect instanceof Ellipse);
- if (isInherited(ac,tp))
- assertTrue("border rect background", isEqual(borderRect.getForeground(), TrPointSupport.INHERITED_COLOR));
- else
- assertTrue("border rect background", isEqual(borderRect.getForeground(), TrPointSupport.DARK_COLOR));
- }
-
- /**
- * compute inheritance
- *
- * @param ac actor class
- * @param item state graph item
- * @return true if state graph item is not owned by the given actor class
- */
- private boolean isInherited(ActorClass ac, StateGraphItem item) {
- if (item instanceof RefinedState)
- return true;
-
- EObject owner = item.eContainer();
- while (owner!=null) {
- if (owner instanceof ActorClass)
- break;
- owner = owner.eContainer();
- }
- return ac!=owner;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy()
- */
- @Override
- protected URL getModelsDirectoy() {
- return BehaviorTestActivator.getDefault().getBundle().getEntry("models");
- }
-}
+/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ + +package org.eclipse.etrice.ui.behavior.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.net.URL; +import java.util.List; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.ChoicePoint; +import org.eclipse.etrice.core.room.EntryPoint; +import org.eclipse.etrice.core.room.ExitPoint; +import org.eclipse.etrice.core.room.InitialTransition; +import org.eclipse.etrice.core.room.RefinedState; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.core.room.StateGraphItem; +import org.eclipse.etrice.core.room.TrPoint; +import org.eclipse.etrice.core.room.Transition; +import org.eclipse.etrice.core.room.TransitionPoint; +import org.eclipse.etrice.tests.base.TestBase; +import org.eclipse.etrice.ui.behavior.BehaviorTestActivator; +import org.eclipse.etrice.ui.behavior.support.StateSupport; +import org.eclipse.etrice.ui.behavior.support.TrPointSupport; +import org.eclipse.graphiti.mm.algorithms.Ellipse; +import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm; +import org.eclipse.graphiti.mm.algorithms.Rectangle; +import org.eclipse.graphiti.mm.algorithms.RoundedRectangle; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.PictogramElement; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; + +/** + * base class for state machine tests + * + * @author Henrik Rentz-Reichert - API and initial contribution + */ +public abstract class AbstractStateMachineTest extends TestBase { + + /** + * test general conditions for state graphs + * @param diagram the diagram + * @param sg the state graph to test + */ + protected void testStateGraph(Diagram diagram, StateGraph sg) { + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + assertTrue("diagram bo is actor class", bo instanceof ActorClass); + + ActorClass ac = (ActorClass) bo; + + boolean hasInitialTransition = false; + for (Transition trans : sg.getTransitions()) { + if (trans instanceof InitialTransition) { + hasInitialTransition = true; + break; + } + } + List<PictogramElement> elements = Graphiti.getLinkService().getPictogramElements(diagram, sg); + assertEquals("PEs for our state graph: sg and initial point", hasInitialTransition? 2:1, elements.size()); + + for (State s : sg.getStates()) { + elements = Graphiti.getLinkService().getPictogramElements(diagram, s); + assertEquals("PEs for our state", 1, elements.size()); + assertTrue("PE is shape", elements.get(0) instanceof Shape); + checkStateGAs(ac, s, (Shape) elements.get(0)); + } + + for (ChoicePoint cp : sg.getChPoints()) { + elements = Graphiti.getLinkService().getPictogramElements(diagram, cp); + assertEquals("PEs for our cp", 1, elements.size()); + assertTrue("PE is shape", elements.get(0) instanceof Shape); + } + + for (TrPoint tp : sg.getTrPoints()) { + elements = Graphiti.getLinkService().getPictogramElements(diagram, tp); + assertEquals("PEs for our tp", (tp instanceof TransitionPoint)? 1:2, elements.size()); + assertTrue("PE is shape", elements.get(0) instanceof Shape); + checkTrpGAs(ac, tp, (Shape) elements.get(0)); + } + + for (Transition trans : sg.getTransitions()) { + elements = Graphiti.getLinkService().getPictogramElements(diagram, trans); + assertEquals("PEs for our transition", 1, elements.size()); + } + } + + /** + * test general conditions for states + * + * @param ac actor class + * @param s the state to test + * @param shape the state's shape + */ + private void checkStateGAs(ActorClass ac, State s, Shape shape) { + assertNotNull("ga is there (invisible rectangle)", shape.getGraphicsAlgorithm()); + assertTrue("ga is rounded rectangle", shape.getGraphicsAlgorithm() instanceof Rectangle); + assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getFilled()); + assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getLineVisible()); + assertEquals("border rect", 1, shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size()); + GraphicsAlgorithm borderRect = shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0); + assertTrue("border rect is rounded rectangle", borderRect instanceof RoundedRectangle); + if (isInherited(ac,s)) + assertTrue("border rect background", isEqual(borderRect.getForeground(), StateSupport.INHERITED_COLOR)); + else + assertTrue("border rect background", isEqual(borderRect.getForeground(), StateSupport.LINE_COLOR)); + } + + /** + * test general conditions for transition points + * + * @param ac actor class + * @param tp the transition point to test + * @param shape the state's shape + */ + private void checkTrpGAs(ActorClass ac, TrPoint tp, Shape shape) { + assertNotNull("ga is there (invisible rectangle)", shape.getGraphicsAlgorithm()); + assertTrue("ga is ellipse", shape.getGraphicsAlgorithm() instanceof Rectangle); + assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getFilled()); + assertFalse("ga is invisible", shape.getGraphicsAlgorithm().getLineVisible()); + int nga = 1; + if (tp instanceof EntryPoint) + nga = 3; + else if (tp instanceof ExitPoint) + nga = 2; + assertEquals("border rect", nga, shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size()); + GraphicsAlgorithm borderRect = shape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0); + assertTrue("border rect is rounded rectangle", borderRect instanceof Ellipse); + if (isInherited(ac,tp)) + assertTrue("border rect background", isEqual(borderRect.getForeground(), TrPointSupport.INHERITED_COLOR)); + else + assertTrue("border rect background", isEqual(borderRect.getForeground(), TrPointSupport.DARK_COLOR)); + } + + /** + * compute inheritance + * + * @param ac actor class + * @param item state graph item + * @return true if state graph item is not owned by the given actor class + */ + private boolean isInherited(ActorClass ac, StateGraphItem item) { + if (item instanceof RefinedState) + return true; + + EObject owner = item.eContainer(); + while (owner!=null) { + if (owner instanceof ActorClass) + break; + owner = owner.eContainer(); + } + return ac!=owner; + } + + /* (non-Javadoc) + * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy() + */ + @Override + protected URL getModelsDirectoy() { + return BehaviorTestActivator.getDefault().getBundle().getEntry("models"); + } +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestFlatStateMachine.java b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestFlatStateMachine.java index a4512821d..8045b1a70 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestFlatStateMachine.java +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestFlatStateMachine.java @@ -1,83 +1,83 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.behavior.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.ui.behavior.DiagramAccess;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * unit test of a flat state machine (defined by FlatStateMachine.room)
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestFlatStateMachine extends AbstractStateMachineTest {
-
- @Before
- public void setUp() {
- loadModelFile();
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "FlatStateMachine.room";
- }
-
- @Test
- public void checkModel() {
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size());
- }
-
- @Test
- public void testActorClass() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- assertEquals("diagram children", 1, diagram.getChildren().size());
-
- Shape shape = diagram.getChildren().get(0);
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
-
- @Test
- public void testSGItems() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- Shape shape = diagram.getChildren().get(0);
- StateGraph sg = (StateGraph) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- testStateGraph(diagram, sg);
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.behavior.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.ui.behavior.DiagramAccess; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * unit test of a flat state machine (defined by FlatStateMachine.room) + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestFlatStateMachine extends AbstractStateMachineTest { + + @Before + public void setUp() { + loadModelFile(); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "FlatStateMachine.room"; + } + + @Test + public void checkModel() { + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size()); + } + + @Test + public void testActorClass() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + assertEquals("diagram children", 1, diagram.getChildren().size()); + + Shape shape = diagram.getChildren().get(0); + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + + @Test + public void testSGItems() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + Shape shape = diagram.getChildren().get(0); + StateGraph sg = (StateGraph) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + testStateGraph(diagram, sg); + } +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestHierarchicalStateMachine.java b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestHierarchicalStateMachine.java index b37ca30ca..1036a0b7d 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestHierarchicalStateMachine.java +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestHierarchicalStateMachine.java @@ -1,91 +1,91 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.behavior.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.ui.behavior.DiagramAccess;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * unit test of a hierarchical state machine (defined by HierarchicalStateMachine.room)
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestHierarchicalStateMachine extends AbstractStateMachineTest {
-
- @Before
- public void setUp() {
- loadModelFile();
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "HierarchicalStateMachine.room";
- }
-
- @Test
- public void checkModel() {
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size());
- }
-
- @Test
- public void testActorClass() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // top and one sub state graph
- assertEquals("diagram children", 2, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- @Test
- public void testSGItems() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
- StateGraph sg = ac.getStateMachine();
- testStateGraph(diagram, sg);
-
- for (State s : sg.getStates()) {
- if (s.getSubgraph()!=null)
- testStateGraph(diagram, s.getSubgraph());
- }
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.behavior.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.ui.behavior.DiagramAccess; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * unit test of a hierarchical state machine (defined by HierarchicalStateMachine.room) + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestHierarchicalStateMachine extends AbstractStateMachineTest { + + @Before + public void setUp() { + loadModelFile(); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "HierarchicalStateMachine.room"; + } + + @Test + public void checkModel() { + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size()); + } + + @Test + public void testActorClass() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // top and one sub state graph + assertEquals("diagram children", 2, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + @Test + public void testSGItems() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + StateGraph sg = ac.getStateMachine(); + testStateGraph(diagram, sg); + + for (State s : sg.getStates()) { + if (s.getSubgraph()!=null) + testStateGraph(diagram, s.getSubgraph()); + } + } +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestInheritedStateMachine.java b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestInheritedStateMachine.java index ebc91238f..a54a446b9 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestInheritedStateMachine.java +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/behavior/commands/TestInheritedStateMachine.java @@ -1,194 +1,194 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.behavior.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.State;
-import org.eclipse.etrice.core.room.StateGraph;
-import org.eclipse.etrice.ui.behavior.DiagramAccess;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * unit test of a hierarchical state machine (defined by HierarchicalStateMachine.room)
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- *
- */
-public class TestInheritedStateMachine extends AbstractStateMachineTest {
-
- @Before
- public void setUp() {
- loadModelFile();
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "InheritedStateMachine.room";
- }
-
- @Test
- public void checkModel() {
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 5, getModels().get(0).getActorClasses().size());
- }
-
- @Test
- public void testBaseClass() {
- ActorClass ac = getActorClass("Base");
- assertTrue("actor class Base present in model", ac!=null);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // have to use the actor class from the diagram since this is another instance
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
-
- testSGItems(ac.getStateMachine(), diagram);
-
- // top and one sub state graph
- assertEquals("diagram children", 2, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- @Test
- public void testDerivedClass() {
- ActorClass ac = getActorClass("Derived");
- assertTrue("actor class Derived present in model", ac!=null);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // have to use the actor class from the diagram since this is another instance
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
- assertTrue("is derived", ac.getBase()!=null);
- assertTrue("extends Base", ac.getBase().getName().equals("Base"));
-
- testSGItems(ac.getStateMachine(), diagram);
-
- // top and two sub state graph
- assertEquals("diagram children", 3, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- @Test
- public void testDoubleDerivedClass() {
- ActorClass ac = getActorClass("DoubleDerived");
- assertTrue("actor class DoubleDerived present in model", ac!=null);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // have to use the actor class from the diagram since this is another instance
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
- assertTrue("is derived", ac.getBase()!=null);
- assertTrue("extends Base", ac.getBase().getName().equals("Derived"));
-
- testSGItems(ac.getStateMachine(), diagram);
-
- // top and four sub state graph
- assertEquals("diagram children", 5, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- @Test
- public void testBase2Class() {
- ActorClass ac = getActorClass("Base2");
- assertTrue("actor class Base2 present in model", ac!=null);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // have to use the actor class from the diagram since this is another instance
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
-
- testSGItems(ac.getStateMachine(), diagram);
-
- // top and one sub state graph
- assertEquals("diagram children", 2, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- @Test
- public void testDerived2Class() {
- ActorClass ac = getActorClass("Derived2");
- assertTrue("actor class Derived2 present in model", ac!=null);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- // have to use the actor class from the diagram since this is another instance
- ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram);
- assertTrue("is derived", ac.getBase()!=null);
- assertTrue("extends Base2", ac.getBase().getName().equals("Base2"));
-
- testSGItems(ac.getStateMachine(), diagram);
-
- // top and one sub state graph
- assertEquals("diagram children", 2, diagram.getChildren().size());
-
- for (Shape shape : diagram.getChildren()) {
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is StateGraph", bo instanceof StateGraph);
- }
- }
-
- public void testSGItems(StateGraph sg, Diagram diagram) {
-
- testStateGraph(diagram, sg);
-
- for (State s : sg.getStates()) {
- if (s.getSubgraph()!=null)
- testSGItems(s.getSubgraph(), diagram);
- }
- }
-
- private ActorClass getActorClass(String name) {
- for (ActorClass ac : getModels().get(0).getActorClasses()) {
- if (ac.getName().equals(name))
- return ac;
- }
- return null;
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.behavior.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.State; +import org.eclipse.etrice.core.room.StateGraph; +import org.eclipse.etrice.ui.behavior.DiagramAccess; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * unit test of a hierarchical state machine (defined by HierarchicalStateMachine.room) + * + * @author Henrik Rentz-Reichert initial contribution and API + * + */ +public class TestInheritedStateMachine extends AbstractStateMachineTest { + + @Before + public void setUp() { + loadModelFile(); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "InheritedStateMachine.room"; + } + + @Test + public void checkModel() { + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 5, getModels().get(0).getActorClasses().size()); + } + + @Test + public void testBaseClass() { + ActorClass ac = getActorClass("Base"); + assertTrue("actor class Base present in model", ac!=null); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // have to use the actor class from the diagram since this is another instance + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + + testSGItems(ac.getStateMachine(), diagram); + + // top and one sub state graph + assertEquals("diagram children", 2, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + @Test + public void testDerivedClass() { + ActorClass ac = getActorClass("Derived"); + assertTrue("actor class Derived present in model", ac!=null); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // have to use the actor class from the diagram since this is another instance + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + assertTrue("is derived", ac.getBase()!=null); + assertTrue("extends Base", ac.getBase().getName().equals("Base")); + + testSGItems(ac.getStateMachine(), diagram); + + // top and two sub state graph + assertEquals("diagram children", 3, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + @Test + public void testDoubleDerivedClass() { + ActorClass ac = getActorClass("DoubleDerived"); + assertTrue("actor class DoubleDerived present in model", ac!=null); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // have to use the actor class from the diagram since this is another instance + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + assertTrue("is derived", ac.getBase()!=null); + assertTrue("extends Base", ac.getBase().getName().equals("Derived")); + + testSGItems(ac.getStateMachine(), diagram); + + // top and four sub state graph + assertEquals("diagram children", 5, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + @Test + public void testBase2Class() { + ActorClass ac = getActorClass("Base2"); + assertTrue("actor class Base2 present in model", ac!=null); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // have to use the actor class from the diagram since this is another instance + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + + testSGItems(ac.getStateMachine(), diagram); + + // top and one sub state graph + assertEquals("diagram children", 2, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + @Test + public void testDerived2Class() { + ActorClass ac = getActorClass("Derived2"); + assertTrue("actor class Derived2 present in model", ac!=null); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + // have to use the actor class from the diagram since this is another instance + ac = (ActorClass) Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(diagram); + assertTrue("is derived", ac.getBase()!=null); + assertTrue("extends Base2", ac.getBase().getName().equals("Base2")); + + testSGItems(ac.getStateMachine(), diagram); + + // top and one sub state graph + assertEquals("diagram children", 2, diagram.getChildren().size()); + + for (Shape shape : diagram.getChildren()) { + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is StateGraph", bo instanceof StateGraph); + } + } + + public void testSGItems(StateGraph sg, Diagram diagram) { + + testStateGraph(diagram, sg); + + for (State s : sg.getStates()) { + if (s.getSubgraph()!=null) + testSGItems(s.getSubgraph(), diagram); + } + } + + private ActorClass getActorClass(String name) { + for (ActorClass ac : getModels().get(0).getActorClasses()) { + if (ac.getName().equals(name)) + return ac; + } + return null; + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/.classpath b/tests/org.eclipse.etrice.ui.structure.tests/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/.classpath +++ b/tests/org.eclipse.etrice.ui.structure.tests/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.ui.structure.tests/.gitignore b/tests/org.eclipse.etrice.ui.structure.tests/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/.gitignore +++ b/tests/org.eclipse.etrice.ui.structure.tests/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.ui.structure.tests/.project b/tests/org.eclipse.etrice.ui.structure.tests/.project index 91db75bd0..677976b4f 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/.project +++ b/tests/org.eclipse.etrice.ui.structure.tests/.project @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.ui.structure.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.ui.structure.tests</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.ui.structure.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.ui.structure.tests/.settings/org.eclipse.jdt.core.prefs index 7f8e6f7b4..b5619aabb 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.ui.structure.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Fri Jan 28 15:16:58 CET 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Fri Jan 28 15:16:58 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF index 466f87aaf..aa72995a3 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.ui.structure.tests/META-INF/MANIFEST.MF @@ -1,18 +1,18 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Structure Diagram Tests
-Bundle-SymbolicName: org.eclipse.etrice.ui.structure.tests
-Bundle-Version: 0.3.0.qualifier
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0",
- org.eclipse.etrice.ui.structure;bundle-version="0.3.0",
- org.eclipse.etrice.ui.common;bundle-version="0.3.0",
- org.eclipse.etrice.ui.tests.base;bundle-version="0.3.0",
- org.eclipse.ui,
- org.eclipse.core.runtime,
- org.junit;bundle-version="4.8.1",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.graphiti;bundle-version="0.8.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.eclipse.etrice.ui.structure.StructureTestActivator
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Structure Diagram Tests +Bundle-SymbolicName: org.eclipse.etrice.ui.structure.tests +Bundle-Version: 0.3.0.qualifier +Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.3.0", + org.eclipse.etrice.ui.structure;bundle-version="0.3.0", + org.eclipse.etrice.ui.common;bundle-version="0.3.0", + org.eclipse.etrice.ui.tests.base;bundle-version="0.3.0", + org.eclipse.ui, + org.eclipse.core.runtime, + org.junit;bundle-version="4.8.1", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.graphiti;bundle-version="0.8.0" +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-ActivationPolicy: lazy +Bundle-Activator: org.eclipse.etrice.ui.structure.StructureTestActivator diff --git a/tests/org.eclipse.etrice.ui.structure.tests/about.html b/tests/org.eclipse.etrice.ui.structure.tests/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/about.html +++ b/tests/org.eclipse.etrice.ui.structure.tests/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.structure.tests/build.properties b/tests/org.eclipse.etrice.ui.structure.tests/build.properties index 41eb6ade2..34d2e4d2d 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/build.properties +++ b/tests/org.eclipse.etrice.ui.structure.tests/build.properties @@ -1,4 +1,4 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClass.room b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClass.room index 7817b1301..02b8d4b0f 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClass.room +++ b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClass.room @@ -1,4 +1,4 @@ -RoomModel ^ActorClass {
- ActorClass MyActorClass {
- }
-}
+RoomModel ^ActorClass { + ActorClass MyActorClass { + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithBindings.room b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithBindings.room index 7ce1473c7..27c8fa375 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithBindings.room +++ b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithBindings.room @@ -1,34 +1,34 @@ -RoomModel ActorClassWithBindings {
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ActorClass SubActor {
- Interface {
- Port fct: MyProtocol
- }
- }
-
- ActorClass MyActorClass {
- Interface {
- Port ip : MyProtocol
- Port xp : MyProtocol
- }
- Structure {
- conjugated Port sp : MyProtocol
- external Port xp
-
- ActorRef sub_a : SubActor
- ActorRef sub_b : SubActor
-
- Binding ip and sub_a.fct
- Binding sp and sub_b.fct
- }
- }
-}
+RoomModel ActorClassWithBindings { + ProtocolClass MyProtocol { + incoming { + Message in1 () + Message in2 () + } + outgoing { + Message out1 () + } + } + + ActorClass SubActor { + Interface { + Port fct: MyProtocol + } + } + + ActorClass MyActorClass { + Interface { + Port ip : MyProtocol + Port xp : MyProtocol + } + Structure { + conjugated Port sp : MyProtocol + external Port xp + + ActorRef sub_a : SubActor + ActorRef sub_b : SubActor + + Binding ip and sub_a.fct + Binding sp and sub_b.fct + } + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithInheritance.room b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithInheritance.room index 60d214912..17198001f 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithInheritance.room +++ b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithInheritance.room @@ -1,57 +1,57 @@ -RoomModel ActorClassWithInheritance {
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ProtocolClass MyControl {
- incoming {
- Message in1 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ActorClass SubActor {
- Interface {
- Port fct: MyProtocol
- Port ctl: MyControl
- }
- }
-
- ActorClass MyBaseClass {
- Interface {
- Port ip : MyProtocol
- }
- Structure {
- ActorRef sub_a : SubActor
-
- Binding ip and sub_a.fct
- }
- }
-
- ActorClass MyActorClass extends MyBaseClass {
- Interface {
- Port p : MyProtocol
- }
- Structure {
- conjugated Port ctl : MyControl
- conjugated Port sp1 : MyProtocol
- conjugated Port sp2 : MyProtocol
- external Port p
-
- ActorRef sub_b : SubActor
- ActorRef sub_c : SubActor
-
- Binding ctl and sub_a.ctl
- Binding sp1 and sub_b.fct
- Binding sp2 and sub_c.fct
- }
- }
-}
+RoomModel ActorClassWithInheritance { + ProtocolClass MyProtocol { + incoming { + Message in1 () + Message in2 () + } + outgoing { + Message out1 () + } + } + + ProtocolClass MyControl { + incoming { + Message in1 () + } + outgoing { + Message out1 () + } + } + + ActorClass SubActor { + Interface { + Port fct: MyProtocol + Port ctl: MyControl + } + } + + ActorClass MyBaseClass { + Interface { + Port ip : MyProtocol + } + Structure { + ActorRef sub_a : SubActor + + Binding ip and sub_a.fct + } + } + + ActorClass MyActorClass extends MyBaseClass { + Interface { + Port p : MyProtocol + } + Structure { + conjugated Port ctl : MyControl + conjugated Port sp1 : MyProtocol + conjugated Port sp2 : MyProtocol + external Port p + + ActorRef sub_b : SubActor + ActorRef sub_c : SubActor + + Binding ctl and sub_a.ctl + Binding sp1 and sub_b.fct + Binding sp2 and sub_c.fct + } + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithPorts.room b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithPorts.room index e3c5ed6d3..2182fc657 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithPorts.room +++ b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithPorts.room @@ -1,22 +1,22 @@ -RoomModel ActorClassWithPorts {
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ActorClass MyActorClass {
- Interface {
- Port ip : MyProtocol
- Port xp : MyProtocol
- }
- Structure {
- conjugated Port sp : MyProtocol
- external Port xp
- }
- }
-}
+RoomModel ActorClassWithPorts { + ProtocolClass MyProtocol { + incoming { + Message in1 () + Message in2 () + } + outgoing { + Message out1 () + } + } + + ActorClass MyActorClass { + Interface { + Port ip : MyProtocol + Port xp : MyProtocol + } + Structure { + conjugated Port sp : MyProtocol + external Port xp + } + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithReferences.room b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithReferences.room index e94bda656..500318707 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithReferences.room +++ b/tests/org.eclipse.etrice.ui.structure.tests/models/ActorClassWithReferences.room @@ -1,31 +1,31 @@ -RoomModel ActorClassWithReferences {
- ProtocolClass MyProtocol {
- incoming {
- Message in1 ()
- Message in2 ()
- }
- outgoing {
- Message out1 ()
- }
- }
-
- ActorClass SubActor {
- Interface {
- Port fct: MyProtocol
- }
- }
-
- ActorClass MyActorClass {
- Interface {
- Port ip : MyProtocol
- Port xp : MyProtocol
- }
- Structure {
- conjugated Port sp : MyProtocol
- external Port xp
-
- ActorRef sub_a : SubActor
- ActorRef sub_b : SubActor
- }
- }
-}
+RoomModel ActorClassWithReferences { + ProtocolClass MyProtocol { + incoming { + Message in1 () + Message in2 () + } + outgoing { + Message out1 () + } + } + + ActorClass SubActor { + Interface { + Port fct: MyProtocol + } + } + + ActorClass MyActorClass { + Interface { + Port ip : MyProtocol + Port xp : MyProtocol + } + Structure { + conjugated Port sp : MyProtocol + external Port xp + + ActorRef sub_a : SubActor + ActorRef sub_b : SubActor + } + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/org.eclipse.etrice.ui.structure.tests.launch b/tests/org.eclipse.etrice.ui.structure.tests/org.eclipse.etrice.ui.structure.tests.launch index 4d51ea5ea..5cc691ee9 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/org.eclipse.etrice.ui.structure.tests.launch +++ b/tests/org.eclipse.etrice.ui.structure.tests/org.eclipse.etrice.ui.structure.tests.launch @@ -1,46 +1,46 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
-<booleanAttribute key="append.args" value="true"/>
-<booleanAttribute key="askclear" value="false"/>
-<booleanAttribute key="automaticAdd" value="true"/>
-<booleanAttribute key="automaticValidate" value="false"/>
-<stringAttribute key="bootstrap" value=""/>
-<stringAttribute key="checked" value="[NONE]"/>
-<booleanAttribute key="clearConfig" value="true"/>
-<booleanAttribute key="clearws" value="true"/>
-<booleanAttribute key="clearwslog" value="false"/>
-<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
-<booleanAttribute key="default" value="true"/>
-<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.generator.tests,org.eclipse.etrice.ui.behavior.tests"/>
-<booleanAttribute key="includeOptional" value="true"/>
-<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.eclipse.etrice.ui.structure.tests"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.ui.structure.tests"/>
-<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
-<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
-<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.ui.structure.tests"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/>
-<stringAttribute key="pde.version" value="3.3"/>
-<stringAttribute key="product" value="org.eclipse.platform.ide"/>
-<booleanAttribute key="run_in_ui_thread" value="true"/>
-<stringAttribute key="selected_target_plugins" value="com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,com.sun.syndication@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.commons.cli@default:default,org.apache.commons.codec@default:default,org.apache.commons.httpclient@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.eclipse.ant.core@default:default,org.eclipse.ant.launching@default:default,org.eclipse.ant.ui@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare.win32@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.cvs@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d.doc.isv@default:default,org.eclipse.draw2d@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.ant@default:default,org.eclipse.emf.cheatsheets@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen.ui@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.compare.diff.edit@default:default,org.eclipse.emf.compare.diff@default:default,org.eclipse.emf.compare.epatch@default:default,org.eclipse.emf.compare.match@default:default,org.eclipse.emf.compare.ui@default:default,org.eclipse.emf.compare@default:default,org.eclipse.emf.converter@default:default,org.eclipse.emf.databinding.edit@default:default,org.eclipse.emf.databinding@default:default,org.eclipse.emf.doc@default:default,org.eclipse.emf.ecore.change.edit@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.example.installer@default:default,org.eclipse.emf.exporter@default:default,org.eclipse.emf.importer.ecore@default:default,org.eclipse.emf.importer.java@default:default,org.eclipse.emf.importer.rose@default:default,org.eclipse.emf.importer@default:default,org.eclipse.emf.mapping.ecore.editor@default:default,org.eclipse.emf.mapping.ecore2ecore.editor@default:default,org.eclipse.emf.mapping.ecore2ecore@default:default,org.eclipse.emf.mapping.ecore2xml.ui@default:default,org.eclipse.emf.mapping.ecore2xml@default:default,org.eclipse.emf.mapping.ecore@default:default,org.eclipse.emf.mapping.ui@default:default,org.eclipse.emf.mapping.xsd2ecore.editor@default:default,org.eclipse.emf.mapping.xsd2ecore@default:default,org.eclipse.emf.mapping@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.emf@default:default,org.eclipse.epp.mpc.core@default:default,org.eclipse.epp.mpc.help.ui@default:default,org.eclipse.epp.mpc.ui@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.ds@default:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.discovery.compatibility@default:default,org.eclipse.equinox.p2.discovery@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.transport.ecf@default:default,org.eclipse.equinox.p2.ui.discovery@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef.doc.isv@default:default,org.eclipse.gef.examples.ui.pde@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.pattern@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help.webapp@default:default,org.eclipse.help@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.jsch.core@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.mylyn.commons.core@default:default,org.eclipse.mylyn.commons.identity@default:default,org.eclipse.mylyn.commons.net@default:default,org.eclipse.mylyn.commons.repositories@default:default,org.eclipse.mylyn.commons.screenshots@default:default,org.eclipse.mylyn.commons.ui@default:default,org.eclipse.mylyn.context.core@default:default,org.eclipse.mylyn.discovery.core@default:default,org.eclipse.mylyn.discovery.ui@default:default,org.eclipse.mylyn.monitor.core@default:default,org.eclipse.mylyn.monitor.ui@default:default,org.eclipse.mylyn.tasks.bugs@default:default,org.eclipse.mylyn.tasks.core@default:default,org.eclipse.mylyn.tasks.ui@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.pde.api.tools@default:default,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.pde.ds.core@default:default,org.eclipse.pde.ds.ui@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.pde.launching@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.pde.ui@default:default,org.eclipse.pde@default:default,org.eclipse.platform.doc.isv@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.sdk@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.cvs.core@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.uml2.codegen.ecore@default:default,org.eclipse.uml2.common@default:default,org.eclipse.uml2.uml.ecore.importer@default:default,org.eclipse.uml2.uml.resources@default:default,org.eclipse.uml2.uml@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xsd.cheatsheets@default:default,org.eclipse.xsd.doc@default:default,org.eclipse.xsd.ecore.converter@default:default,org.eclipse.xsd.ecore.exporter@default:default,org.eclipse.xsd.ecore.importer@default:default,org.eclipse.xsd.edit@default:default,org.eclipse.xsd.editor@default:default,org.eclipse.xsd.example.installer@default:default,org.eclipse.xsd.mapping.editor@default:default,org.eclipse.xsd.mapping@default:default,org.eclipse.xsd@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.activities@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.doc@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext.xtext.ui.examples@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.jdom@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit4@default:default,org.objectweb.asm@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default"/>
-<stringAttribute key="selected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior@default:default,org.eclipse.etrice.core.config.tests@default:default,org.eclipse.etrice.core.config.ui@default:default,org.eclipse.etrice.core.config@default:default,org.eclipse.etrice.core.genmodel.tests@default:default,org.eclipse.etrice.core.genmodel@default:default,org.eclipse.etrice.core.room.tests@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.doc@default:default,org.eclipse.etrice.etunit.converter.tests@default:default,org.eclipse.etrice.etunit.converter@default:default,org.eclipse.etrice.generator.c@default:default,org.eclipse.etrice.generator.doc@default:default,org.eclipse.etrice.generator.java@default:default,org.eclipse.etrice.generator.launch.c@default:default,org.eclipse.etrice.generator.launch.java@default:default,org.eclipse.etrice.generator.launch@default:default,org.eclipse.etrice.generator@default:default,org.eclipse.etrice.logging@default:false,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.etrice.ui.commands@default:default,org.eclipse.etrice.ui.common@default:default,org.eclipse.etrice.ui.runtime@default:default,org.eclipse.etrice.ui.structure.tests@default:default,org.eclipse.etrice.ui.structure@default:default,org.eclipse.etrice.ui.tests.base@default:default"/>
-<booleanAttribute key="show_selected_only" value="false"/>
-<booleanAttribute key="tracing" value="false"/>
-<booleanAttribute key="useCustomFeatures" value="false"/>
-<booleanAttribute key="useDefaultConfig" value="true"/>
-<booleanAttribute key="useDefaultConfigArea" value="false"/>
-<booleanAttribute key="useProduct" value="true"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig"> +<booleanAttribute key="append.args" value="true"/> +<booleanAttribute key="askclear" value="false"/> +<booleanAttribute key="automaticAdd" value="true"/> +<booleanAttribute key="automaticValidate" value="false"/> +<stringAttribute key="bootstrap" value=""/> +<stringAttribute key="checked" value="[NONE]"/> +<booleanAttribute key="clearConfig" value="true"/> +<booleanAttribute key="clearws" value="true"/> +<booleanAttribute key="clearwslog" value="false"/> +<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/> +<booleanAttribute key="default" value="true"/> +<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.etrice.generator.tests,org.eclipse.etrice.ui.behavior.tests"/> +<booleanAttribute key="includeOptional" value="true"/> +<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/org.eclipse.etrice.ui.structure.tests"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="4"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value="=org.eclipse.etrice.ui.structure.tests"/> +<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> +<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> +<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.etrice.ui.structure.tests"/> +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea -Xmx512m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=256m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.5"/> +<stringAttribute key="pde.version" value="3.3"/> +<stringAttribute key="product" value="org.eclipse.platform.ide"/> +<booleanAttribute key="run_in_ui_thread" value="true"/> +<stringAttribute key="selected_target_plugins" value="com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,com.sun.syndication@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.antlr.runtime@default:default,org.apache.ant@default:default,org.apache.commons.cli@default:default,org.apache.commons.codec@default:default,org.apache.commons.httpclient@default:default,org.apache.commons.lang@default:default,org.apache.commons.logging@default:default,org.apache.log4j@default:default,org.apache.lucene.analysis@default:default,org.apache.lucene.core@default:default,org.apache.lucene@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.eclipse.ant.core@default:default,org.eclipse.ant.launching@default:default,org.eclipse.ant.ui@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare.win32@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.beans@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.cvs@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.draw2d.doc.isv@default:default,org.eclipse.draw2d@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.ant@default:default,org.eclipse.emf.cheatsheets@default:default,org.eclipse.emf.codegen.ecore.ui@default:default,org.eclipse.emf.codegen.ecore@default:default,org.eclipse.emf.codegen.ui@default:default,org.eclipse.emf.codegen@default:default,org.eclipse.emf.common.ui@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.compare.diff.edit@default:default,org.eclipse.emf.compare.diff@default:default,org.eclipse.emf.compare.epatch@default:default,org.eclipse.emf.compare.match@default:default,org.eclipse.emf.compare.ui@default:default,org.eclipse.emf.compare@default:default,org.eclipse.emf.converter@default:default,org.eclipse.emf.databinding.edit@default:default,org.eclipse.emf.databinding@default:default,org.eclipse.emf.doc@default:default,org.eclipse.emf.ecore.change.edit@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.editor@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit.ui@default:default,org.eclipse.emf.edit@default:default,org.eclipse.emf.example.installer@default:default,org.eclipse.emf.exporter@default:default,org.eclipse.emf.importer.ecore@default:default,org.eclipse.emf.importer.java@default:default,org.eclipse.emf.importer.rose@default:default,org.eclipse.emf.importer@default:default,org.eclipse.emf.mapping.ecore.editor@default:default,org.eclipse.emf.mapping.ecore2ecore.editor@default:default,org.eclipse.emf.mapping.ecore2ecore@default:default,org.eclipse.emf.mapping.ecore2xml.ui@default:default,org.eclipse.emf.mapping.ecore2xml@default:default,org.eclipse.emf.mapping.ecore@default:default,org.eclipse.emf.mapping.ui@default:default,org.eclipse.emf.mapping.xsd2ecore.editor@default:default,org.eclipse.emf.mapping.xsd2ecore@default:default,org.eclipse.emf.mapping@default:default,org.eclipse.emf.mwe.core@default:default,org.eclipse.emf.mwe.utils@default:default,org.eclipse.emf.mwe2.language.ui@default:default,org.eclipse.emf.mwe2.language@default:default,org.eclipse.emf.mwe2.launch@default:default,org.eclipse.emf.mwe2.lib@default:default,org.eclipse.emf.mwe2.runtime@default:default,org.eclipse.emf.transaction@default:default,org.eclipse.emf.validation@default:default,org.eclipse.emf.workspace@default:default,org.eclipse.emf@default:default,org.eclipse.epp.mpc.core@default:default,org.eclipse.epp.mpc.help.ui@default:default,org.eclipse.epp.mpc.ui@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.ds@default:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.discovery.compatibility@default:default,org.eclipse.equinox.p2.discovery@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.ql@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.transport.ecf@default:default,org.eclipse.equinox.p2.ui.discovery@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.gef.doc.isv@default:default,org.eclipse.gef.examples.ui.pde@default:default,org.eclipse.gef@default:default,org.eclipse.graphiti.mm@default:default,org.eclipse.graphiti.pattern@default:default,org.eclipse.graphiti.ui@default:default,org.eclipse.graphiti@default:default,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help.webapp@default:default,org.eclipse.help@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.jsch.core@default:default,org.eclipse.jsch.ui@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.mylyn.commons.core@default:default,org.eclipse.mylyn.commons.identity@default:default,org.eclipse.mylyn.commons.net@default:default,org.eclipse.mylyn.commons.repositories@default:default,org.eclipse.mylyn.commons.screenshots@default:default,org.eclipse.mylyn.commons.ui@default:default,org.eclipse.mylyn.context.core@default:default,org.eclipse.mylyn.discovery.core@default:default,org.eclipse.mylyn.discovery.ui@default:default,org.eclipse.mylyn.monitor.core@default:default,org.eclipse.mylyn.monitor.ui@default:default,org.eclipse.mylyn.tasks.bugs@default:default,org.eclipse.mylyn.tasks.core@default:default,org.eclipse.mylyn.tasks.ui@default:default,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.api.tools.ui@default:default,org.eclipse.pde.api.tools@default:default,org.eclipse.pde.build@default:default,org.eclipse.pde.core@default:default,org.eclipse.pde.doc.user@default:default,org.eclipse.pde.ds.core@default:default,org.eclipse.pde.ds.ui@default:default,org.eclipse.pde.junit.runtime@default:default,org.eclipse.pde.launching@default:default,org.eclipse.pde.runtime@default:default,org.eclipse.pde.ua.core@default:default,org.eclipse.pde.ua.ui@default:default,org.eclipse.pde.ui.templates@default:default,org.eclipse.pde.ui@default:default,org.eclipse.pde@default:default,org.eclipse.platform.doc.isv@default:default,org.eclipse.platform.doc.user@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.sdk@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.cvs.core@default:default,org.eclipse.team.cvs.ssh2@default:default,org.eclipse.team.cvs.ui@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.uml2.codegen.ecore@default:default,org.eclipse.uml2.common@default:default,org.eclipse.uml2.uml.ecore.importer@default:default,org.eclipse.uml2.uml.resources@default:default,org.eclipse.uml2.uml@default:default,org.eclipse.update.configurator@3:true,org.eclipse.xpand@default:default,org.eclipse.xsd.cheatsheets@default:default,org.eclipse.xsd.doc@default:default,org.eclipse.xsd.ecore.converter@default:default,org.eclipse.xsd.ecore.exporter@default:default,org.eclipse.xsd.ecore.importer@default:default,org.eclipse.xsd.edit@default:default,org.eclipse.xsd.editor@default:default,org.eclipse.xsd.example.installer@default:default,org.eclipse.xsd.mapping.editor@default:default,org.eclipse.xsd.mapping@default:default,org.eclipse.xsd@default:default,org.eclipse.xtend.typesystem.emf@default:default,org.eclipse.xtend@default:default,org.eclipse.xtext.activities@default:default,org.eclipse.xtext.builder@default:default,org.eclipse.xtext.common.types.ui@default:default,org.eclipse.xtext.common.types@default:default,org.eclipse.xtext.doc@default:default,org.eclipse.xtext.ecore@default:default,org.eclipse.xtext.generator@default:default,org.eclipse.xtext.junit@default:default,org.eclipse.xtext.logging@default:false,org.eclipse.xtext.ui.codetemplates.ui@default:default,org.eclipse.xtext.ui.codetemplates@default:default,org.eclipse.xtext.ui.ecore@default:default,org.eclipse.xtext.ui.junit@default:default,org.eclipse.xtext.ui.shared@default:default,org.eclipse.xtext.ui@default:default,org.eclipse.xtext.util@default:default,org.eclipse.xtext.xbase.lib@default:default,org.eclipse.xtext.xbase.ui@default:default,org.eclipse.xtext.xbase@default:default,org.eclipse.xtext.xtext.ui.examples@default:default,org.eclipse.xtext.xtext.ui@default:default,org.eclipse.xtext@default:default,org.hamcrest.core@default:default,org.jdom@default:default,org.junit*3.8.2.v3_8_2_v20100427-1100@default:default,org.junit4@default:default,org.objectweb.asm@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default"/> +<stringAttribute key="selected_workspace_plugins" value="org.eclipse.etrice.abstractexec.behavior@default:default,org.eclipse.etrice.core.config.tests@default:default,org.eclipse.etrice.core.config.ui@default:default,org.eclipse.etrice.core.config@default:default,org.eclipse.etrice.core.genmodel.tests@default:default,org.eclipse.etrice.core.genmodel@default:default,org.eclipse.etrice.core.room.tests@default:default,org.eclipse.etrice.core.room.ui@default:default,org.eclipse.etrice.core.room@default:default,org.eclipse.etrice.doc@default:default,org.eclipse.etrice.etunit.converter.tests@default:default,org.eclipse.etrice.etunit.converter@default:default,org.eclipse.etrice.generator.c@default:default,org.eclipse.etrice.generator.doc@default:default,org.eclipse.etrice.generator.java@default:default,org.eclipse.etrice.generator.launch.c@default:default,org.eclipse.etrice.generator.launch.java@default:default,org.eclipse.etrice.generator.launch@default:default,org.eclipse.etrice.generator@default:default,org.eclipse.etrice.logging@default:false,org.eclipse.etrice.ui.behavior@default:default,org.eclipse.etrice.ui.commands@default:default,org.eclipse.etrice.ui.common@default:default,org.eclipse.etrice.ui.runtime@default:default,org.eclipse.etrice.ui.structure.tests@default:default,org.eclipse.etrice.ui.structure@default:default,org.eclipse.etrice.ui.tests.base@default:default"/> +<booleanAttribute key="show_selected_only" value="false"/> +<booleanAttribute key="tracing" value="false"/> +<booleanAttribute key="useCustomFeatures" value="false"/> +<booleanAttribute key="useDefaultConfig" value="true"/> +<booleanAttribute key="useDefaultConfigArea" value="false"/> +<booleanAttribute key="useProduct" value="true"/> +</launchConfiguration> diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/StructureTestActivator.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/StructureTestActivator.java index 478d8d8b9..975357d36 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/StructureTestActivator.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/StructureTestActivator.java @@ -1,34 +1,34 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class StructureTestActivator extends Plugin implements BundleActivator {
-
- private static StructureTestActivator instance = null;
-
- public static StructureTestActivator getInstance() {
- return instance;
- }
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- instance = this;
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure; + +import org.eclipse.core.runtime.Plugin; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class StructureTestActivator extends Plugin implements BundleActivator { + + private static StructureTestActivator instance = null; + + public static StructureTestActivator getInstance() { + return instance; + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + + instance = this; + } + +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/ActorClassWithBindings.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/ActorClassWithBindings.java index 627974594..d76391af5 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/ActorClassWithBindings.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/ActorClassWithBindings.java @@ -1,125 +1,125 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.net.URL;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorRef;
-import org.eclipse.etrice.core.room.Binding;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.tests.base.TestBase;
-import org.eclipse.etrice.ui.structure.DiagramAccess;
-import org.eclipse.etrice.ui.structure.StructureTestActivator;
-import org.eclipse.graphiti.mm.pictograms.Connection;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.PictogramElement;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class ActorClassWithBindings extends TestBase {
-
- private ActorClass ac = null;
-
- @Before
- public void setUp() {
- loadModelFile();
-
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 2, getModels().get(0).getActorClasses().size());
-
- for (ActorClass a : getModels().get(0).getActorClasses()) {
- if (a.getName().equals("MyActorClass")) {
- ac = a;
- break;
- }
- }
- assertNotNull("ActorClass expected", ac);
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "ActorClassWithBindings.room";
- }
-
- @Test
- public void checkReferences() {
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- ContainerShape shape = (ContainerShape) diagram.getChildren().get(0);
- assertEquals("actor class child shapes", 5, shape.getChildren().size());
-
- int nRefs = 0;
- for (Shape childShape : shape.getChildren()) {
- EObject[] bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(childShape);
- assertEquals("business objects", 1, bos.length);
- if (!(bos[0] instanceof Port)) {
- assertTrue("bo is actor ref", bos[0] instanceof ActorRef);
- nRefs++;
- }
- }
- assertEquals("number of actor references", 2, nRefs);
- }
-
- @Test
- public void checkBindings() {
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- assertEquals("bindings", 2, diagram.getConnections().size());
-
- for (Connection conn : diagram.getConnections()) {
- EObject[] bos = Graphiti.getLinkService().getAllBusinessObjectsForLinkedPictogramElement(conn);
- assertEquals("business objects", 1, bos.length);
- assertTrue("binding", bos[0] instanceof Binding);
-
- Binding b = (Binding) bos[0];
-
- // the first port is part of the only MyActor instance
- List<PictogramElement> pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint1().getPort());
- assertEquals("instances of first port", 1, pes.size());
-
- // the second port is part of SubActor which has two instances
- pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint2().getPort());
- assertEquals("instances of second port", 2, pes.size());
- assertNull("first ref", b.getEndpoint1().getActorRef());
-
- // the second ref is represented once in the diagram
- assertNotNull("second ref", b.getEndpoint2().getActorRef());
- pes = Graphiti.getLinkService().getPictogramElements(diagram, ((ActorRef)b.getEndpoint2().getActorRef()));
- assertEquals("instances of second ref", 1, pes.size());
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy()
- */
- @Override
- protected URL getModelsDirectoy() {
- return StructureTestActivator.getInstance().getBundle().getEntry("models");
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.net.URL; +import java.util.List; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.ActorRef; +import org.eclipse.etrice.core.room.Binding; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.tests.base.TestBase; +import org.eclipse.etrice.ui.structure.DiagramAccess; +import org.eclipse.etrice.ui.structure.StructureTestActivator; +import org.eclipse.graphiti.mm.pictograms.Connection; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.PictogramElement; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +public class ActorClassWithBindings extends TestBase { + + private ActorClass ac = null; + + @Before + public void setUp() { + loadModelFile(); + + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 2, getModels().get(0).getActorClasses().size()); + + for (ActorClass a : getModels().get(0).getActorClasses()) { + if (a.getName().equals("MyActorClass")) { + ac = a; + break; + } + } + assertNotNull("ActorClass expected", ac); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "ActorClassWithBindings.room"; + } + + @Test + public void checkReferences() { + Diagram diagram = new DiagramAccess().getDiagram(ac); + ContainerShape shape = (ContainerShape) diagram.getChildren().get(0); + assertEquals("actor class child shapes", 5, shape.getChildren().size()); + + int nRefs = 0; + for (Shape childShape : shape.getChildren()) { + EObject[] bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(childShape); + assertEquals("business objects", 1, bos.length); + if (!(bos[0] instanceof Port)) { + assertTrue("bo is actor ref", bos[0] instanceof ActorRef); + nRefs++; + } + } + assertEquals("number of actor references", 2, nRefs); + } + + @Test + public void checkBindings() { + Diagram diagram = new DiagramAccess().getDiagram(ac); + assertEquals("bindings", 2, diagram.getConnections().size()); + + for (Connection conn : diagram.getConnections()) { + EObject[] bos = Graphiti.getLinkService().getAllBusinessObjectsForLinkedPictogramElement(conn); + assertEquals("business objects", 1, bos.length); + assertTrue("binding", bos[0] instanceof Binding); + + Binding b = (Binding) bos[0]; + + // the first port is part of the only MyActor instance + List<PictogramElement> pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint1().getPort()); + assertEquals("instances of first port", 1, pes.size()); + + // the second port is part of SubActor which has two instances + pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint2().getPort()); + assertEquals("instances of second port", 2, pes.size()); + assertNull("first ref", b.getEndpoint1().getActorRef()); + + // the second ref is represented once in the diagram + assertNotNull("second ref", b.getEndpoint2().getActorRef()); + pes = Graphiti.getLinkService().getPictogramElements(diagram, ((ActorRef)b.getEndpoint2().getActorRef())); + assertEquals("instances of second ref", 1, pes.size()); + } + } + + /* (non-Javadoc) + * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy() + */ + @Override + protected URL getModelsDirectoy() { + return StructureTestActivator.getInstance().getBundle().getEntry("models"); + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClass.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClass.java index 71bd7e268..07125b84a 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClass.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClass.java @@ -1,77 +1,77 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.net.URL;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.tests.base.TestBase;
-import org.eclipse.etrice.ui.structure.DiagramAccess;
-import org.eclipse.etrice.ui.structure.StructureTestActivator;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class TestActorClass extends TestBase {
-
- @Before
- public void setUp() {
- loadModelFile();
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "ActorClass.room";
- }
-
- @Test
- public void checkModel() {
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size());
- }
-
- @Test
- public void testActorClass() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
-
- assertEquals("diagram children", 1, diagram.getChildren().size());
-
- Shape shape = diagram.getChildren().get(0);
- assertTrue("top level shape is container shape", shape instanceof ContainerShape);
-
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("top level business object is ActorClass", bo instanceof ActorClass);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy()
- */
- @Override
- protected URL getModelsDirectoy() {
- return StructureTestActivator.getInstance().getBundle().getEntry("models");
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.net.URL; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.tests.base.TestBase; +import org.eclipse.etrice.ui.structure.DiagramAccess; +import org.eclipse.etrice.ui.structure.StructureTestActivator; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +public class TestActorClass extends TestBase { + + @Before + public void setUp() { + loadModelFile(); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "ActorClass.room"; + } + + @Test + public void checkModel() { + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 1, getModels().get(0).getActorClasses().size()); + } + + @Test + public void testActorClass() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + + assertEquals("diagram children", 1, diagram.getChildren().size()); + + Shape shape = diagram.getChildren().get(0); + assertTrue("top level shape is container shape", shape instanceof ContainerShape); + + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("top level business object is ActorClass", bo instanceof ActorClass); + } + + /* (non-Javadoc) + * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy() + */ + @Override + protected URL getModelsDirectoy() { + return StructureTestActivator.getInstance().getBundle().getEntry("models"); + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithInheritance.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithInheritance.java index c80b78a89..792f9ef78 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithInheritance.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithInheritance.java @@ -1,183 +1,183 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.net.URL;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorRef;
-import org.eclipse.etrice.core.room.Binding;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.tests.base.TestBase;
-import org.eclipse.etrice.ui.structure.DiagramAccess;
-import org.eclipse.etrice.ui.structure.StructureTestActivator;
-import org.eclipse.etrice.ui.structure.support.ActorContainerRefSupport;
-import org.eclipse.etrice.ui.structure.support.BindingSupport;
-import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm;
-import org.eclipse.graphiti.mm.algorithms.Rectangle;
-import org.eclipse.graphiti.mm.algorithms.Text;
-import org.eclipse.graphiti.mm.pictograms.Connection;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.PictogramElement;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Unit test for the structure of an actor class with inheritance
- *
- * @author Henrik Rentz-Reichert initial contribution and API
- */
-public class TestActorClassWithInheritance extends TestBase {
-
- private ActorClass ac = null;
-
- @Before
- public void setUp() {
- loadModelFile();
-
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 3, getModels().get(0).getActorClasses().size());
-
- for (ActorClass a : getModels().get(0).getActorClasses()) {
- if (a.getName().equals("MyActorClass")) {
- ac = a;
- break;
- }
- }
- assertNotNull("ActorClass expected", ac);
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "ActorClassWithInheritance.room";
- }
-
- @Test
- public void checkReferences() {
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- ContainerShape shape = (ContainerShape) diagram.getChildren().get(0);
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("bo is ActorClass", bo instanceof ActorClass);
-
- // re-assign this because the old Java object is another instance since it comes from another resource
- ac = (ActorClass) bo;
-
- assertEquals("actor class child shapes", 8, shape.getChildren().size());
-
- int nRefs = 0;
- for (Shape childShape : shape.getChildren()) {
- EObject[] bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(childShape);
- assertEquals("business objects", 1, bos.length);
- if (!(bos[0] instanceof Port)) {
- assertTrue("bo is actor ref", bos[0] instanceof ActorRef);
- nRefs++;
-
- ActorRef ar = (ActorRef) bos[0];
- boolean inherited = (ar.eContainer()!=ac);
-
- assertNotNull("ga is there (invisible rectangle)", childShape.getGraphicsAlgorithm());
- assertTrue("ga is rectangle", childShape.getGraphicsAlgorithm() instanceof Rectangle);
- assertFalse("ga is invisible", childShape.getGraphicsAlgorithm().getFilled());
- assertFalse("ga is invisible", childShape.getGraphicsAlgorithm().getLineVisible());
- assertEquals("border rect", 1, childShape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size());
- GraphicsAlgorithm borderRect = childShape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0);
- if (inherited)
- assertTrue("border rect background", isEqual(borderRect.getForeground(), ActorContainerRefSupport.INHERITED_COLOR));
- else
- assertTrue("border rect background", isEqual(borderRect.getForeground(), ActorContainerRefSupport.LINE_COLOR));
-
- // ports of actor refs
- assertEquals("grand child shapes", 3, ((ContainerShape)childShape).getChildren().size());
- for (Shape grandChildShape : ((ContainerShape)childShape).getChildren()) {
- // skip the actor ref label
- if (grandChildShape.getGraphicsAlgorithm() instanceof Text)
- continue;
-
- bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(grandChildShape);
- assertEquals("business objects", 1, bos.length);
- assertTrue("bo is port", bos[0] instanceof Port);
- }
- }
- }
- assertEquals("number of actor references", 3, nRefs);
- }
-
- @Test
- public void checkBindings() {
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- ContainerShape shape = (ContainerShape) diagram.getChildren().get(0);
- EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape);
- assertTrue("bo is ActorClass", bo instanceof ActorClass);
-
- // re-assign this because the old Java object is another instance since it comes from another resource
- ac = (ActorClass) bo;
-
- assertEquals("bindings", 4, diagram.getConnections().size());
-
- for (Connection conn : diagram.getConnections()) {
- EObject[] bos = Graphiti.getLinkService().getAllBusinessObjectsForLinkedPictogramElement(conn);
- assertEquals("business objects", 1, bos.length);
- assertTrue("binding", bos[0] instanceof Binding);
-
- Binding b = (Binding) bos[0];
- boolean inherited = (b.eContainer()!=ac);
-
- if (inherited)
- assertTrue("border rect background", isEqual(conn.getGraphicsAlgorithm().getForeground(), BindingSupport.INHERITED_COLOR));
- else
- assertTrue("border rect background", isEqual(conn.getGraphicsAlgorithm().getForeground(), BindingSupport.LINE_COLOR));
-
- // the first port is part of the only MyActor instance
- List<PictogramElement> pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint1().getPort());
- assertEquals("instances of first port", 1, pes.size());
-
- // the second port is part of SubActor which has three instances
- pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint2().getPort());
- assertEquals("instances of second port", 3, pes.size());
- assertNull("first ref", b.getEndpoint1().getActorRef());
-
- // the second ref is represented once in the diagram
- assertNotNull("second ref", b.getEndpoint2().getActorRef());
- pes = Graphiti.getLinkService().getPictogramElements(diagram, ((ActorRef)b.getEndpoint2().getActorRef()));
- assertEquals("instances of second ref", 1, pes.size());
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy()
- */
- @Override
- protected URL getModelsDirectoy() {
- return StructureTestActivator.getInstance().getBundle().getEntry("models");
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.net.URL; +import java.util.List; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.ActorRef; +import org.eclipse.etrice.core.room.Binding; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.tests.base.TestBase; +import org.eclipse.etrice.ui.structure.DiagramAccess; +import org.eclipse.etrice.ui.structure.StructureTestActivator; +import org.eclipse.etrice.ui.structure.support.ActorContainerRefSupport; +import org.eclipse.etrice.ui.structure.support.BindingSupport; +import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm; +import org.eclipse.graphiti.mm.algorithms.Rectangle; +import org.eclipse.graphiti.mm.algorithms.Text; +import org.eclipse.graphiti.mm.pictograms.Connection; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.PictogramElement; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +/** + * Unit test for the structure of an actor class with inheritance + * + * @author Henrik Rentz-Reichert initial contribution and API + */ +public class TestActorClassWithInheritance extends TestBase { + + private ActorClass ac = null; + + @Before + public void setUp() { + loadModelFile(); + + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 3, getModels().get(0).getActorClasses().size()); + + for (ActorClass a : getModels().get(0).getActorClasses()) { + if (a.getName().equals("MyActorClass")) { + ac = a; + break; + } + } + assertNotNull("ActorClass expected", ac); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "ActorClassWithInheritance.room"; + } + + @Test + public void checkReferences() { + Diagram diagram = new DiagramAccess().getDiagram(ac); + ContainerShape shape = (ContainerShape) diagram.getChildren().get(0); + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("bo is ActorClass", bo instanceof ActorClass); + + // re-assign this because the old Java object is another instance since it comes from another resource + ac = (ActorClass) bo; + + assertEquals("actor class child shapes", 8, shape.getChildren().size()); + + int nRefs = 0; + for (Shape childShape : shape.getChildren()) { + EObject[] bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(childShape); + assertEquals("business objects", 1, bos.length); + if (!(bos[0] instanceof Port)) { + assertTrue("bo is actor ref", bos[0] instanceof ActorRef); + nRefs++; + + ActorRef ar = (ActorRef) bos[0]; + boolean inherited = (ar.eContainer()!=ac); + + assertNotNull("ga is there (invisible rectangle)", childShape.getGraphicsAlgorithm()); + assertTrue("ga is rectangle", childShape.getGraphicsAlgorithm() instanceof Rectangle); + assertFalse("ga is invisible", childShape.getGraphicsAlgorithm().getFilled()); + assertFalse("ga is invisible", childShape.getGraphicsAlgorithm().getLineVisible()); + assertEquals("border rect", 1, childShape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().size()); + GraphicsAlgorithm borderRect = childShape.getGraphicsAlgorithm().getGraphicsAlgorithmChildren().get(0); + if (inherited) + assertTrue("border rect background", isEqual(borderRect.getForeground(), ActorContainerRefSupport.INHERITED_COLOR)); + else + assertTrue("border rect background", isEqual(borderRect.getForeground(), ActorContainerRefSupport.LINE_COLOR)); + + // ports of actor refs + assertEquals("grand child shapes", 3, ((ContainerShape)childShape).getChildren().size()); + for (Shape grandChildShape : ((ContainerShape)childShape).getChildren()) { + // skip the actor ref label + if (grandChildShape.getGraphicsAlgorithm() instanceof Text) + continue; + + bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(grandChildShape); + assertEquals("business objects", 1, bos.length); + assertTrue("bo is port", bos[0] instanceof Port); + } + } + } + assertEquals("number of actor references", 3, nRefs); + } + + @Test + public void checkBindings() { + Diagram diagram = new DiagramAccess().getDiagram(ac); + ContainerShape shape = (ContainerShape) diagram.getChildren().get(0); + EObject bo = Graphiti.getLinkService().getBusinessObjectForLinkedPictogramElement(shape); + assertTrue("bo is ActorClass", bo instanceof ActorClass); + + // re-assign this because the old Java object is another instance since it comes from another resource + ac = (ActorClass) bo; + + assertEquals("bindings", 4, diagram.getConnections().size()); + + for (Connection conn : diagram.getConnections()) { + EObject[] bos = Graphiti.getLinkService().getAllBusinessObjectsForLinkedPictogramElement(conn); + assertEquals("business objects", 1, bos.length); + assertTrue("binding", bos[0] instanceof Binding); + + Binding b = (Binding) bos[0]; + boolean inherited = (b.eContainer()!=ac); + + if (inherited) + assertTrue("border rect background", isEqual(conn.getGraphicsAlgorithm().getForeground(), BindingSupport.INHERITED_COLOR)); + else + assertTrue("border rect background", isEqual(conn.getGraphicsAlgorithm().getForeground(), BindingSupport.LINE_COLOR)); + + // the first port is part of the only MyActor instance + List<PictogramElement> pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint1().getPort()); + assertEquals("instances of first port", 1, pes.size()); + + // the second port is part of SubActor which has three instances + pes = Graphiti.getLinkService().getPictogramElements(diagram, b.getEndpoint2().getPort()); + assertEquals("instances of second port", 3, pes.size()); + assertNull("first ref", b.getEndpoint1().getActorRef()); + + // the second ref is represented once in the diagram + assertNotNull("second ref", b.getEndpoint2().getActorRef()); + pes = Graphiti.getLinkService().getPictogramElements(diagram, ((ActorRef)b.getEndpoint2().getActorRef())); + assertEquals("instances of second ref", 1, pes.size()); + } + } + + /* (non-Javadoc) + * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy() + */ + @Override + protected URL getModelsDirectoy() { + return StructureTestActivator.getInstance().getBundle().getEntry("models"); + } + +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithPorts.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithPorts.java index 7cceff6c5..e7895dcc7 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithPorts.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithPorts.java @@ -1,49 +1,49 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.ui.structure.DiagramAccess;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.Test;
-
-public class TestActorClassWithPorts extends TestActorClass {
-
- @Test
- public void checkPorts() {
- ActorClass ac = getModels().get(0).getActorClasses().get(0);
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- ContainerShape shape = (ContainerShape) diagram.getChildren().get(0);
- assertEquals("actor class child shapes", 3, shape.getChildren().size());
-
- for (Shape childShape : shape.getChildren()) {
- EObject[] bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(childShape);
- assertEquals("business objects", 1, bos.length);
- assertTrue("bo is port", bos[0] instanceof Port);
- }
- }
-
- @Override
- protected String getModelFileName() {
- return "ActorClassWithPorts.room";
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.ui.structure.DiagramAccess; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.Test; + +public class TestActorClassWithPorts extends TestActorClass { + + @Test + public void checkPorts() { + ActorClass ac = getModels().get(0).getActorClasses().get(0); + Diagram diagram = new DiagramAccess().getDiagram(ac); + ContainerShape shape = (ContainerShape) diagram.getChildren().get(0); + assertEquals("actor class child shapes", 3, shape.getChildren().size()); + + for (Shape childShape : shape.getChildren()) { + EObject[] bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(childShape); + assertEquals("business objects", 1, bos.length); + assertTrue("bo is port", bos[0] instanceof Port); + } + } + + @Override + protected String getModelFileName() { + return "ActorClassWithPorts.room"; + } +} diff --git a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithReferences.java b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithReferences.java index 03120e52e..45b5cc01e 100644 --- a/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithReferences.java +++ b/tests/org.eclipse.etrice.ui.structure.tests/src/org/eclipse/etrice/ui/structure/commands/TestActorClassWithReferences.java @@ -1,107 +1,107 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.ui.structure.commands;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.net.URL;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.etrice.core.room.ActorClass;
-import org.eclipse.etrice.core.room.ActorRef;
-import org.eclipse.etrice.core.room.Port;
-import org.eclipse.etrice.tests.base.TestBase;
-import org.eclipse.etrice.ui.structure.DiagramAccess;
-import org.eclipse.etrice.ui.structure.StructureTestActivator;
-import org.eclipse.graphiti.mm.algorithms.Text;
-import org.eclipse.graphiti.mm.pictograms.ContainerShape;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.mm.pictograms.Shape;
-import org.eclipse.graphiti.services.Graphiti;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class TestActorClassWithReferences extends TestBase {
-
- private ActorClass ac = null;
-
- @Before
- public void setUp() {
- loadModelFile();
-
- assertEquals("models read", 1, getModels().size());
- assertEquals("actor classes in our model", 2, getModels().get(0).getActorClasses().size());
-
- for (ActorClass a : getModels().get(0).getActorClasses()) {
- if (a.getName().equals("MyActorClass")) {
- ac = a;
- break;
- }
- }
- assertNotNull("ActorClass expected", ac);
- }
-
- @After
- public void tearDown() {
- removeDiagramsDirectory();
- }
-
- @Override
- protected String getModelFileName() {
- return "ActorClassWithReferences.room";
- }
-
- @Test
- public void checkReferences() {
- Diagram diagram = new DiagramAccess().getDiagram(ac);
- ContainerShape shape = (ContainerShape) diagram.getChildren().get(0);
- assertEquals("actor class child shapes", 5, shape.getChildren().size());
-
- int nRefs = 0;
- for (Shape childShape : shape.getChildren()) {
- EObject[] bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(childShape);
- assertEquals("business objects", 1, bos.length);
- if (!(bos[0] instanceof Port)) {
- assertTrue("bo is actor ref", bos[0] instanceof ActorRef);
- nRefs++;
-
- // ports of actor refs
- assertEquals("grand child shapes", 2, ((ContainerShape)childShape).getChildren().size());
- for (Shape grandChildShape : ((ContainerShape)childShape).getChildren()) {
- // skip the actor ref label
- if (grandChildShape.getGraphicsAlgorithm() instanceof Text)
- continue;
-
- bos = Graphiti.getLinkService()
- .getAllBusinessObjectsForLinkedPictogramElement(grandChildShape);
- assertEquals("business objects", 1, bos.length);
- assertTrue("bo is port", bos[0] instanceof Port);
- }
- }
- }
- assertEquals("number of actor references", 2, nRefs);
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy()
- */
- @Override
- protected URL getModelsDirectoy() {
- return StructureTestActivator.getInstance().getBundle().getEntry("models");
- }
-
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.structure.commands; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.net.URL; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.etrice.core.room.ActorClass; +import org.eclipse.etrice.core.room.ActorRef; +import org.eclipse.etrice.core.room.Port; +import org.eclipse.etrice.tests.base.TestBase; +import org.eclipse.etrice.ui.structure.DiagramAccess; +import org.eclipse.etrice.ui.structure.StructureTestActivator; +import org.eclipse.graphiti.mm.algorithms.Text; +import org.eclipse.graphiti.mm.pictograms.ContainerShape; +import org.eclipse.graphiti.mm.pictograms.Diagram; +import org.eclipse.graphiti.mm.pictograms.Shape; +import org.eclipse.graphiti.services.Graphiti; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +public class TestActorClassWithReferences extends TestBase { + + private ActorClass ac = null; + + @Before + public void setUp() { + loadModelFile(); + + assertEquals("models read", 1, getModels().size()); + assertEquals("actor classes in our model", 2, getModels().get(0).getActorClasses().size()); + + for (ActorClass a : getModels().get(0).getActorClasses()) { + if (a.getName().equals("MyActorClass")) { + ac = a; + break; + } + } + assertNotNull("ActorClass expected", ac); + } + + @After + public void tearDown() { + removeDiagramsDirectory(); + } + + @Override + protected String getModelFileName() { + return "ActorClassWithReferences.room"; + } + + @Test + public void checkReferences() { + Diagram diagram = new DiagramAccess().getDiagram(ac); + ContainerShape shape = (ContainerShape) diagram.getChildren().get(0); + assertEquals("actor class child shapes", 5, shape.getChildren().size()); + + int nRefs = 0; + for (Shape childShape : shape.getChildren()) { + EObject[] bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(childShape); + assertEquals("business objects", 1, bos.length); + if (!(bos[0] instanceof Port)) { + assertTrue("bo is actor ref", bos[0] instanceof ActorRef); + nRefs++; + + // ports of actor refs + assertEquals("grand child shapes", 2, ((ContainerShape)childShape).getChildren().size()); + for (Shape grandChildShape : ((ContainerShape)childShape).getChildren()) { + // skip the actor ref label + if (grandChildShape.getGraphicsAlgorithm() instanceof Text) + continue; + + bos = Graphiti.getLinkService() + .getAllBusinessObjectsForLinkedPictogramElement(grandChildShape); + assertEquals("business objects", 1, bos.length); + assertTrue("bo is port", bos[0] instanceof Port); + } + } + } + assertEquals("number of actor references", 2, nRefs); + } + + /* (non-Javadoc) + * @see org.eclipse.etrice.tests.base.TestBase#getModelsDirectoy() + */ + @Override + protected URL getModelsDirectoy() { + return StructureTestActivator.getInstance().getBundle().getEntry("models"); + } + +} diff --git a/tests/org.eclipse.etrice.ui.tests.base/.classpath b/tests/org.eclipse.etrice.ui.tests.base/.classpath index 8a8f1668c..ad32c83a7 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/.classpath +++ b/tests/org.eclipse.etrice.ui.tests.base/.classpath @@ -1,7 +1,7 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/tests/org.eclipse.etrice.ui.tests.base/.gitignore b/tests/org.eclipse.etrice.ui.tests.base/.gitignore index 092357e47..ba077a403 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/.gitignore +++ b/tests/org.eclipse.etrice.ui.tests.base/.gitignore @@ -1 +1 @@ -bin
+bin diff --git a/tests/org.eclipse.etrice.ui.tests.base/.project b/tests/org.eclipse.etrice.ui.tests.base/.project index 56bbc0f5a..ebe0323d9 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/.project +++ b/tests/org.eclipse.etrice.ui.tests.base/.project @@ -1,28 +1,28 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.ui.tests.base</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.etrice.ui.tests.base</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs index a5e428cf7..00cf6ec9e 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs +++ b/tests/org.eclipse.etrice.ui.tests.base/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ -#Thu Feb 10 12:03:48 CET 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+#Thu Feb 10 12:03:48 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF index b92cadd9d..f5f9c8f9e 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.ui.tests.base/META-INF/MANIFEST.MF @@ -1,14 +1,14 @@ -Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: eTrice Diagram Test Base Classes
-Bundle-SymbolicName: org.eclipse.etrice.ui.tests.base
-Bundle-Version: 0.3.0.qualifier
-Require-Bundle: org.junit;bundle-version="4.8.1",
- org.eclipse.core.runtime,
- org.eclipse.etrice.core.room;bundle-version="0.3.0",
- org.eclipse.etrice.ui.structure;bundle-version="0.3.0",
- org.eclipse.xtext;bundle-version="2.1.1",
- org.eclipse.graphiti;bundle-version="0.8.0"
-Bundle-Vendor: Eclipse eTrice (Incubation)
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Export-Package: org.eclipse.etrice.tests.base
+Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: eTrice Diagram Test Base Classes +Bundle-SymbolicName: org.eclipse.etrice.ui.tests.base +Bundle-Version: 0.3.0.qualifier +Require-Bundle: org.junit;bundle-version="4.8.1", + org.eclipse.core.runtime, + org.eclipse.etrice.core.room;bundle-version="0.3.0", + org.eclipse.etrice.ui.structure;bundle-version="0.3.0", + org.eclipse.xtext;bundle-version="2.1.1", + org.eclipse.graphiti;bundle-version="0.8.0" +Bundle-Vendor: Eclipse eTrice (Incubation) +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.etrice.tests.base diff --git a/tests/org.eclipse.etrice.ui.tests.base/about.html b/tests/org.eclipse.etrice.ui.tests.base/about.html index f47dbddbb..c258ef55d 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/about.html +++ b/tests/org.eclipse.etrice.ui.tests.base/about.html @@ -1,28 +1,28 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 5, 2006</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, "Program" will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party ("Redistributor") and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2006</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> </html>
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.tests.base/build.properties b/tests/org.eclipse.etrice.ui.tests.base/build.properties index 41eb6ade2..34d2e4d2d 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/build.properties +++ b/tests/org.eclipse.etrice.ui.tests.base/build.properties @@ -1,4 +1,4 @@ -source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .
+source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java b/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java index fc80b940a..73a95af74 100644 --- a/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java +++ b/tests/org.eclipse.etrice.ui.tests.base/src/org/eclipse/etrice/tests/base/TestBase.java @@ -1,89 +1,89 @@ -/*******************************************************************************
- * Copyright (c) 2010 protos software gmbh (http://www.protos.de).
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * CONTRIBUTORS:
- * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution)
- *
- *******************************************************************************/
-
-package org.eclipse.etrice.tests.base;
-
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.LinkedList;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.etrice.core.room.RoomModel;
-import org.eclipse.graphiti.mm.algorithms.styles.Color;
-import org.eclipse.graphiti.util.IColorConstant;
-import org.eclipse.xtext.resource.XtextResource;
-import org.eclipse.xtext.resource.XtextResourceSet;
-
-public abstract class TestBase {
-
- private String basePath;
- private LinkedList<RoomModel> models = new LinkedList<RoomModel>();
-
- protected void loadModelFile() {
- try {
- URL modelsDir = getModelsDirectoy();
- URL fileURL = FileLocator.toFileURL(modelsDir);
- basePath = fileURL.getFile();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- loadModels(getModelFileName());
- }
-
- protected void removeDiagramsDirectory() {
- File diagDir = new File(basePath+File.separator+"diagrams");
- if (diagDir.isDirectory()) {
- File[] files = diagDir.listFiles();
- if (files!=null)
- for (int i = 0; i < files.length; i++) {
- files[i].delete();
- }
- diagDir.delete();
- }
- }
-
- private void loadModels(String modelName) {
- XtextResourceSet rs = new XtextResourceSet();
- rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE);
- String path = basePath + modelName;
- URI uri = URI.createFileURI(path);
- Resource resource = rs.getResource(uri, true);
- Object root = resource.getContents().get(0);
- if (root instanceof RoomModel)
- models.add((RoomModel) root);
- else
- fail("File contains no RoomModel as root object");
- }
-
- public LinkedList<RoomModel> getModels() {
- return models;
- }
-
- protected abstract String getModelFileName();
- protected abstract URL getModelsDirectoy();
-
- protected boolean isEqual(Color c, IColorConstant cc) {
- if (c.getRed()!=cc.getRed())
- return false;
- if (c.getGreen()!=cc.getGreen())
- return false;
- if (c.getBlue()!=cc.getBlue())
- return false;
- return true;
- }
-}
+/******************************************************************************* + * Copyright (c) 2010 protos software gmbh (http://www.protos.de). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * CONTRIBUTORS: + * Thomas Schuetz and Henrik Rentz-Reichert (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.tests.base; + +import static org.junit.Assert.fail; + +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.util.LinkedList; + +import org.eclipse.core.runtime.FileLocator; +import org.eclipse.emf.common.util.URI; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.etrice.core.room.RoomModel; +import org.eclipse.graphiti.mm.algorithms.styles.Color; +import org.eclipse.graphiti.util.IColorConstant; +import org.eclipse.xtext.resource.XtextResource; +import org.eclipse.xtext.resource.XtextResourceSet; + +public abstract class TestBase { + + private String basePath; + private LinkedList<RoomModel> models = new LinkedList<RoomModel>(); + + protected void loadModelFile() { + try { + URL modelsDir = getModelsDirectoy(); + URL fileURL = FileLocator.toFileURL(modelsDir); + basePath = fileURL.getFile(); + } catch (IOException e) { + e.printStackTrace(); + } + + loadModels(getModelFileName()); + } + + protected void removeDiagramsDirectory() { + File diagDir = new File(basePath+File.separator+"diagrams"); + if (diagDir.isDirectory()) { + File[] files = diagDir.listFiles(); + if (files!=null) + for (int i = 0; i < files.length; i++) { + files[i].delete(); + } + diagDir.delete(); + } + } + + private void loadModels(String modelName) { + XtextResourceSet rs = new XtextResourceSet(); + rs.addLoadOption(XtextResource.OPTION_RESOLVE_ALL, Boolean.TRUE); + String path = basePath + modelName; + URI uri = URI.createFileURI(path); + Resource resource = rs.getResource(uri, true); + Object root = resource.getContents().get(0); + if (root instanceof RoomModel) + models.add((RoomModel) root); + else + fail("File contains no RoomModel as root object"); + } + + public LinkedList<RoomModel> getModels() { + return models; + } + + protected abstract String getModelFileName(); + protected abstract URL getModelsDirectoy(); + + protected boolean isEqual(Color c, IColorConstant cc) { + if (c.getRed()!=cc.getRed()) + return false; + if (c.getGreen()!=cc.getGreen()) + return false; + if (c.getBlue()!=cc.getBlue()) + return false; + return true; + } +} |