Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorThomas Schuetz2012-10-29 16:14:02 +0000
committerThomas Schuetz2012-10-29 16:14:02 +0000
commita3fc9f7ab62dffb1a1df18145745018924323029 (patch)
treed504bf56f52a8e58365cc8d94591fd38f490248a /tests
parent3695212f9ea0b7f7d90932e2c57b2705c8852643 (diff)
downloadorg.eclipse.etrice-a3fc9f7ab62dffb1a1df18145745018924323029.tar.gz
org.eclipse.etrice-a3fc9f7ab62dffb1a1df18145745018924323029.tar.xz
org.eclipse.etrice-a3fc9f7ab62dffb1a1df18145745018924323029.zip
[generator.c] changed initialization of external types / checked in
other line endings to get rid of diffs
Diffstat (limited to 'tests')
-rw-r--r--tests/org.eclipse.etrice.abstractexec.behavior.tests/META-INF/MANIFEST.MF30
-rw-r--r--tests/org.eclipse.etrice.core.config.tests/.project56
-rw-r--r--tests/org.eclipse.etrice.core.config.tests/build.properties6
-rw-r--r--tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigInjectorProvider.java90
-rw-r--r--tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigUiInjectorProvider.java32
-rw-r--r--tests/org.eclipse.etrice.core.genmodel.tests/META-INF/MANIFEST.MF26
-rw-r--r--tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF24
-rw-r--r--tests/org.eclipse.etrice.etunit.converter.tests/reports/out.tex82
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/.gitignore4
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/.project154
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.codan.core.prefs132
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.managedbuilder.core.prefs44
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.ui.prefs6
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/genGeneratorTest1.launch22
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/genSendingDataTest.launch22
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/GeneratorTest1.room208
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.SS.structure178
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.behavior480
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.structure72
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.behavior270
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.structure72
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.c154
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.h96
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.c184
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.h56
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Disp.h60
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Inst.h102
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Runner.c98
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.c466
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.h122
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.c380
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.h122
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src-gen/readme.txt8
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/RunCGeneratorTestcases.h52
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/TestDataClass.h52
-rw-r--r--tests/org.eclipse.etrice.generator.c.tests.old/tmp/testlog/GeneratorTest1.xml10
-rw-r--r--tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room438
-rw-r--r--tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room298
-rw-r--r--tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room308
-rw-r--r--tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room1182
-rw-r--r--tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestJava.room1182
-rw-r--r--tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties10
-rw-r--r--tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestInjectorProvider.java90
-rw-r--r--tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestUiInjectorProvider.java32
44 files changed, 3756 insertions, 3756 deletions
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 1fe3c072c..b29448752 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,15 +1,15 @@
-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: 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
+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: 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
diff --git a/tests/org.eclipse.etrice.core.config.tests/.project b/tests/org.eclipse.etrice.core.config.tests/.project
index 63e34047b..222434a1c 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/build.properties b/tests/org.eclipse.etrice.core.config.tests/build.properties
index 82a84700f..6ff55e9c6 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.config.tests/src-gen/org/eclipse/etrice/core/ConfigInjectorProvider.java b/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigInjectorProvider.java
index 81ed8313a..87a596f46 100644
--- a/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigInjectorProvider.java
+++ b/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigInjectorProvider.java
@@ -1,45 +1,45 @@
-/*
-* generated by Xtext
-*/
-package org.eclipse.etrice.core;
-
-import org.eclipse.xtext.junit4.GlobalRegistries;
-import org.eclipse.xtext.junit4.GlobalRegistries.GlobalStateMemento;
-import org.eclipse.xtext.junit4.IInjectorProvider;
-import org.eclipse.xtext.junit4.IRegistryConfigurator;
-
-import com.google.inject.Injector;
-
-public class ConfigInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
-
- protected GlobalStateMemento stateBeforeInjectorCreation;
- protected GlobalStateMemento stateAfterInjectorCreation;
- protected Injector injector;
-
- static {
- GlobalRegistries.initializeDefaults();
- }
-
- public Injector getInjector()
- {
- if (injector == null) {
- stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
- this.injector = internalCreateInjector();
- stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
- }
- return injector;
- }
-
- protected Injector internalCreateInjector() {
- return new ConfigStandaloneSetup().createInjectorAndDoEMFRegistration();
- }
-
- public void restoreRegistry() {
- stateBeforeInjectorCreation.restoreGlobalState();
- }
-
- public void setupRegistry() {
- getInjector();
- stateAfterInjectorCreation.restoreGlobalState();
- }
-}
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core;
+
+import org.eclipse.xtext.junit4.GlobalRegistries;
+import org.eclipse.xtext.junit4.GlobalRegistries.GlobalStateMemento;
+import org.eclipse.xtext.junit4.IInjectorProvider;
+import org.eclipse.xtext.junit4.IRegistryConfigurator;
+
+import com.google.inject.Injector;
+
+public class ConfigInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
+
+ protected GlobalStateMemento stateBeforeInjectorCreation;
+ protected GlobalStateMemento stateAfterInjectorCreation;
+ protected Injector injector;
+
+ static {
+ GlobalRegistries.initializeDefaults();
+ }
+
+ public Injector getInjector()
+ {
+ if (injector == null) {
+ stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
+ this.injector = internalCreateInjector();
+ stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
+ }
+ return injector;
+ }
+
+ protected Injector internalCreateInjector() {
+ return new ConfigStandaloneSetup().createInjectorAndDoEMFRegistration();
+ }
+
+ public void restoreRegistry() {
+ stateBeforeInjectorCreation.restoreGlobalState();
+ }
+
+ public void setupRegistry() {
+ getInjector();
+ stateAfterInjectorCreation.restoreGlobalState();
+ }
+}
diff --git a/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigUiInjectorProvider.java b/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigUiInjectorProvider.java
index 34b7a4cd5..a978aa3a2 100644
--- a/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigUiInjectorProvider.java
+++ b/tests/org.eclipse.etrice.core.config.tests/src-gen/org/eclipse/etrice/core/ConfigUiInjectorProvider.java
@@ -1,16 +1,16 @@
-/*
-* generated by Xtext
-*/
-package org.eclipse.etrice.core;
-
-import org.eclipse.xtext.junit4.IInjectorProvider;
-
-import com.google.inject.Injector;
-
-public class ConfigUiInjectorProvider implements IInjectorProvider {
-
- public Injector getInjector() {
- return org.eclipse.etrice.core.ui.internal.ConfigActivator.getInstance().getInjector("org.eclipse.etrice.core.Config");
- }
-
-}
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.core;
+
+import org.eclipse.xtext.junit4.IInjectorProvider;
+
+import com.google.inject.Injector;
+
+public class ConfigUiInjectorProvider implements IInjectorProvider {
+
+ public Injector getInjector() {
+ return org.eclipse.etrice.core.ui.internal.ConfigActivator.getInstance().getInjector("org.eclipse.etrice.core.Config");
+ }
+
+}
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 c5acb2e4a..6a5515e51 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,13 +1,13 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Tests
-Bundle-SymbolicName: org.eclipse.etrice.core.genmodel.tests
-Bundle-Version: 0.2.0.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.2.0",
- org.eclipse.etrice.core.genmodel;bundle-version="0.2.0",
- org.junit4;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.2.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Require-Bundle: org.eclipse.etrice.core.room;bundle-version="0.2.0",
+ org.eclipse.etrice.core.genmodel;bundle-version="0.2.0",
+ org.junit4;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.etunit.converter.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.etunit.converter.tests/META-INF/MANIFEST.MF
index 84fc8714e..3dfcc9572 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.2.0.qualifier
-Bundle-Activator: org.eclipse.etrice.etunit.converter.tests.Activator
-Bundle-Vendor: eTrice (incubation)
-Require-Bundle: org.eclipse.etrice.etunit.converter;bundle-version="0.2.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.2.0.qualifier
+Bundle-Activator: org.eclipse.etrice.etunit.converter.tests.Activator
+Bundle-Vendor: eTrice (incubation)
+Require-Bundle: org.eclipse.etrice.etunit.converter;bundle-version="0.2.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/reports/out.tex b/tests/org.eclipse.etrice.etunit.converter.tests/reports/out.tex
index 2dd4a35ee..a7b70cec1 100644
--- a/tests/org.eclipse.etrice.etunit.converter.tests/reports/out.tex
+++ b/tests/org.eclipse.etrice.etunit.converter.tests/reports/out.tex
@@ -1,41 +1,41 @@
-\newcommand{\ForAllTestCases}{}%
-\newcounter{FailCount}%
-\newcommand{\ForAllSuites}{%
- %\DoSuite{name}{nTests}{nPassed}{nFail}{time}%
- \setcounter{FailCount}{0}%
- \renewcommand{\ForAllTestCases}{%
- %\DoCase{name}{time}{status}{msg}{short}{long}%
- \DoCase{TestEtMessage_testBasicMessage}{0}{pass}{}{\TestMessageTestEtMessage_testBasicMessageshortdesc}{\TestMessageTestEtMessage_testBasicMessagelongdesc}%
- }%
- \DoSuite{TestMessage}{1}{1}{0}{0}%
- \setcounter{FailCount}{1}%
- \renewcommand{\ForAllTestCases}{%
- %\DoCase{name}{time}{status}{msg}{short}{long}%
- \DoCase{TestEtMessageQueue_testPushPop}{0}{fail}{expected 334 but was 333}{\TestEtMessageQueueTestEtMessageQueue_testPushPopshortdesc}{\TestEtMessageQueueTestEtMessageQueue_testPushPoplongdesc}%
- \DoCase{TestEtMessageQueue_testMassiveMessaging}{187}{pass}{}{\TestEtMessageQueueTestEtMessageQueue_testMassiveMessagingshortdesc}{\TestEtMessageQueueTestEtMessageQueue_testMassiveMessaginglongdesc}%
- }%
- \DoSuite{TestEtMessageQueue}{2}{1}{1}{187}%
- \setcounter{FailCount}{0}%
- \renewcommand{\ForAllTestCases}{%
- %\DoCase{name}{time}{status}{msg}{short}{long}%
- \DoCase{TestEtMessageService_init}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_initshortdesc}{\TestEtMessageServiceTestEtMessageService_initlongdesc}%
- \DoCase{TestEtMessageService_GetPushPopReturn}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_GetPushPopReturnshortdesc}{\TestEtMessageServiceTestEtMessageService_GetPushPopReturnlongdesc}%
- \DoCase{TestEtMessageService_GetReturn}{16}{pass}{}{\TestEtMessageServiceTestEtMessageService_GetReturnshortdesc}{\TestEtMessageServiceTestEtMessageService_GetReturnlongdesc}%
- \DoCase{TestEtMessageService_execute}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_executeshortdesc}{\TestEtMessageServiceTestEtMessageService_executelongdesc}%
- \DoCase{TestEtMessageService_getMessagePoolLowWaterMark}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_getMessagePoolLowWaterMarkshortdesc}{\TestEtMessageServiceTestEtMessageService_getMessagePoolLowWaterMarklongdesc}%
- }%
- \DoSuite{TestEtMessageService}{5}{5}{0}{16}%
- \setcounter{FailCount}{0}%
- \renewcommand{\ForAllTestCases}{%
- %\DoCase{name}{time}{status}{msg}{short}{long}%
- \DoCase{TestEtUnit_Expect_Order}{0}{pass}{}{\TestEtUnitTestEtUnit_Expect_Ordershortdesc}{\TestEtUnitTestEtUnit_Expect_Orderlongdesc}%
- \DoCase{TestEtUnit_Expect}{0}{pass}{}{\TestEtUnitTestEtUnit_Expectshortdesc}{\TestEtUnitTestEtUnit_Expectlongdesc}%
- }%
- \DoSuite{TestEtUnit}{2}{2}{0}{0}%
- \setcounter{FailCount}{0}%
- \renewcommand{\ForAllTestCases}{%
- %\DoCase{name}{time}{status}{msg}{short}{long}%
- \DoCase{openAll and closeAll}{0}{pass}{}{\etUnitopenAll and closeAllshortdesc}{\etUnitopenAll and closeAlllongdesc}%
- }%
- \DoSuite{etUnit}{1}{1}{0}{0}%
-}%
+\newcommand{\ForAllTestCases}{}%
+\newcounter{FailCount}%
+\newcommand{\ForAllSuites}{%
+ %\DoSuite{name}{nTests}{nPassed}{nFail}{time}%
+ \setcounter{FailCount}{0}%
+ \renewcommand{\ForAllTestCases}{%
+ %\DoCase{name}{time}{status}{msg}{short}{long}%
+ \DoCase{TestEtMessage_testBasicMessage}{0}{pass}{}{\TestMessageTestEtMessage_testBasicMessageshortdesc}{\TestMessageTestEtMessage_testBasicMessagelongdesc}%
+ }%
+ \DoSuite{TestMessage}{1}{1}{0}{0}%
+ \setcounter{FailCount}{1}%
+ \renewcommand{\ForAllTestCases}{%
+ %\DoCase{name}{time}{status}{msg}{short}{long}%
+ \DoCase{TestEtMessageQueue_testPushPop}{0}{fail}{expected 334 but was 333}{\TestEtMessageQueueTestEtMessageQueue_testPushPopshortdesc}{\TestEtMessageQueueTestEtMessageQueue_testPushPoplongdesc}%
+ \DoCase{TestEtMessageQueue_testMassiveMessaging}{187}{pass}{}{\TestEtMessageQueueTestEtMessageQueue_testMassiveMessagingshortdesc}{\TestEtMessageQueueTestEtMessageQueue_testMassiveMessaginglongdesc}%
+ }%
+ \DoSuite{TestEtMessageQueue}{2}{1}{1}{187}%
+ \setcounter{FailCount}{0}%
+ \renewcommand{\ForAllTestCases}{%
+ %\DoCase{name}{time}{status}{msg}{short}{long}%
+ \DoCase{TestEtMessageService_init}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_initshortdesc}{\TestEtMessageServiceTestEtMessageService_initlongdesc}%
+ \DoCase{TestEtMessageService_GetPushPopReturn}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_GetPushPopReturnshortdesc}{\TestEtMessageServiceTestEtMessageService_GetPushPopReturnlongdesc}%
+ \DoCase{TestEtMessageService_GetReturn}{16}{pass}{}{\TestEtMessageServiceTestEtMessageService_GetReturnshortdesc}{\TestEtMessageServiceTestEtMessageService_GetReturnlongdesc}%
+ \DoCase{TestEtMessageService_execute}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_executeshortdesc}{\TestEtMessageServiceTestEtMessageService_executelongdesc}%
+ \DoCase{TestEtMessageService_getMessagePoolLowWaterMark}{0}{pass}{}{\TestEtMessageServiceTestEtMessageService_getMessagePoolLowWaterMarkshortdesc}{\TestEtMessageServiceTestEtMessageService_getMessagePoolLowWaterMarklongdesc}%
+ }%
+ \DoSuite{TestEtMessageService}{5}{5}{0}{16}%
+ \setcounter{FailCount}{0}%
+ \renewcommand{\ForAllTestCases}{%
+ %\DoCase{name}{time}{status}{msg}{short}{long}%
+ \DoCase{TestEtUnit_Expect_Order}{0}{pass}{}{\TestEtUnitTestEtUnit_Expect_Ordershortdesc}{\TestEtUnitTestEtUnit_Expect_Orderlongdesc}%
+ \DoCase{TestEtUnit_Expect}{0}{pass}{}{\TestEtUnitTestEtUnit_Expectshortdesc}{\TestEtUnitTestEtUnit_Expectlongdesc}%
+ }%
+ \DoSuite{TestEtUnit}{2}{2}{0}{0}%
+ \setcounter{FailCount}{0}%
+ \renewcommand{\ForAllTestCases}{%
+ %\DoCase{name}{time}{status}{msg}{short}{long}%
+ \DoCase{openAll and closeAll}{0}{pass}{}{\etUnitopenAll and closeAllshortdesc}{\etUnitopenAll and closeAlllongdesc}%
+ }%
+ \DoSuite{etUnit}{1}{1}{0}{0}%
+}%
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/.gitignore b/tests/org.eclipse.etrice.generator.c.tests.old/.gitignore
index 0f3a6b1b9..76b025ad1 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/.gitignore
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/.gitignore
@@ -1,2 +1,2 @@
-Debug
-Release
+Debug
+Release
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/.project b/tests/org.eclipse.etrice.generator.c.tests.old/.project
index 78c0766b2..802da5b53 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/.project
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/.project
@@ -1,77 +1,77 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.etrice.generator.c.tests.old</name>
- <comment></comment>
- <projects>
- <project>org.eclipse.etrice.runtime.c</project>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
- <triggers>clean,full,incremental,</triggers>
- <arguments>
- <dictionary>
- <key>?name?</key>
- <value></value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.append_environment</key>
- <value>true</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.buildArguments</key>
- <value></value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.buildCommand</key>
- <value>make</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.buildLocation</key>
- <value>${workspace_loc:/org.eclipse.etrice.generator.c.tests/Debug}</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.contents</key>
- <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
- <value>false</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
- <value>true</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.enableFullBuild</key>
- <value>true</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.stopOnError</key>
- <value>true</value>
- </dictionary>
- <dictionary>
- <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
- <value>true</value>
- </dictionary>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
- <triggers>full,incremental,</triggers>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.cdt.core.cnature</nature>
- <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
- <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
- <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.old</name>
+ <comment></comment>
+ <projects>
+ <project>org.eclipse.etrice.runtime.c</project>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+ <triggers>clean,full,incremental,</triggers>
+ <arguments>
+ <dictionary>
+ <key>?name?</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.append_environment</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildArguments</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildCommand</key>
+ <value>make</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildLocation</key>
+ <value>${workspace_loc:/org.eclipse.etrice.generator.c.tests/Debug}</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.contents</key>
+ <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
+ <value>false</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableFullBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.stopOnError</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
+ <value>true</value>
+ </dictionary>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+ <triggers>full,incremental,</triggers>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ </natures>
+</projectDescription>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.codan.core.prefs b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.codan.core.prefs
index 9f5f4e439..a601c60c6 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.codan.core.prefs
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.codan.core.prefs
@@ -1,66 +1,66 @@
-#Mon Dec 26 18:56:09 CET 2011
-eclipse.preferences.version=1
-org.eclipse.cdt.codan.checkers.errnoreturn=Warning
-org.eclipse.cdt.codan.checkers.errnoreturn.params={implicit\=>false}
-org.eclipse.cdt.codan.checkers.errreturnvalue=Error
-org.eclipse.cdt.codan.checkers.errreturnvalue.params={}
-org.eclipse.cdt.codan.checkers.noreturn=Error
-org.eclipse.cdt.codan.checkers.noreturn.params={implicit\=>false}
-org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
-org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
-org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
-org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={no_break_comment\=>"no break",last_case_param\=>true,empty_case_param\=>false}
-org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
-org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={unknown\=>false,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
-org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
-org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
-org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
-org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
-org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
-org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
-org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
-org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
-org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
-org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={macro\=>true,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={paramNot\=>false}
-org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={else\=>false,afterelse\=>false}
-org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={macro\=>true}
-org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={macro\=>true}
-org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={macro\=>true,exceptions\=>("@(\#)","$Id")}
-org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+#Mon Dec 26 18:56:09 CET 2011
+eclipse.preferences.version=1
+org.eclipse.cdt.codan.checkers.errnoreturn=Warning
+org.eclipse.cdt.codan.checkers.errnoreturn.params={implicit\=>false}
+org.eclipse.cdt.codan.checkers.errreturnvalue=Error
+org.eclipse.cdt.codan.checkers.errreturnvalue.params={}
+org.eclipse.cdt.codan.checkers.noreturn=Error
+org.eclipse.cdt.codan.checkers.noreturn.params={implicit\=>false}
+org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
+org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
+org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={}
+org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
+org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={}
+org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={no_break_comment\=>"no break",last_case_param\=>true,empty_case_param\=>false}
+org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
+org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={unknown\=>false,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
+org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
+org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
+org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
+org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
+org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
+org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={}
+org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
+org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
+org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
+org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={}
+org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
+org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={}
+org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={macro\=>true,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={paramNot\=>false}
+org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={else\=>false,afterelse\=>false}
+org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
+org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={macro\=>true}
+org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={macro\=>true}
+org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={macro\=>true,exceptions\=>("@(\#)","$Id")}
+org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.managedbuilder.core.prefs
index dea3bcaa0..c8ab060bd 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.managedbuilder.core.prefs
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.managedbuilder.core.prefs
@@ -1,22 +1,22 @@
-#Tue Dec 27 19:24:40 CET 2011
-eclipse.preferences.version=1
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/appendContributed=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/appendContributed=true
+#Tue Dec 27 19:24:40 CET 2011
+eclipse.preferences.version=1
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/CPATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/CPATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/C_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/C_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/append=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/appendContributed=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/CPATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/CPATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/C_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/C_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/append=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/appendContributed=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/LIBRARY_PATH/delimiter=;
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/LIBRARY_PATH/operation=remove
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/append=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.54263550/appendContributed=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/LIBRARY_PATH/delimiter=;
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/LIBRARY_PATH/operation=remove
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/append=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1445732435/appendContributed=true
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.ui.prefs b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.ui.prefs
index ea816250e..b54a8a76f 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.ui.prefs
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/.settings/org.eclipse.cdt.ui.prefs
@@ -1,3 +1,3 @@
-#Wed Jan 11 10:35:04 CET 2012
-eclipse.preferences.version=1
-formatter_settings_version=1
+#Wed Jan 11 10:35:04 CET 2012
+eclipse.preferences.version=1
+formatter_settings_version=1
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/genGeneratorTest1.launch b/tests/org.eclipse.etrice.generator.c.tests.old/genGeneratorTest1.launch
index 77ed21202..c1de75592 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/genGeneratorTest1.launch
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/genGeneratorTest1.launch
@@ -1,11 +1,11 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.etrice.generator.launch.c.launchConfigurationType">
-<booleanAttribute key="GenInstanceDiagram" value="false"/>
-<stringAttribute key="GenModelPath" value=""/>
-<booleanAttribute key="Lib" value="false"/>
-<listAttribute key="ModelFiles">
-<listEntry value="${workspace_loc:/org.eclipse.etrice.generator.c.tests/model/GeneratorTest1.room}"/>
-</listAttribute>
-<booleanAttribute key="SaveGenModel" value="false"/>
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.etrice.generator.launch.c.launchConfigurationType">
+<booleanAttribute key="GenInstanceDiagram" value="false"/>
+<stringAttribute key="GenModelPath" value=""/>
+<booleanAttribute key="Lib" value="false"/>
+<listAttribute key="ModelFiles">
+<listEntry value="${workspace_loc:/org.eclipse.etrice.generator.c.tests/model/GeneratorTest1.room}"/>
+</listAttribute>
+<booleanAttribute key="SaveGenModel" value="false"/>
+<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
+</launchConfiguration>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/genSendingDataTest.launch b/tests/org.eclipse.etrice.generator.c.tests.old/genSendingDataTest.launch
index be15c22ae..c36db7ddf 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/genSendingDataTest.launch
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/genSendingDataTest.launch
@@ -1,11 +1,11 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.etrice.generator.launch.c.launchConfigurationType">
-<booleanAttribute key="GenInstanceDiagram" value="false"/>
-<stringAttribute key="GenModelPath" value=""/>
-<booleanAttribute key="Lib" value="false"/>
-<listAttribute key="ModelFiles">
-<listEntry value="${workspace_loc:/org.eclipse.etrice.generator.c.tests/model/SendingDataTest.room}"/>
-</listAttribute>
-<booleanAttribute key="SaveGenModel" value="false"/>
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.etrice.generator.launch.c.launchConfigurationType">
+<booleanAttribute key="GenInstanceDiagram" value="false"/>
+<stringAttribute key="GenModelPath" value=""/>
+<booleanAttribute key="Lib" value="false"/>
+<listAttribute key="ModelFiles">
+<listEntry value="${workspace_loc:/org.eclipse.etrice.generator.c.tests/model/SendingDataTest.room}"/>
+</listAttribute>
+<booleanAttribute key="SaveGenModel" value="false"/>
+<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
+</launchConfiguration>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/model/GeneratorTest1.room b/tests/org.eclipse.etrice.generator.c.tests.old/model/GeneratorTest1.room
index ef31585f8..a163a3cc6 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/GeneratorTest1.room
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/GeneratorTest1.room
@@ -1,105 +1,105 @@
-RoomModel GeneratorTest1 {
- import room.basic.types.c.* from "CTypes.room"
-
- SubSystemClass SS {
- ActorRef tester: Tester
- ActorRef testee: Testee
- Binding testee.tester and tester.testee
- }
-
- ActorClass Tester{
- Interface {
- conjugated Port testee: PTestTrigger
- }
- Structure {
- external Port testee
- }
- Behavior {
- StateMachine {
- Transition init: initial -> State1 { }
- Transition tr0: State1 -> Done {
- triggers {
- <done: testee>
- }
- }
- State State1 {
- entry {
- "testee.trigger();"
- }
- }
- State Done
- }
- }
- }
-
- ActorClass Testee{
- Interface {
-
- Port tester: PTestTrigger
- }
- Structure {
- usercode3 {
- "#include \"etUnit/etUnit.h\""
- }
- external Port tester
- Attribute testcaseID : int16
- }
- Behavior {
- StateMachine {
- Transition init: initial -> tp0 of State1 {
- action {
- "testcaseID = etUnit_openAll(\"tmp/testlog\",\"GeneratorTest1\", \"GeneratorTest1\", \"GeneratorTest1\");"
- "static etInt16 resultlist[] = {1,2,3,4,5,6,7};"
- "EXPECT_ORDER_START(testcaseID, resultlist, 7);"
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 1);"
- }
- }
- State State1 {
- entry {
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 2);"
- }
- subgraph {
- Transition tr0: my tp0 -> State1 {
- action {
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 3);"
- }
- }
- Transition tr1: State1 -> Done {
- triggers {
- <trigger: tester>
- }
- action {
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 6);"
- "tester.done();"
- }
- }
- EntryPoint tp0
- State State1 {
- entry {
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 4);"
- }
- exit {
- "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 5);"
- }
- }
- State Done {
- entry {
- "EXPECT_ORDER_END(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 7);"
- "etUnit_closeAll(testcaseID);"
- }
- }
- }
- }
- }
- }
- }
-
- ProtocolClass PTestTrigger{
- incoming {
- Message trigger()
- }
- outgoing {
- Message done()
- }
- }
+RoomModel GeneratorTest1 {
+ import room.basic.types.c.* from "CTypes.room"
+
+ SubSystemClass SS {
+ ActorRef tester: Tester
+ ActorRef testee: Testee
+ Binding testee.tester and tester.testee
+ }
+
+ ActorClass Tester{
+ Interface {
+ conjugated Port testee: PTestTrigger
+ }
+ Structure {
+ external Port testee
+ }
+ Behavior {
+ StateMachine {
+ Transition init: initial -> State1 { }
+ Transition tr0: State1 -> Done {
+ triggers {
+ <done: testee>
+ }
+ }
+ State State1 {
+ entry {
+ "testee.trigger();"
+ }
+ }
+ State Done
+ }
+ }
+ }
+
+ ActorClass Testee{
+ Interface {
+
+ Port tester: PTestTrigger
+ }
+ Structure {
+ usercode3 {
+ "#include \"etUnit/etUnit.h\""
+ }
+ external Port tester
+ Attribute testcaseID : int16
+ }
+ Behavior {
+ StateMachine {
+ Transition init: initial -> tp0 of State1 {
+ action {
+ "testcaseID = etUnit_openAll(\"tmp/testlog\",\"GeneratorTest1\", \"GeneratorTest1\", \"GeneratorTest1\");"
+ "static etInt16 resultlist[] = {1,2,3,4,5,6,7};"
+ "EXPECT_ORDER_START(testcaseID, resultlist, 7);"
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 1);"
+ }
+ }
+ State State1 {
+ entry {
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 2);"
+ }
+ subgraph {
+ Transition tr0: my tp0 -> State1 {
+ action {
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 3);"
+ }
+ }
+ Transition tr1: State1 -> Done {
+ triggers {
+ <trigger: tester>
+ }
+ action {
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 6);"
+ "tester.done();"
+ }
+ }
+ EntryPoint tp0
+ State State1 {
+ entry {
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 4);"
+ }
+ exit {
+ "EXPECT_ORDER(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 5);"
+ }
+ }
+ State Done {
+ entry {
+ "EXPECT_ORDER_END(testcaseID, \"<|MODEL_LOCATION|>\\\\n\", 7);"
+ "etUnit_closeAll(testcaseID);"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ ProtocolClass PTestTrigger{
+ incoming {
+ Message trigger()
+ }
+ outgoing {
+ Message done()
+ }
+ }
} \ No newline at end of file
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.SS.structure b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.SS.structure
index e9b8540c7..8cd297d50 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.SS.structure
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.SS.structure
@@ -1,89 +1,89 @@
-<?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" diagramTypeId="room.structure" name="Structure of SS" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link //@children.0/@children.0/@children.1/@link //@children.0/@children.1/@link //@children.0/@children.1/@children.1/@link //@connections.0/@link" verticalGridUnit="0">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#SubSystemClass:SS"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="cls"/>
- <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#SubSystemClass:SS"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="ref"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="156" y="170">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorRef:SS$tester"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="tester&#xA;(Tester)"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="port"/>
- <properties key="item-kind" value="C"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="180" y="36">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#Port:Tester$testee"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="15" y="39" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" value="testee"/>
- </children>
- </children>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="ref"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="482" y="170">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
- </graphicsAlgorithmChildren>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorRef:SS$testee"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testee&#xA;(Testee)"/>
- </children>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="port"/>
- <properties key="item-kind" value=""/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" y="46">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#Port:Testee$tester"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="15" y="39" font="//@fonts.0" value="tester"/>
- </children>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@children.1/@anchors.0" end="//@children.0/@children.0/@children.1/@anchors.0">
- <properties key="obj-type" value="bind"/>
- <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#Binding:SS$tester!testee-testee!tester"/>
- </link>
- </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"/>
-</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" diagramTypeId="room.structure" name="Structure of SS" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link //@children.0/@children.0/@children.1/@link //@children.0/@children.1/@link //@children.0/@children.1/@children.1/@link //@connections.0/@link" verticalGridUnit="0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#SubSystemClass:SS"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#SubSystemClass:SS"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="ref"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="156" y="170">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
+ </graphicsAlgorithmChildren>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorRef:SS$tester"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="tester&#xA;(Tester)"/>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" x="180" y="36">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#Port:Tester$testee"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="15" y="39" font="//@fonts.0" horizontalAlignment="ALIGNMENT_RIGHT" value="testee"/>
+ </children>
+ </children>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="ref"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="240" height="140" x="482" y="170">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.3" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="150" y="50"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="20" height="10" x="145" y="65"/>
+ </graphicsAlgorithmChildren>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorRef:SS$testee"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="180" height="80" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testee&#xA;(Testee)"/>
+ </children>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value=""/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="60" height="60" y="46">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="18" height="18" x="21" y="21"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#Port:Testee$tester"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="15" y="39" font="//@fonts.0" value="tester"/>
+ </children>
+ </children>
+ </children>
+ </children>
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.0/@children.1/@children.1/@anchors.0" end="//@children.0/@children.0/@children.1/@anchors.0">
+ <properties key="obj-type" value="bind"/>
+ <graphicsAlgorithm xsi:type="al:Polyline" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#Binding:SS$tester!testee-testee!tester"/>
+ </link>
+ </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"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.behavior b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.behavior
index 10e42bd2e..ff70a341e 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.behavior
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.behavior
@@ -1,240 +1,240 @@
-<?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" diagramTypeId="room.behavior" name="Behavior of Testee" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link //@children.1/@link //@children.1/@children.1/@link //@children.0/@children.2/@children.1/@link //@children.1/@children.2/@link //@children.1/@children.3/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="0">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
- </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="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="../GeneratorTest1.room#StateGraph:Testee$sg"/>
- </link>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" 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="88" y="85">
- <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="../GeneratorTest1.room#StateGraph:Testee$sg"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="335" y="117">
- <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" 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" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </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="../GeneratorTest1.room#BaseState:Testee$State1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="State1"/>
- </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" 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="../GeneratorTest1.room#EntryPoint:Testee$State1$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children>
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
- </children>
- </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="../GeneratorTest1.room#StateGraph:Testee$State1$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" 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" y="60">
- <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="../GeneratorTest1.room#EntryPoint:Testee$State1$tp0"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" y="50" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" 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="337" y="152">
- <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" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </graphicsAlgorithmChildren>
- <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="30" y="24">
- <points x="3" y="-3"/>
- <points x="3" y="3"/>
- <points x="11" y="3"/>
- </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="../GeneratorTest1.room#BaseState:Testee$State1$State1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="397" y="302">
- <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" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </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="../GeneratorTest1.room#BaseState:Testee$State1$Done"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.2"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Done"/>
- </children>
- </children>
- </children>
- <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.1/@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="../GeneratorTest1.room#InitialTransition:Testee$initial"/>
- </link>
- <connectionDecorators locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" 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="../GeneratorTest1.room#ContinuationTransition:Testee$State1$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/>
- </connectionDecorators>
- </connections>
- <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.1/@children.2/@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="../GeneratorTest1.room#TriggeredTransition:Testee$State1$tr1"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr1: &lt;trigger:tester..."/>
- </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" diagramTypeId="room.behavior" name="Behavior of Testee" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link //@children.1/@link //@children.1/@children.1/@link //@children.0/@children.2/@children.1/@link //@children.1/@children.2/@link //@children.1/@children.3/@link //@connections.1/@link //@connections.2/@link" verticalGridUnit="0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
+ </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="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="../GeneratorTest1.room#StateGraph:Testee$sg"/>
+ </link>
+ <children>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" 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="88" y="85">
+ <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="../GeneratorTest1.room#StateGraph:Testee$sg"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="335" y="117">
+ <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" 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" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </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="../GeneratorTest1.room#BaseState:Testee$State1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor"/>
+ <children>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="State1"/>
+ </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" 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="../GeneratorTest1.room#EntryPoint:Testee$State1$tp0"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.0" referencedGraphicsAlgorithm="//@children.0/@children.2/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children>
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="22" font="//@fonts.0" verticalAlignment="ALIGNMENT_BOTTOM" value="tp0"/>
+ </children>
+ </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="../GeneratorTest1.room#StateGraph:Testee$State1$sg"/>
+ </link>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" 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" y="60">
+ <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="../GeneratorTest1.room#EntryPoint:Testee$State1$tp0"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" referencedGraphicsAlgorithm="//@children.1/@children.1/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" y="50" font="//@fonts.0" verticalAlignment="ALIGNMENT_TOP" 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="337" y="152">
+ <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" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </graphicsAlgorithmChildren>
+ <graphicsAlgorithmChildren xsi:type="al:Polygon" foreground="//@colors.2" lineWidth="1" filled="false" transparency="0.0" x="30" y="24">
+ <points x="3" y="-3"/>
+ <points x="3" y="3"/>
+ <points x="11" y="3"/>
+ </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="../GeneratorTest1.room#BaseState:Testee$State1$State1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.2" incomingConnections="//@connections.1"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="397" y="302">
+ <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" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </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="../GeneratorTest1.room#BaseState:Testee$State1$Done"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" incomingConnections="//@connections.2"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Done"/>
+ </children>
+ </children>
+ </children>
+ <connections xsi:type="pi:FreeFormConnection" active="true" start="//@children.0/@children.1/@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="../GeneratorTest1.room#InitialTransition:Testee$initial"/>
+ </link>
+ <connectionDecorators locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="init"/>
+ </connectionDecorators>
+ </connections>
+ <connections xsi:type="pi:FreeFormConnection" visible="true" 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="../GeneratorTest1.room#ContinuationTransition:Testee$State1$tr0"/>
+ </link>
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr0: "/>
+ </connectionDecorators>
+ </connections>
+ <connections xsi:type="pi:FreeFormConnection" visible="true" active="true" start="//@children.1/@children.2/@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="../GeneratorTest1.room#TriggeredTransition:Testee$State1$tr1"/>
+ </link>
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr1: &lt;trigger:tester..."/>
+ </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.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.structure b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.structure
index fe850a74e..8b6bfee9d 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.structure
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Testee.structure
@@ -1,36 +1,36 @@
-<?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" diagramTypeId="room.structure" name="Structure of Testee" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="0">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="cls"/>
- <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="port"/>
- <properties key="item-kind" value=""/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
- <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.1" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#Port:Testee$tester"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="tester"/>
- </children>
- </children>
- </children>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <fonts name="Arial" size="8"/>
-</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" diagramTypeId="room.structure" name="Structure of Testee" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Testee"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value=""/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.2" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
+ <graphicsAlgorithmChildren xsi:type="al:Ellipse" background="//@colors.1" foreground="//@colors.1" lineWidth="2" transparency="0.0" width="20" height="20" x="30" y="30"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#Port:Testee$tester"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="tester"/>
+ </children>
+ </children>
+ </children>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.behavior b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.behavior
index 391372efb..c6beb4ac4 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.behavior
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.behavior
@@ -1,135 +1,135 @@
-<?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" diagramTypeId="room.behavior" name="Behavior of Tester" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link //@children.0/@children.3/@link //@connections.1/@link" verticalGridUnit="0">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
- </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="../GeneratorTest1.room#StateGraph:Tester$sg"/>
- </link>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="107" y="81">
- <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="../GeneratorTest1.room#StateGraph:Tester$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" 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="362" y="107">
- <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" transparency="0.0" x="30" y="24">
- <points x="-3" y="-3"/>
- <points x="-3" y="3"/>
- <points x="-11" y="3"/>
- </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="../GeneratorTest1.room#BaseState:Tester$State1"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="349" y="232">
- <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="../GeneratorTest1.room#BaseState:Tester$Done"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" 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" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Done"/>
- </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="../GeneratorTest1.room#InitialTransition:Tester$initial"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" 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" 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="../GeneratorTest1.room#TriggeredTransition:Tester$tr0"/>
- </link>
- <connectionDecorators visible="true" locationRelative="true" location="1.0">
- <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr0: &lt;done:testee>"/>
- </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" diagramTypeId="room.behavior" name="Behavior of Tester" showGuides="true" pictogramLinks="//@link //@children.0/@link //@children.0/@children.1/@link //@children.0/@children.2/@link //@connections.0/@link //@children.0/@children.3/@link //@connections.1/@link" verticalGridUnit="0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
+ </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="../GeneratorTest1.room#StateGraph:Tester$sg"/>
+ </link>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="107" y="81">
+ <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="../GeneratorTest1.room#StateGraph:Tester$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" 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="362" y="107">
+ <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" transparency="0.0" x="30" y="24">
+ <points x="-3" y="-3"/>
+ <points x="-3" y="3"/>
+ <points x="-11" y="3"/>
+ </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="../GeneratorTest1.room#BaseState:Tester$State1"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" outgoingConnections="//@connections.1" incomingConnections="//@connections.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" background="//@colors.2" foreground="//@colors.2" lineWidth="1" 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="349" y="232">
+ <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="../GeneratorTest1.room#BaseState:Tester$Done"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" 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" transparency="0.0" width="60" height="30" x="30" y="30" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="Done"/>
+ </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="../GeneratorTest1.room#InitialTransition:Tester$initial"/>
+ </link>
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" 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" 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="../GeneratorTest1.room#TriggeredTransition:Tester$tr0"/>
+ </link>
+ <connectionDecorators visible="true" locationRelative="true" location="1.0">
+ <graphicsAlgorithm xsi:type="al:Polygon" background="//@colors.1" foreground="//@colors.2" lineWidth="1" 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" transparency="0.0" x="10" font="//@fonts.0" value="tr0: &lt;done:testee>"/>
+ </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.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.structure b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.structure
index baf85ef04..489ffba31 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.structure
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/model/diagrams/GeneratorTest1.Tester.structure
@@ -1,36 +1,36 @@
-<?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" diagramTypeId="room.structure" name="Structure of Tester" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="0">
- <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="cls"/>
- <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
- </graphicsAlgorithm>
- <link>
- <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
- </link>
- <children xsi:type="pi:ContainerShape" visible="true" active="true">
- <properties key="obj-type" value="port"/>
- <properties key="item-kind" value="C"/>
- <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
- <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
- <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="../GeneratorTest1.room#Port:Tester$testee"/>
- </link>
- <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
- <children visible="true">
- <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testee"/>
- </children>
- </children>
- </children>
- <colors red="227" green="238" blue="249"/>
- <colors red="255" green="255" blue="255"/>
- <colors/>
- <fonts name="Arial" size="8"/>
-</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" diagramTypeId="room.structure" name="Structure of Tester" showGuides="true" pictogramLinks="//@children.0/@link //@link //@children.0/@children.0/@link" verticalGridUnit="0">
+ <graphicsAlgorithm xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.0" lineWidth="1" transparency="0.0" width="1000" height="1000"/>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="cls"/>
+ <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:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="4" transparency="0.5" width="800" height="500" x="40" y="40"/>
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" foreground="//@colors.2" lineWidth="4" filled="false" transparency="0.0" width="800" height="500" x="40" y="40"/>
+ </graphicsAlgorithm>
+ <link>
+ <businessObjects href="../GeneratorTest1.room#ActorClass:Tester"/>
+ </link>
+ <children xsi:type="pi:ContainerShape" visible="true" active="true">
+ <properties key="obj-type" value="port"/>
+ <properties key="item-kind" value="C"/>
+ <graphicsAlgorithm xsi:type="al:Rectangle" lineWidth="1" filled="false" lineVisible="false" transparency="0.0" width="80" height="80" x="400">
+ <graphicsAlgorithmChildren xsi:type="al:Rectangle" background="//@colors.1" foreground="//@colors.2" lineWidth="2" transparency="0.0" width="40" height="40" x="20" y="20"/>
+ <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="../GeneratorTest1.room#Port:Tester$testee"/>
+ </link>
+ <anchors xsi:type="pi:ChopboxAnchor" referencedGraphicsAlgorithm="//@children.0/@children.0/@graphicsAlgorithm/@graphicsAlgorithmChildren.0"/>
+ <children visible="true">
+ <graphicsAlgorithm xsi:type="al:Text" foreground="//@colors.2" lineWidth="1" transparency="0.0" width="80" height="20" font="//@fonts.0" horizontalAlignment="ALIGNMENT_CENTER" value="testee"/>
+ </children>
+ </children>
+ </children>
+ <colors red="227" green="238" blue="249"/>
+ <colors red="255" green="255" blue="255"/>
+ <colors/>
+ <fonts name="Arial" size="8"/>
+</pi:Diagram>
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.c b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.c
index c1ef096e2..bb73b8148 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.c
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.c
@@ -1,77 +1,77 @@
-/**
- * @author generated by eTrice
- *
- * Source File of ProtocolClass PTestTrigger
- *
- */
-
-#include "PTestTrigger.h"
-#include "debugging/etMSCLogger.h"
-
-
-/*--------------------- port methods */
-
-void PTestTriggerPort_done(const PTestTriggerPort* self) {
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerPort", "done")
- if (self->receiveMessageFunc!=NULL) {
- etPort_sendMessage(self, PTestTrigger_OUT_done, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void PTestTriggerReplPort_done_broadcast(const PTestTriggerReplPort* self) {
- int i;
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerReplPort", "done")
- for (i=0; i<self->size; ++i) {
- etPort_sendMessage((etPort*)(&self->ports[i]), PTestTrigger_OUT_done, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void PTestTriggerReplPort_done(const PTestTriggerReplPort* self, int idx) {
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerReplPort", "done")
- if (0<=idx && idx<self->size) {
- etPort_sendMessage((etPort*)(&self->ports[idx]), PTestTrigger_OUT_done, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void PTestTriggerConjPort_trigger(const PTestTriggerConjPort* self) {
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjPort", "trigger")
- if (self->receiveMessageFunc!=NULL) {
- etPort_sendMessage(self, PTestTrigger_IN_trigger, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void PTestTriggerConjReplPort_trigger_broadcast(const PTestTriggerConjReplPort* self) {
- int i;
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjReplPort", "trigger")
- for (i=0; i<self->size; ++i) {
- etPort_sendMessage((etPort*)(&self->ports[i]), PTestTrigger_IN_trigger, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void PTestTriggerConjReplPort_trigger(const PTestTriggerConjReplPort* self, int idx) {
- ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjReplPort", "trigger")
- if (0<=idx && idx<self->size) {
- etPort_sendMessage((etPort*)(&self->ports[idx]), PTestTrigger_IN_trigger, 0, NULL);
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-/*--------------------- debug helpers */
-
-/* message names as strings for debugging (generate MSC) */
-static const char* PTestTrigger_messageStrings[] = {"MIN", "done","trigger", "MAX"};
-
-const char* PTestTrigger_getMessageString(int msg_id) {
- if (msg_id<PTestTrigger_MSG_MIN || msg_id>PTestTrigger_MSG_MAX+1){
- /* id out of range */
- return "Message ID out of range";
- }
- else{
- return PTestTrigger_messageStrings[msg_id];
- }
-}
+/**
+ * @author generated by eTrice
+ *
+ * Source File of ProtocolClass PTestTrigger
+ *
+ */
+
+#include "PTestTrigger.h"
+#include "debugging/etMSCLogger.h"
+
+
+/*--------------------- port methods */
+
+void PTestTriggerPort_done(const PTestTriggerPort* self) {
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerPort", "done")
+ if (self->receiveMessageFunc!=NULL) {
+ etPort_sendMessage(self, PTestTrigger_OUT_done, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void PTestTriggerReplPort_done_broadcast(const PTestTriggerReplPort* self) {
+ int i;
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerReplPort", "done")
+ for (i=0; i<self->size; ++i) {
+ etPort_sendMessage((etPort*)(&self->ports[i]), PTestTrigger_OUT_done, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void PTestTriggerReplPort_done(const PTestTriggerReplPort* self, int idx) {
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerReplPort", "done")
+ if (0<=idx && idx<self->size) {
+ etPort_sendMessage((etPort*)(&self->ports[idx]), PTestTrigger_OUT_done, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void PTestTriggerConjPort_trigger(const PTestTriggerConjPort* self) {
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjPort", "trigger")
+ if (self->receiveMessageFunc!=NULL) {
+ etPort_sendMessage(self, PTestTrigger_IN_trigger, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void PTestTriggerConjReplPort_trigger_broadcast(const PTestTriggerConjReplPort* self) {
+ int i;
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjReplPort", "trigger")
+ for (i=0; i<self->size; ++i) {
+ etPort_sendMessage((etPort*)(&self->ports[i]), PTestTrigger_IN_trigger, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void PTestTriggerConjReplPort_trigger(const PTestTriggerConjReplPort* self, int idx) {
+ ET_MSC_LOGGER_SYNC_ENTRY("PTestTriggerConjReplPort", "trigger")
+ if (0<=idx && idx<self->size) {
+ etPort_sendMessage((etPort*)(&self->ports[idx]), PTestTrigger_IN_trigger, 0, NULL);
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+/*--------------------- debug helpers */
+
+/* message names as strings for debugging (generate MSC) */
+static const char* PTestTrigger_messageStrings[] = {"MIN", "done","trigger", "MAX"};
+
+const char* PTestTrigger_getMessageString(int msg_id) {
+ if (msg_id<PTestTrigger_MSG_MIN || msg_id>PTestTrigger_MSG_MAX+1){
+ /* id out of range */
+ return "Message ID out of range";
+ }
+ else{
+ return PTestTrigger_messageStrings[msg_id];
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.h
index 4f48b2409..fe8b9d0fd 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/PTestTrigger.h
@@ -1,48 +1,48 @@
-/**
- * @author generated by eTrice
- *
- * Header File of ProtocolClass PTestTrigger
- *
- */
-
-#ifndef _PTESTTRIGGER_H_
-#define _PTESTTRIGGER_H_
-
-#include "etDatatypes.h"
-#include "modelbase/etPort.h"
-
-
-
-
-/* message IDs */
-enum PTestTrigger_msg_ids {
- PTestTrigger_MSG_MIN = 0,
- PTestTrigger_OUT_done = 1,
- PTestTrigger_IN_trigger = 2,
- PTestTrigger_MSG_MAX = 3
-};
-
-/*--------------------- port structs and methods */
-
- typedef etPort PTestTriggerPort;
- typedef etReplPort PTestTriggerReplPort;
-
- void PTestTriggerPort_done(const PTestTriggerPort* self);
- void PTestTriggerReplPort_done_broadcast(const PTestTriggerReplPort* self);
- void PTestTriggerReplPort_done(const PTestTriggerReplPort* self, int idx);
-
- typedef etPort PTestTriggerConjPort;
- typedef etReplPort PTestTriggerConjReplPort;
-
- void PTestTriggerConjPort_trigger(const PTestTriggerConjPort* self);
- void PTestTriggerConjReplPort_trigger_broadcast(const PTestTriggerConjReplPort* self);
- void PTestTriggerConjReplPort_trigger(const PTestTriggerConjReplPort* self, int idx);
-
-/*--------------------- debug helpers */
-
-/* get message string for message id */
-const char* PTestTrigger_getMessageString(int msg_id);
-
-
-#endif /* _PTESTTRIGGER_H_ */
-
+/**
+ * @author generated by eTrice
+ *
+ * Header File of ProtocolClass PTestTrigger
+ *
+ */
+
+#ifndef _PTESTTRIGGER_H_
+#define _PTESTTRIGGER_H_
+
+#include "etDatatypes.h"
+#include "modelbase/etPort.h"
+
+
+
+
+/* message IDs */
+enum PTestTrigger_msg_ids {
+ PTestTrigger_MSG_MIN = 0,
+ PTestTrigger_OUT_done = 1,
+ PTestTrigger_IN_trigger = 2,
+ PTestTrigger_MSG_MAX = 3
+};
+
+/*--------------------- port structs and methods */
+
+ typedef etPort PTestTriggerPort;
+ typedef etReplPort PTestTriggerReplPort;
+
+ void PTestTriggerPort_done(const PTestTriggerPort* self);
+ void PTestTriggerReplPort_done_broadcast(const PTestTriggerReplPort* self);
+ void PTestTriggerReplPort_done(const PTestTriggerReplPort* self, int idx);
+
+ typedef etPort PTestTriggerConjPort;
+ typedef etReplPort PTestTriggerConjReplPort;
+
+ void PTestTriggerConjPort_trigger(const PTestTriggerConjPort* self);
+ void PTestTriggerConjReplPort_trigger_broadcast(const PTestTriggerConjReplPort* self);
+ void PTestTriggerConjReplPort_trigger(const PTestTriggerConjReplPort* self, int idx);
+
+/*--------------------- debug helpers */
+
+/* get message string for message id */
+const char* PTestTrigger_getMessageString(int msg_id);
+
+
+#endif /* _PTESTTRIGGER_H_ */
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.c b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.c
index 2efefe02a..112747436 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.c
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.c
@@ -1,92 +1,92 @@
-/**
- * @author generated by eTrice
- *
- * Source File of SubSystemClass SS
- *
- */
-
-#include "SS.h"
-
-/* include instances for all classes */
-#include "SS_Inst.h"
-#include "SS_Disp.h"
-
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-
-#include "platform/etTimer.h"
-#include "etGlobalFlags.h"
-
-
-/* data for SubSysten SS */
-typedef struct SS {
- char *name;
-} SS;
-
-static SS SSInst = {"SS"};
-
-void SS_initActorInstances(void);
-
-void SS_init(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "init")
- etLogger_logInfoF("%s_init", SSInst.name);
-
- /* initialization of all message services */
- etMessageService_init(&msgService_Thread1, msgBuffer_Thread1, MESSAGE_POOL_MAX, MESSAGE_BLOCK_SIZE, MsgDispatcher_Thread1_receiveMessage);
-
- /* init all actors */
- SS_initActorInstances();
-
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void SS_start(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "start")
- etLogger_logInfoF("%s_start", SSInst.name);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void SS_run(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "run")
-
- #ifdef ET_RUNTIME_ENDLESS
- while(TRUE){
- if (etTimer_executeNeeded()){
- etMessageService_execute(&msgService_Thread1);
- }
- }
- #else
- uint32 loopCounter = 0;
- while(TRUE){
- if (etTimer_executeNeeded()){
- etMessageService_execute(&msgService_Thread1);
- etLogger_logInfo("Execute");
- if (loopCounter++ > ET_RUNTIME_MAXLOOP){
- break;
- }
- }
- }
- #endif
-
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void SS_stop(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "stop")
- etLogger_logInfoF("%s_stop", SSInst.name);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void SS_destroy(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "destroy")
- etLogger_logInfoF("%s_destroy", SSInst.name);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-void SS_initActorInstances(void){
- ET_MSC_LOGGER_SYNC_ENTRY("SS", "initActorInstances")
- Tester_init(&_SS_tester);
- Testee_init(&_SS_testee);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
+/**
+ * @author generated by eTrice
+ *
+ * Source File of SubSystemClass SS
+ *
+ */
+
+#include "SS.h"
+
+/* include instances for all classes */
+#include "SS_Inst.h"
+#include "SS_Disp.h"
+
+#include "debugging/etLogger.h"
+#include "debugging/etMSCLogger.h"
+
+#include "platform/etTimer.h"
+#include "etGlobalFlags.h"
+
+
+/* data for SubSysten SS */
+typedef struct SS {
+ char *name;
+} SS;
+
+static SS SSInst = {"SS"};
+
+void SS_initActorInstances(void);
+
+void SS_init(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "init")
+ etLogger_logInfoF("%s_init", SSInst.name);
+
+ /* initialization of all message services */
+ etMessageService_init(&msgService_Thread1, msgBuffer_Thread1, MESSAGE_POOL_MAX, MESSAGE_BLOCK_SIZE, MsgDispatcher_Thread1_receiveMessage);
+
+ /* init all actors */
+ SS_initActorInstances();
+
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void SS_start(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "start")
+ etLogger_logInfoF("%s_start", SSInst.name);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void SS_run(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "run")
+
+ #ifdef ET_RUNTIME_ENDLESS
+ while(TRUE){
+ if (etTimer_executeNeeded()){
+ etMessageService_execute(&msgService_Thread1);
+ }
+ }
+ #else
+ uint32 loopCounter = 0;
+ while(TRUE){
+ if (etTimer_executeNeeded()){
+ etMessageService_execute(&msgService_Thread1);
+ etLogger_logInfo("Execute");
+ if (loopCounter++ > ET_RUNTIME_MAXLOOP){
+ break;
+ }
+ }
+ }
+ #endif
+
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void SS_stop(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "stop")
+ etLogger_logInfoF("%s_stop", SSInst.name);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void SS_destroy(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SubSys", "destroy")
+ etLogger_logInfoF("%s_destroy", SSInst.name);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+void SS_initActorInstances(void){
+ ET_MSC_LOGGER_SYNC_ENTRY("SS", "initActorInstances")
+ Tester_init(&_SS_tester);
+ Testee_init(&_SS_testee);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.h
index a3d844e64..57fe6cce9 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS.h
@@ -1,28 +1,28 @@
-/**
- * @author generated by eTrice
- *
- * Header File of SubSystemClass SS
- *
- */
-
-#ifndef _SS_H_
-#define _SS_H_
-
-
-
-/* lifecycle functions
- * init -> start -> run (loop) -> stop -> destroy
- */
-
-void SS_init(void); /* lifecycle init */
-void SS_start(void); /* lifecycle start */
-
-void SS_run(void); /* lifecycle run */
-
-void SS_stop(void); /* lifecycle stop */
-void SS_destroy(void); /* lifecycle destroy */
-
-
-#endif /* _SS_H_ */
-
-
+/**
+ * @author generated by eTrice
+ *
+ * Header File of SubSystemClass SS
+ *
+ */
+
+#ifndef _SS_H_
+#define _SS_H_
+
+
+
+/* lifecycle functions
+ * init -> start -> run (loop) -> stop -> destroy
+ */
+
+void SS_init(void); /* lifecycle init */
+void SS_start(void); /* lifecycle start */
+
+void SS_run(void); /* lifecycle run */
+
+void SS_stop(void); /* lifecycle stop */
+void SS_destroy(void); /* lifecycle destroy */
+
+
+#endif /* _SS_H_ */
+
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Disp.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Disp.h
index 1be418b35..5531824fc 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Disp.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Disp.h
@@ -1,30 +1,30 @@
-/**
- * @author generated by eTrice
- *
- * Dispatcher File of SubSystemClass SS
- * - one generated dispatcher for each MessageService (Thread)
- */
-
-#include "messaging/etMessageReceiver.h"
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-
-static void MsgDispatcher_Thread1_receiveMessage(const etMessage* msg){
- ET_MSC_LOGGER_SYNC_ENTRY("MsgDispatcher_Thread1", "receiveMessage")
- switch(msg->address){
-
- /* interface items of /SS/tester */
- case 102:
- etPort_receive(&_SS_tester_const.testee, msg);
- break;
- /* interface items of /SS/testee */
- case 104:
- etPort_receive(&_SS_testee_const.tester, msg);
- break;
-
- default:
- etLogger_logErrorF("MessageService_Thread1_ReceiveMessage: address %d does not exist ", msg->address);
- break;
- }
- ET_MSC_LOGGER_SYNC_EXIT
-}
+/**
+ * @author generated by eTrice
+ *
+ * Dispatcher File of SubSystemClass SS
+ * - one generated dispatcher for each MessageService (Thread)
+ */
+
+#include "messaging/etMessageReceiver.h"
+#include "debugging/etLogger.h"
+#include "debugging/etMSCLogger.h"
+
+static void MsgDispatcher_Thread1_receiveMessage(const etMessage* msg){
+ ET_MSC_LOGGER_SYNC_ENTRY("MsgDispatcher_Thread1", "receiveMessage")
+ switch(msg->address){
+
+ /* interface items of /SS/tester */
+ case 102:
+ etPort_receive(&_SS_tester_const.testee, msg);
+ break;
+ /* interface items of /SS/testee */
+ case 104:
+ etPort_receive(&_SS_testee_const.tester, msg);
+ break;
+
+ default:
+ etLogger_logErrorF("MessageService_Thread1_ReceiveMessage: address %d does not exist ", msg->address);
+ break;
+ }
+ ET_MSC_LOGGER_SYNC_EXIT
+}
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Inst.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Inst.h
index 8a048fa41..11826c911 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Inst.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Inst.h
@@ -1,51 +1,51 @@
-/**
- * @author generated by eTrice
- *
- * Instance File of SubSystemClass SS
- * - instantiation of all actor instances and port instances
- * - configuration of data and connection of ports
- */
-
-#include "messaging/etMessageService.h"
-#include "platform/etMemory.h"
-
-/* instantiation of message services */
-
-/* MessageService for Thread1 */
-static uint8 msgBuffer_Thread1[MESSAGE_POOL_MAX*MESSAGE_BLOCK_SIZE];
-static etMessageService msgService_Thread1;
-
-
-/* include all used ActorClasses */
-#include "Testee.h"
-#include "Tester.h"
-
-/* include all used ProtcolClasses */
-#include "PTestTrigger.h"
-
-
-/* declarations of all ActorClass instances (const and variable structs) */
-
-/* forward declaration of variable actor structs */
-static Tester _SS_tester;
-static Testee _SS_testee;
-
-
-/* instance _SS_tester */
-static const Tester_const _SS_tester_const = {
- /* Ports: {myActor, etReceiveMessage, msgService, peerAddress, localId} */
- {&_SS_tester, Tester_receiveMessage, &msgService_Thread1, 104, 1} /* Port testee */
-
- /* data receive ports */
-};
-static Tester _SS_tester = {&_SS_tester_const};
-
-/* instance _SS_testee */
-static const Testee_const _SS_testee_const = {
- /* Ports: {myActor, etReceiveMessage, msgService, peerAddress, localId} */
- {&_SS_testee, Testee_receiveMessage, &msgService_Thread1, 102, 1} /* Port tester */
-
- /* data receive ports */
-};
-static Testee _SS_testee = {&_SS_testee_const};
-
+/**
+ * @author generated by eTrice
+ *
+ * Instance File of SubSystemClass SS
+ * - instantiation of all actor instances and port instances
+ * - configuration of data and connection of ports
+ */
+
+#include "messaging/etMessageService.h"
+#include "platform/etMemory.h"
+
+/* instantiation of message services */
+
+/* MessageService for Thread1 */
+static uint8 msgBuffer_Thread1[MESSAGE_POOL_MAX*MESSAGE_BLOCK_SIZE];
+static etMessageService msgService_Thread1;
+
+
+/* include all used ActorClasses */
+#include "Testee.h"
+#include "Tester.h"
+
+/* include all used ProtcolClasses */
+#include "PTestTrigger.h"
+
+
+/* declarations of all ActorClass instances (const and variable structs) */
+
+/* forward declaration of variable actor structs */
+static Tester _SS_tester;
+static Testee _SS_testee;
+
+
+/* instance _SS_tester */
+static const Tester_const _SS_tester_const = {
+ /* Ports: {myActor, etReceiveMessage, msgService, peerAddress, localId} */
+ {&_SS_tester, Tester_receiveMessage, &msgService_Thread1, 104, 1} /* Port testee */
+
+ /* data receive ports */
+};
+static Tester _SS_tester = {&_SS_tester_const};
+
+/* instance _SS_testee */
+static const Testee_const _SS_testee_const = {
+ /* Ports: {myActor, etReceiveMessage, msgService, peerAddress, localId} */
+ {&_SS_testee, Testee_receiveMessage, &msgService_Thread1, 102, 1} /* Port tester */
+
+ /* data receive ports */
+};
+static Testee _SS_testee = {&_SS_testee_const};
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Runner.c b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Runner.c
index 1e74a1252..901f2e080 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Runner.c
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/SS_Runner.c
@@ -1,49 +1,49 @@
-/**
- * @author generated by eTrice
- *
- * this class contains the main function running component SS
- * it instantiates SS and starts and ends the lifecycle
- */
-
-
-#include "SS.h"
-
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-#include "platform/etPlatform.h"
-
-
-/**
- * main function
- * creates component and starts and stops the lifecycle
- */
-
-int main(void) {
- etUserEntry(); /* platform specific */
-
- etLogger_logInfo("*** T H E B E G I N ***");
- ET_MSC_LOGGER_OPEN("main");
-
- /* startup sequence of lifecycle */
- SS_init(); /* lifecycle init */
- SS_start(); /* lifecycle start */
-
- etUserPreRun(); /* platform specific */
-
- /* run Scheduler */
- SS_run();
-
- etUserPostRun(); /* platform specific */
-
- /* shutdown sequence of lifecycle */
- SS_stop(); /* lifecycle stop */
- SS_destroy(); /* lifecycle destroy */
-
- ET_MSC_LOGGER_CLOSE
- etLogger_logInfo("*** T H E E N D ***");
-
- etUserExit(); /* platform specific */
-
- return 0;
-}
-
+/**
+ * @author generated by eTrice
+ *
+ * this class contains the main function running component SS
+ * it instantiates SS and starts and ends the lifecycle
+ */
+
+
+#include "SS.h"
+
+#include "debugging/etLogger.h"
+#include "debugging/etMSCLogger.h"
+#include "platform/etPlatform.h"
+
+
+/**
+ * main function
+ * creates component and starts and stops the lifecycle
+ */
+
+int main(void) {
+ etUserEntry(); /* platform specific */
+
+ etLogger_logInfo("*** T H E B E G I N ***");
+ ET_MSC_LOGGER_OPEN("main");
+
+ /* startup sequence of lifecycle */
+ SS_init(); /* lifecycle init */
+ SS_start(); /* lifecycle start */
+
+ etUserPreRun(); /* platform specific */
+
+ /* run Scheduler */
+ SS_run();
+
+ etUserPostRun(); /* platform specific */
+
+ /* shutdown sequence of lifecycle */
+ SS_stop(); /* lifecycle stop */
+ SS_destroy(); /* lifecycle destroy */
+
+ ET_MSC_LOGGER_CLOSE
+ etLogger_logInfo("*** T H E E N D ***");
+
+ etUserExit(); /* platform specific */
+
+ return 0;
+}
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.c b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.c
index 7421a7613..06dd06b2f 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.c
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.c
@@ -1,233 +1,233 @@
-/**
- * @author generated by eTrice
- *
- * Source File of ActorClass Testee
- *
- */
-
-#include "Testee.h"
-
-#include "modelbase/etActor.h"
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-#include "platform/etMemory.h"
-
-#include "PTestTrigger.h"
-
-/*--------------------- begin user code ---------------------*/
- #include "etUnit/etUnit.h"
-/*--------------------- end user code ---------------------*/
-
-/* interface item IDs */
-enum interface_items {
- IFITEM_tester = 1
-};
-
-
-/* state IDs */
-enum state_ids {
- NO_STATE = 0,
- STATE_TOP = 1,
- STATE_State1 = 2,
- STATE_State1_State1 = 3,
- STATE_State1_Done = 4
-};
-
-/* transition chains */
-enum chain_ids {
- CHAIN_TRANS_INITIAL_TO__State1_tp0 = 1,
- CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester = 2
-};
-
-/* triggers */
-enum triggers {
- POLLING = 0,
- TRIG_tester__trigger = IFITEM_tester + EVT_SHIFT*PTestTrigger_IN_trigger
-};
-
-
-static void setState(Testee* self, int new_state) {
- self->state = new_state;
-}
-
-/* Entry and Exit Codes */
-static void entry_State1(Testee* self) {
- EXPECT_ORDER("state State1 entry code\\n", 2);
-}
-static void entry_State1_State1(Testee* self) {
- EXPECT_ORDER("state State1_State1 entry code\\n", 4);
-}
-static void exit_State1_State1(Testee* self) {
- EXPECT_ORDER("state State1_State1 exit code\\n", 5);
-}
-static void entry_State1_Done(Testee* self) {
- EXPECT_ORDER_END("state State1_Done entry code\\n", 7);
- etUnit_closeAll();
-}
-
-/* Action Codes */
-static void action_TRANS_INITIAL_TO__State1_tp0(Testee* self) {
- etUnit_openAll("tmp/testlog","GeneratorTest1", "GeneratorTest1", "GeneratorTest1");
- static etInt16 resultlist[] = {1,2,3,4,5,6,7};
- EXPECT_ORDER_START(resultlist, 7);
- EXPECT_ORDER("transition init: TRANS_INITIAL_TO__State1_tp0 action code\\n", 1);
-}
-static void action_State1_TRANS_tp0_TO_State1(Testee* self) {
- EXPECT_ORDER("transition tr0: TRANS_tp0_TO_State1 action code\\n", 3);
-}
-static void action_State1_TRANS_State1_TO_Done_BY_triggertester(Testee* self, InterfaceItemBase ifitem) {
- EXPECT_ORDER("transition tr1: TRANS_State1_TO_Done_BY_triggertester action code\\n", 6);
- PTestTriggerPort_done(&self->constData->tester) /* tester.done() */;
-}
-
-/**
- * calls exit codes while exiting from the current state to one of its
- * parent states while remembering the history
- * @param current - the current state
- * @param to - the final parent state
- * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
- */
-static void exitTo(Testee* self, int current, int to, boolean handler) {
- while (current!=to) {
- switch (current) {
- case STATE_State1:
- self->history[STATE_TOP] = STATE_State1;
- current = STATE_TOP;
- break;
- case STATE_State1_State1:
- if (!handler) exit_State1_State1(self);
- self->history[STATE_State1] = STATE_State1_State1;
- current = STATE_State1;
- break;
- case STATE_State1_Done:
- self->history[STATE_State1] = STATE_State1_Done;
- current = STATE_State1;
- break;
- }
- }
-}
-
-/**
- * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
- * matching the trigger of this chain. The ID of the final state is returned
- * @param chain - the chain ID
- * @param generic_data - the generic data pointer
- * @return the ID of the final state
- */
-static int executeTransitionChain(Testee* self, int chain, InterfaceItemBase ifitem, void* generic_data) {
- switch (chain) {
- case CHAIN_TRANS_INITIAL_TO__State1_tp0:
- {
- action_TRANS_INITIAL_TO__State1_tp0(self);
- entry_State1(self);
- action_State1_TRANS_tp0_TO_State1(self);
- return STATE_State1_State1;
- }
- case CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester:
- {
- action_State1_TRANS_State1_TO_Done_BY_triggertester(self, ifitem);
- return STATE_State1_Done;
- }
- }
- return NO_STATE;
-}
-
-/**
- * calls entry codes while entering a state's history. The ID of the final leaf state is returned
- * @param state - the state which is entered
- * @param handler - entry code is executed if not handler
- * @return - the ID of the final leaf state
- */
-static int enterHistory(Testee* self, int state, boolean handler, boolean skip_entry) {
- while (TRUE) {
- switch (state) {
- case STATE_State1:
- if (!(skip_entry || handler)) entry_State1(self);
- // state has a sub graph
- // without init transition
- state = self->history[STATE_State1];
- break;
- case STATE_State1_State1:
- if (!(skip_entry || handler)) entry_State1_State1(self);
- // in leaf state: return state id
- return STATE_State1_State1;
- case STATE_State1_Done:
- if (!(skip_entry || handler)) entry_State1_Done(self);
- // in leaf state: return state id
- return STATE_State1_Done;
- case STATE_TOP:
- state = self->history[STATE_TOP];
- break;
- }
- skip_entry = FALSE;
- }
- //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
-}
-
-static void executeInitTransition(Testee* self) {
- int chain = CHAIN_TRANS_INITIAL_TO__State1_tp0;
- int next = executeTransitionChain(self, chain, NULL, NULL);
- next = enterHistory(self, next, FALSE, FALSE);
- setState(self, next);
-}
-
-/* receiveEvent contains the main implementation of the FSM */
-static void receiveEvent(Testee* self, InterfaceItemBase ifitem, int evt, void* generic_data) {
- int trigger = ifitem->localId + EVT_SHIFT*evt;
- int chain = NOT_CAUGHT;
- int catching_state = NO_STATE;
- boolean is_handler = FALSE;
- boolean skip_entry = FALSE;
-
- if (!handleSystemEvent(ifitem, evt, generic_data)) {
- switch (self->state) {
- case STATE_State1_State1:
- switch(trigger) {
- case TRIG_tester__trigger:
- {
- chain = CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester;
- catching_state = STATE_State1;
- }
- break;
- }
- break;
- case STATE_State1_Done:
- break;
- }
- }
- if (chain != NOT_CAUGHT) {
- exitTo(self, self->state, catching_state, is_handler);
- int next = executeTransitionChain(self, chain, ifitem, generic_data);
- next = enterHistory(self, next, is_handler, skip_entry);
- setState(self, next);
- }
-}
-
-//******************************************
-// END of generated code for FSM
-//******************************************
-
-void Testee_init(Testee* self){
- ET_MSC_LOGGER_SYNC_ENTRY("Testee", "init")
- self->state = STATE_TOP;
- {
- int i;
- for (i=0; i<TESTEE_HISTORY_SIZE; ++i)
- self->history[i] = NO_STATE;
- }
- executeInitTransition(self);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-void Testee_receiveMessage(void* self, void* ifitem, const etMessage* msg){
- ET_MSC_LOGGER_SYNC_ENTRY("Testee", "_receiveMessage")
-
- receiveEvent(self, (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage))));
-
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-/*--------------------- operations ---------------------*/
-
+/**
+ * @author generated by eTrice
+ *
+ * Source File of ActorClass Testee
+ *
+ */
+
+#include "Testee.h"
+
+#include "modelbase/etActor.h"
+#include "debugging/etLogger.h"
+#include "debugging/etMSCLogger.h"
+#include "platform/etMemory.h"
+
+#include "PTestTrigger.h"
+
+/*--------------------- begin user code ---------------------*/
+ #include "etUnit/etUnit.h"
+/*--------------------- end user code ---------------------*/
+
+/* interface item IDs */
+enum interface_items {
+ IFITEM_tester = 1
+};
+
+
+/* state IDs */
+enum state_ids {
+ NO_STATE = 0,
+ STATE_TOP = 1,
+ STATE_State1 = 2,
+ STATE_State1_State1 = 3,
+ STATE_State1_Done = 4
+};
+
+/* transition chains */
+enum chain_ids {
+ CHAIN_TRANS_INITIAL_TO__State1_tp0 = 1,
+ CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester = 2
+};
+
+/* triggers */
+enum triggers {
+ POLLING = 0,
+ TRIG_tester__trigger = IFITEM_tester + EVT_SHIFT*PTestTrigger_IN_trigger
+};
+
+
+static void setState(Testee* self, int new_state) {
+ self->state = new_state;
+}
+
+/* Entry and Exit Codes */
+static void entry_State1(Testee* self) {
+ EXPECT_ORDER("state State1 entry code\\n", 2);
+}
+static void entry_State1_State1(Testee* self) {
+ EXPECT_ORDER("state State1_State1 entry code\\n", 4);
+}
+static void exit_State1_State1(Testee* self) {
+ EXPECT_ORDER("state State1_State1 exit code\\n", 5);
+}
+static void entry_State1_Done(Testee* self) {
+ EXPECT_ORDER_END("state State1_Done entry code\\n", 7);
+ etUnit_closeAll();
+}
+
+/* Action Codes */
+static void action_TRANS_INITIAL_TO__State1_tp0(Testee* self) {
+ etUnit_openAll("tmp/testlog","GeneratorTest1", "GeneratorTest1", "GeneratorTest1");
+ static etInt16 resultlist[] = {1,2,3,4,5,6,7};
+ EXPECT_ORDER_START(resultlist, 7);
+ EXPECT_ORDER("transition init: TRANS_INITIAL_TO__State1_tp0 action code\\n", 1);
+}
+static void action_State1_TRANS_tp0_TO_State1(Testee* self) {
+ EXPECT_ORDER("transition tr0: TRANS_tp0_TO_State1 action code\\n", 3);
+}
+static void action_State1_TRANS_State1_TO_Done_BY_triggertester(Testee* self, InterfaceItemBase ifitem) {
+ EXPECT_ORDER("transition tr1: TRANS_State1_TO_Done_BY_triggertester action code\\n", 6);
+ PTestTriggerPort_done(&self->constData->tester) /* tester.done() */;
+}
+
+/**
+ * calls exit codes while exiting from the current state to one of its
+ * parent states while remembering the history
+ * @param current - the current state
+ * @param to - the final parent state
+ * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
+ */
+static void exitTo(Testee* self, int current, int to, boolean handler) {
+ while (current!=to) {
+ switch (current) {
+ case STATE_State1:
+ self->history[STATE_TOP] = STATE_State1;
+ current = STATE_TOP;
+ break;
+ case STATE_State1_State1:
+ if (!handler) exit_State1_State1(self);
+ self->history[STATE_State1] = STATE_State1_State1;
+ current = STATE_State1;
+ break;
+ case STATE_State1_Done:
+ self->history[STATE_State1] = STATE_State1_Done;
+ current = STATE_State1;
+ break;
+ }
+ }
+}
+
+/**
+ * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
+ * matching the trigger of this chain. The ID of the final state is returned
+ * @param chain - the chain ID
+ * @param generic_data - the generic data pointer
+ * @return the ID of the final state
+ */
+static int executeTransitionChain(Testee* self, int chain, InterfaceItemBase ifitem, void* generic_data) {
+ switch (chain) {
+ case CHAIN_TRANS_INITIAL_TO__State1_tp0:
+ {
+ action_TRANS_INITIAL_TO__State1_tp0(self);
+ entry_State1(self);
+ action_State1_TRANS_tp0_TO_State1(self);
+ return STATE_State1_State1;
+ }
+ case CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester:
+ {
+ action_State1_TRANS_State1_TO_Done_BY_triggertester(self, ifitem);
+ return STATE_State1_Done;
+ }
+ }
+ return NO_STATE;
+}
+
+/**
+ * calls entry codes while entering a state's history. The ID of the final leaf state is returned
+ * @param state - the state which is entered
+ * @param handler - entry code is executed if not handler
+ * @return - the ID of the final leaf state
+ */
+static int enterHistory(Testee* self, int state, boolean handler, boolean skip_entry) {
+ while (TRUE) {
+ switch (state) {
+ case STATE_State1:
+ if (!(skip_entry || handler)) entry_State1(self);
+ // state has a sub graph
+ // without init transition
+ state = self->history[STATE_State1];
+ break;
+ case STATE_State1_State1:
+ if (!(skip_entry || handler)) entry_State1_State1(self);
+ // in leaf state: return state id
+ return STATE_State1_State1;
+ case STATE_State1_Done:
+ if (!(skip_entry || handler)) entry_State1_Done(self);
+ // in leaf state: return state id
+ return STATE_State1_Done;
+ case STATE_TOP:
+ state = self->history[STATE_TOP];
+ break;
+ }
+ skip_entry = FALSE;
+ }
+ //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
+}
+
+static void executeInitTransition(Testee* self) {
+ int chain = CHAIN_TRANS_INITIAL_TO__State1_tp0;
+ int next = executeTransitionChain(self, chain, NULL, NULL);
+ next = enterHistory(self, next, FALSE, FALSE);
+ setState(self, next);
+}
+
+/* receiveEvent contains the main implementation of the FSM */
+static void receiveEvent(Testee* self, InterfaceItemBase ifitem, int evt, void* generic_data) {
+ int trigger = ifitem->localId + EVT_SHIFT*evt;
+ int chain = NOT_CAUGHT;
+ int catching_state = NO_STATE;
+ boolean is_handler = FALSE;
+ boolean skip_entry = FALSE;
+
+ if (!handleSystemEvent(ifitem, evt, generic_data)) {
+ switch (self->state) {
+ case STATE_State1_State1:
+ switch(trigger) {
+ case TRIG_tester__trigger:
+ {
+ chain = CHAIN_State1_TRANS_State1_TO_Done_BY_triggertester;
+ catching_state = STATE_State1;
+ }
+ break;
+ }
+ break;
+ case STATE_State1_Done:
+ break;
+ }
+ }
+ if (chain != NOT_CAUGHT) {
+ exitTo(self, self->state, catching_state, is_handler);
+ int next = executeTransitionChain(self, chain, ifitem, generic_data);
+ next = enterHistory(self, next, is_handler, skip_entry);
+ setState(self, next);
+ }
+}
+
+//******************************************
+// END of generated code for FSM
+//******************************************
+
+void Testee_init(Testee* self){
+ ET_MSC_LOGGER_SYNC_ENTRY("Testee", "init")
+ self->state = STATE_TOP;
+ {
+ int i;
+ for (i=0; i<TESTEE_HISTORY_SIZE; ++i)
+ self->history[i] = NO_STATE;
+ }
+ executeInitTransition(self);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+
+void Testee_receiveMessage(void* self, void* ifitem, const etMessage* msg){
+ ET_MSC_LOGGER_SYNC_ENTRY("Testee", "_receiveMessage")
+
+ receiveEvent(self, (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage))));
+
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+
+/*--------------------- operations ---------------------*/
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.h
index c85a8c68a..ff516bb6f 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Testee.h
@@ -1,61 +1,61 @@
-/**
- * @author generated by eTrice
- *
- * Header File of ActorClass Testee
- *
- */
-
-#ifndef _TESTEE_H_
-#define _TESTEE_H_
-
-#include "etDatatypes.h"
-#include "messaging/etMessage.h"
-
-#include "PTestTrigger.h"
-
-
-typedef struct Testee Testee;
-
-/* const part of ActorClass (ROM) */
-typedef struct Testee_const {
- /* simple ports */
- const PTestTriggerPort tester;
-
- /* data receive ports */
-
- /* saps */
-
- /* replicated ports */
-
- /* services */
-} Testee_const;
-
-
-/* constant for state machine data */
-#define TESTEE_HISTORY_SIZE 3
-
-/* variable part of ActorClass (RAM) */
-struct Testee {
- const Testee_const* const constData;
-
- /* data send ports */
-
- /*--------------------- attributes ---------------------*/
-
-
- /* state machine variables */
- etInt16 state;
- etInt16 history[TESTEE_HISTORY_SIZE];
-};
-
-void Testee_init(Testee* self);
-
-void Testee_receiveMessage(void* self, void* ifitem, const etMessage* msg);
-
-void Testee_execute(Testee* self);
-
-/*--------------------- operations ---------------------*/
-
-
-#endif /* _TESTEE_H_ */
-
+/**
+ * @author generated by eTrice
+ *
+ * Header File of ActorClass Testee
+ *
+ */
+
+#ifndef _TESTEE_H_
+#define _TESTEE_H_
+
+#include "etDatatypes.h"
+#include "messaging/etMessage.h"
+
+#include "PTestTrigger.h"
+
+
+typedef struct Testee Testee;
+
+/* const part of ActorClass (ROM) */
+typedef struct Testee_const {
+ /* simple ports */
+ const PTestTriggerPort tester;
+
+ /* data receive ports */
+
+ /* saps */
+
+ /* replicated ports */
+
+ /* services */
+} Testee_const;
+
+
+/* constant for state machine data */
+#define TESTEE_HISTORY_SIZE 3
+
+/* variable part of ActorClass (RAM) */
+struct Testee {
+ const Testee_const* const constData;
+
+ /* data send ports */
+
+ /*--------------------- attributes ---------------------*/
+
+
+ /* state machine variables */
+ etInt16 state;
+ etInt16 history[TESTEE_HISTORY_SIZE];
+};
+
+void Testee_init(Testee* self);
+
+void Testee_receiveMessage(void* self, void* ifitem, const etMessage* msg);
+
+void Testee_execute(Testee* self);
+
+/*--------------------- operations ---------------------*/
+
+
+#endif /* _TESTEE_H_ */
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.c b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.c
index 939826081..384ee216d 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.c
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.c
@@ -1,190 +1,190 @@
-/**
- * @author generated by eTrice
- *
- * Source File of ActorClass Tester
- *
- */
-
-#include "Tester.h"
-
-#include "modelbase/etActor.h"
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-#include "platform/etMemory.h"
-
-#include "PTestTrigger.h"
-
-
-/* interface item IDs */
-enum interface_items {
- IFITEM_testee = 1
-};
-
-
-/* state IDs */
-enum state_ids {
- NO_STATE = 0,
- STATE_TOP = 1,
- STATE_State1 = 2,
- STATE_Done = 3
-};
-
-/* transition chains */
-enum chain_ids {
- CHAIN_TRANS_INITIAL_TO__State1 = 1,
- CHAIN_TRANS_State1_TO_Done_BY_donetestee = 2
-};
-
-/* triggers */
-enum triggers {
- POLLING = 0,
- TRIG_testee__done = IFITEM_testee + EVT_SHIFT*PTestTrigger_OUT_done
-};
-
-
-static void setState(Tester* self, int new_state) {
- self->state = new_state;
-}
-
-/* Entry and Exit Codes */
-static void entry_State1(Tester* self) {
- PTestTriggerConjPort_trigger(&self->constData->testee) /* testee.trigger() */;
-}
-
-/* Action Codes */
-
-/**
- * calls exit codes while exiting from the current state to one of its
- * parent states while remembering the history
- * @param current - the current state
- * @param to - the final parent state
- * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
- */
-static void exitTo(Tester* self, int current, int to, boolean handler) {
- while (current!=to) {
- switch (current) {
- case STATE_State1:
- self->history[STATE_TOP] = STATE_State1;
- current = STATE_TOP;
- break;
- case STATE_Done:
- self->history[STATE_TOP] = STATE_Done;
- current = STATE_TOP;
- break;
- }
- }
-}
-
-/**
- * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
- * matching the trigger of this chain. The ID of the final state is returned
- * @param chain - the chain ID
- * @param generic_data - the generic data pointer
- * @return the ID of the final state
- */
-static int executeTransitionChain(Tester* self, int chain, InterfaceItemBase ifitem, void* generic_data) {
- switch (chain) {
- case CHAIN_TRANS_INITIAL_TO__State1:
- {
- return STATE_State1;
- }
- case CHAIN_TRANS_State1_TO_Done_BY_donetestee:
- {
- return STATE_Done;
- }
- }
- return NO_STATE;
-}
-
-/**
- * calls entry codes while entering a state's history. The ID of the final leaf state is returned
- * @param state - the state which is entered
- * @param handler - entry code is executed if not handler
- * @return - the ID of the final leaf state
- */
-static int enterHistory(Tester* self, int state, boolean handler, boolean skip_entry) {
- while (TRUE) {
- switch (state) {
- case STATE_State1:
- if (!(skip_entry || handler)) entry_State1(self);
- // in leaf state: return state id
- return STATE_State1;
- case STATE_Done:
- // in leaf state: return state id
- return STATE_Done;
- case STATE_TOP:
- state = self->history[STATE_TOP];
- break;
- }
- skip_entry = FALSE;
- }
- //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
-}
-
-static void executeInitTransition(Tester* self) {
- int chain = CHAIN_TRANS_INITIAL_TO__State1;
- int next = executeTransitionChain(self, chain, NULL, NULL);
- next = enterHistory(self, next, FALSE, FALSE);
- setState(self, next);
-}
-
-/* receiveEvent contains the main implementation of the FSM */
-static void receiveEvent(Tester* self, InterfaceItemBase ifitem, int evt, void* generic_data) {
- int trigger = ifitem->localId + EVT_SHIFT*evt;
- int chain = NOT_CAUGHT;
- int catching_state = NO_STATE;
- boolean is_handler = FALSE;
- boolean skip_entry = FALSE;
-
- if (!handleSystemEvent(ifitem, evt, generic_data)) {
- switch (self->state) {
- case STATE_State1:
- switch(trigger) {
- case TRIG_testee__done:
- {
- chain = CHAIN_TRANS_State1_TO_Done_BY_donetestee;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_Done:
- break;
- }
- }
- if (chain != NOT_CAUGHT) {
- exitTo(self, self->state, catching_state, is_handler);
- int next = executeTransitionChain(self, chain, ifitem, generic_data);
- next = enterHistory(self, next, is_handler, skip_entry);
- setState(self, next);
- }
-}
-
-//******************************************
-// END of generated code for FSM
-//******************************************
-
-void Tester_init(Tester* self){
- ET_MSC_LOGGER_SYNC_ENTRY("Tester", "init")
- self->state = STATE_TOP;
- {
- int i;
- for (i=0; i<TESTER_HISTORY_SIZE; ++i)
- self->history[i] = NO_STATE;
- }
- executeInitTransition(self);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-void Tester_receiveMessage(void* self, void* ifitem, const etMessage* msg){
- ET_MSC_LOGGER_SYNC_ENTRY("Tester", "_receiveMessage")
-
- receiveEvent(self, (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage))));
-
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-/*--------------------- operations ---------------------*/
-
+/**
+ * @author generated by eTrice
+ *
+ * Source File of ActorClass Tester
+ *
+ */
+
+#include "Tester.h"
+
+#include "modelbase/etActor.h"
+#include "debugging/etLogger.h"
+#include "debugging/etMSCLogger.h"
+#include "platform/etMemory.h"
+
+#include "PTestTrigger.h"
+
+
+/* interface item IDs */
+enum interface_items {
+ IFITEM_testee = 1
+};
+
+
+/* state IDs */
+enum state_ids {
+ NO_STATE = 0,
+ STATE_TOP = 1,
+ STATE_State1 = 2,
+ STATE_Done = 3
+};
+
+/* transition chains */
+enum chain_ids {
+ CHAIN_TRANS_INITIAL_TO__State1 = 1,
+ CHAIN_TRANS_State1_TO_Done_BY_donetestee = 2
+};
+
+/* triggers */
+enum triggers {
+ POLLING = 0,
+ TRIG_testee__done = IFITEM_testee + EVT_SHIFT*PTestTrigger_OUT_done
+};
+
+
+static void setState(Tester* self, int new_state) {
+ self->state = new_state;
+}
+
+/* Entry and Exit Codes */
+static void entry_State1(Tester* self) {
+ PTestTriggerConjPort_trigger(&self->constData->testee) /* testee.trigger() */;
+}
+
+/* Action Codes */
+
+/**
+ * calls exit codes while exiting from the current state to one of its
+ * parent states while remembering the history
+ * @param current - the current state
+ * @param to - the final parent state
+ * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
+ */
+static void exitTo(Tester* self, int current, int to, boolean handler) {
+ while (current!=to) {
+ switch (current) {
+ case STATE_State1:
+ self->history[STATE_TOP] = STATE_State1;
+ current = STATE_TOP;
+ break;
+ case STATE_Done:
+ self->history[STATE_TOP] = STATE_Done;
+ current = STATE_TOP;
+ break;
+ }
+ }
+}
+
+/**
+ * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
+ * matching the trigger of this chain. The ID of the final state is returned
+ * @param chain - the chain ID
+ * @param generic_data - the generic data pointer
+ * @return the ID of the final state
+ */
+static int executeTransitionChain(Tester* self, int chain, InterfaceItemBase ifitem, void* generic_data) {
+ switch (chain) {
+ case CHAIN_TRANS_INITIAL_TO__State1:
+ {
+ return STATE_State1;
+ }
+ case CHAIN_TRANS_State1_TO_Done_BY_donetestee:
+ {
+ return STATE_Done;
+ }
+ }
+ return NO_STATE;
+}
+
+/**
+ * calls entry codes while entering a state's history. The ID of the final leaf state is returned
+ * @param state - the state which is entered
+ * @param handler - entry code is executed if not handler
+ * @return - the ID of the final leaf state
+ */
+static int enterHistory(Tester* self, int state, boolean handler, boolean skip_entry) {
+ while (TRUE) {
+ switch (state) {
+ case STATE_State1:
+ if (!(skip_entry || handler)) entry_State1(self);
+ // in leaf state: return state id
+ return STATE_State1;
+ case STATE_Done:
+ // in leaf state: return state id
+ return STATE_Done;
+ case STATE_TOP:
+ state = self->history[STATE_TOP];
+ break;
+ }
+ skip_entry = FALSE;
+ }
+ //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
+}
+
+static void executeInitTransition(Tester* self) {
+ int chain = CHAIN_TRANS_INITIAL_TO__State1;
+ int next = executeTransitionChain(self, chain, NULL, NULL);
+ next = enterHistory(self, next, FALSE, FALSE);
+ setState(self, next);
+}
+
+/* receiveEvent contains the main implementation of the FSM */
+static void receiveEvent(Tester* self, InterfaceItemBase ifitem, int evt, void* generic_data) {
+ int trigger = ifitem->localId + EVT_SHIFT*evt;
+ int chain = NOT_CAUGHT;
+ int catching_state = NO_STATE;
+ boolean is_handler = FALSE;
+ boolean skip_entry = FALSE;
+
+ if (!handleSystemEvent(ifitem, evt, generic_data)) {
+ switch (self->state) {
+ case STATE_State1:
+ switch(trigger) {
+ case TRIG_testee__done:
+ {
+ chain = CHAIN_TRANS_State1_TO_Done_BY_donetestee;
+ catching_state = STATE_TOP;
+ }
+ break;
+ }
+ break;
+ case STATE_Done:
+ break;
+ }
+ }
+ if (chain != NOT_CAUGHT) {
+ exitTo(self, self->state, catching_state, is_handler);
+ int next = executeTransitionChain(self, chain, ifitem, generic_data);
+ next = enterHistory(self, next, is_handler, skip_entry);
+ setState(self, next);
+ }
+}
+
+//******************************************
+// END of generated code for FSM
+//******************************************
+
+void Tester_init(Tester* self){
+ ET_MSC_LOGGER_SYNC_ENTRY("Tester", "init")
+ self->state = STATE_TOP;
+ {
+ int i;
+ for (i=0; i<TESTER_HISTORY_SIZE; ++i)
+ self->history[i] = NO_STATE;
+ }
+ executeInitTransition(self);
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+
+void Tester_receiveMessage(void* self, void* ifitem, const etMessage* msg){
+ ET_MSC_LOGGER_SYNC_ENTRY("Tester", "_receiveMessage")
+
+ receiveEvent(self, (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage))));
+
+ ET_MSC_LOGGER_SYNC_EXIT
+}
+
+
+/*--------------------- operations ---------------------*/
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.h b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.h
index 781532508..d9deadbd4 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/GeneratorTest1/Tester.h
@@ -1,61 +1,61 @@
-/**
- * @author generated by eTrice
- *
- * Header File of ActorClass Tester
- *
- */
-
-#ifndef _TESTER_H_
-#define _TESTER_H_
-
-#include "etDatatypes.h"
-#include "messaging/etMessage.h"
-
-#include "PTestTrigger.h"
-
-
-typedef struct Tester Tester;
-
-/* const part of ActorClass (ROM) */
-typedef struct Tester_const {
- /* simple ports */
- const PTestTriggerConjPort testee;
-
- /* data receive ports */
-
- /* saps */
-
- /* replicated ports */
-
- /* services */
-} Tester_const;
-
-
-/* constant for state machine data */
-#define TESTER_HISTORY_SIZE 2
-
-/* variable part of ActorClass (RAM) */
-struct Tester {
- const Tester_const* const constData;
-
- /* data send ports */
-
- /*--------------------- attributes ---------------------*/
-
-
- /* state machine variables */
- etInt16 state;
- etInt16 history[TESTER_HISTORY_SIZE];
-};
-
-void Tester_init(Tester* self);
-
-void Tester_receiveMessage(void* self, void* ifitem, const etMessage* msg);
-
-void Tester_execute(Tester* self);
-
-/*--------------------- operations ---------------------*/
-
-
-#endif /* _TESTER_H_ */
-
+/**
+ * @author generated by eTrice
+ *
+ * Header File of ActorClass Tester
+ *
+ */
+
+#ifndef _TESTER_H_
+#define _TESTER_H_
+
+#include "etDatatypes.h"
+#include "messaging/etMessage.h"
+
+#include "PTestTrigger.h"
+
+
+typedef struct Tester Tester;
+
+/* const part of ActorClass (ROM) */
+typedef struct Tester_const {
+ /* simple ports */
+ const PTestTriggerConjPort testee;
+
+ /* data receive ports */
+
+ /* saps */
+
+ /* replicated ports */
+
+ /* services */
+} Tester_const;
+
+
+/* constant for state machine data */
+#define TESTER_HISTORY_SIZE 2
+
+/* variable part of ActorClass (RAM) */
+struct Tester {
+ const Tester_const* const constData;
+
+ /* data send ports */
+
+ /*--------------------- attributes ---------------------*/
+
+
+ /* state machine variables */
+ etInt16 state;
+ etInt16 history[TESTER_HISTORY_SIZE];
+};
+
+void Tester_init(Tester* self);
+
+void Tester_receiveMessage(void* self, void* ifitem, const etMessage* msg);
+
+void Tester_execute(Tester* self);
+
+/*--------------------- operations ---------------------*/
+
+
+#endif /* _TESTER_H_ */
+
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/readme.txt b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/readme.txt
index 1dc2b35ab..c3b99d458 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/readme.txt
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src-gen/readme.txt
@@ -1,4 +1,4 @@
-This directory is an eTrice code generation target.
-It will be erased every time the generator is executed.
-
-DO NOT PLACE OTHER FILES HERE!
+This directory is an eTrice code generation target.
+It will be erased every time the generator is executed.
+
+DO NOT PLACE OTHER FILES HERE!
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/RunCGeneratorTestcases.h b/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/RunCGeneratorTestcases.h
index 03d5c4276..192c00835 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/RunCGeneratorTestcases.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/RunCGeneratorTestcases.h
@@ -1,26 +1,26 @@
-/*******************************************************************************
- * 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)
- *
- *******************************************************************************/
-
-
-/*
- * RunCGeneratorTestcases.h
- *
- * Created on: 12.01.2012
- * Author: tschuetz
- */
-
-#ifndef _RUNCGENERATORTESTCASES_H_
-#define _RUNCGENERATORTESTCASES_H_
-
-void RunCGeneratorTestcases(void);
-
-#endif /* _RUNCGENERATORTESTCASES_H_ */
+/*******************************************************************************
+ * 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)
+ *
+ *******************************************************************************/
+
+
+/*
+ * RunCGeneratorTestcases.h
+ *
+ * Created on: 12.01.2012
+ * Author: tschuetz
+ */
+
+#ifndef _RUNCGENERATORTESTCASES_H_
+#define _RUNCGENERATORTESTCASES_H_
+
+void RunCGeneratorTestcases(void);
+
+#endif /* _RUNCGENERATORTESTCASES_H_ */
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/TestDataClass.h b/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/TestDataClass.h
index 3cbce4bc1..269a4e2af 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/TestDataClass.h
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/src/test/generator/TestDataClass.h
@@ -1,26 +1,26 @@
-/*******************************************************************************
- * 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)
- *
- *******************************************************************************/
-
-
-/*
- * TestEmDataClass.h
- *
- * Created on: 12.01.2012
- * Author: tschuetz
- */
-
-#ifndef _TESTDATACLASS_H_
-#define _TESTDATACLASS_H_
-
-void TestDataClass_runSuite(void);
-
-#endif /* _TESTDATACLASS_H_ */
+/*******************************************************************************
+ * 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)
+ *
+ *******************************************************************************/
+
+
+/*
+ * TestEmDataClass.h
+ *
+ * Created on: 12.01.2012
+ * Author: tschuetz
+ */
+
+#ifndef _TESTDATACLASS_H_
+#define _TESTDATACLASS_H_
+
+void TestDataClass_runSuite(void);
+
+#endif /* _TESTDATACLASS_H_ */
diff --git a/tests/org.eclipse.etrice.generator.c.tests.old/tmp/testlog/GeneratorTest1.xml b/tests/org.eclipse.etrice.generator.c.tests.old/tmp/testlog/GeneratorTest1.xml
index a6455475a..3d732b545 100644
--- a/tests/org.eclipse.etrice.generator.c.tests.old/tmp/testlog/GeneratorTest1.xml
+++ b/tests/org.eclipse.etrice.generator.c.tests.old/tmp/testlog/GeneratorTest1.xml
@@ -1,5 +1,5 @@
-<testsuites name="GeneratorTest1" tests="0" failures="0" errors="0" time="0">
- <testsuite name="GeneratorTest1" tests="0" failures="0" errors="0" time="0">
- <testcase name="GeneratorTest1" time="0"/>
- </testsuite>
-</testsuites>
+<testsuites name="GeneratorTest1" tests="0" failures="0" errors="0" time="0">
+ <testsuite name="GeneratorTest1" tests="0" failures="0" errors="0" time="0">
+ <testcase name="GeneratorTest1" time="0"/>
+ </testsuite>
+</testsuites>
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 02cf9eaa9..a24a02a8b 100644
--- a/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room
+++ b/tests/org.eclipse.etrice.generator.common.tests/models/ChoicePointTest.room
@@ -1,220 +1,220 @@
-RoomModel ChoicePointTest {
-
- import room.basic.types.* from "Types.room"
-
- LogicalSystem System_ChoicePointTest {
- SubSystemRef SubSystem_CPTest: SubSystem_CPTest
- }
-
- SubSystemClass SubSystem_CPTest {
- ActorRef ChoicePointTest_Top: CPTest_Top
- }
-
- 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);"
- }
- }
- 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();"
- "TestPort1.msg1();"
- "TestPort1.msg1();"
- "TestPort1.msg1();"
- "TestPort1.msg1();"
- "TestPort1.msg1();"
- }
- }
- State state0
- }
- }
- }
-
- ProtocolClass TestProtocol {
- incoming {
- Message msg1()
- Message msg2()
- Message msg3()
- Message msg4()
- Message msg5()
- }
- }
-
+RoomModel ChoicePointTest {
+
+ import room.basic.types.* from "Types.room"
+
+ LogicalSystem System_ChoicePointTest {
+ SubSystemRef SubSystem_CPTest: SubSystem_CPTest
+ }
+
+ SubSystemClass SubSystem_CPTest {
+ ActorRef ChoicePointTest_Top: CPTest_Top
+ }
+
+ 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);"
+ }
+ }
+ 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();"
+ "TestPort1.msg1();"
+ "TestPort1.msg1();"
+ "TestPort1.msg1();"
+ "TestPort1.msg1();"
+ "TestPort1.msg1();"
+ }
+ }
+ State state0
+ }
+ }
+ }
+
+ ProtocolClass TestProtocol {
+ incoming {
+ Message msg1()
+ Message msg2()
+ Message msg3()
+ Message msg4()
+ Message msg5()
+ }
+ }
+
} \ 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 8b4f40d87..2cffc8378 100644
--- a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room
+++ b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadReplPortTest.room
@@ -1,150 +1,150 @@
-RoomModel PingPongThreadTestReplPort {
-
- import room.basic.service.timing.* from "TimingService.room"
- import room.basic.types.* from "Types.room"
-
- LogicalSystem System_PingPong {
- SubSystemRef subsystem: SubSystem_PingPong
- }
-
- SubSystemClass SubSystem_PingPong {
- ActorRef application: PingPongTop
- ActorRef services: ATimingService
- LayerConnection ref application satisfied_by services.timer
- LogicalThread mrPingThread prio=5 {application.MrPing}
- LogicalThread mrPong1Thread prio=5 {application.MrPong1}
- LogicalThread mrPong2Thread prio=5 {application.MrPong2}
- LogicalThread mrPong3Thread prio=5 {application.MrPong3}
- }
-
- 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"
+
+ LogicalSystem System_PingPong {
+ SubSystemRef subsystem: SubSystem_PingPong
+ }
+
+ SubSystemClass SubSystem_PingPong {
+ ActorRef application: PingPongTop
+ ActorRef services: ATimingService
+ LayerConnection ref application satisfied_by services.timer
+ LogicalThread mrPingThread prio=5 {application.MrPing}
+ LogicalThread mrPong1Thread prio=5 {application.MrPong1}
+ LogicalThread mrPong2Thread prio=5 {application.MrPong2}
+ LogicalThread mrPong3Thread prio=5 {application.MrPong3}
+ }
+
+ 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 65829e1c5..8d2592f43 100644
--- a/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room
+++ b/tests/org.eclipse.etrice.generator.common.tests/models/PingPongThreadTest.room
@@ -1,155 +1,155 @@
-RoomModel PingPongThreadTest {
-
- import room.basic.service.timing.* from "TimingService.room"
- import room.basic.types.* from "Types.room"
-
- LogicalSystem System_PingPong {
- SubSystemRef subsystem: SubSystem_PingPong
- }
-
- SubSystemClass SubSystem_PingPong {
- ActorRef application: PingPongTop
- ActorRef services: ATimingService
- LayerConnection ref application satisfied_by services.timer
- LogicalThread mrPingThread prio=5 {application.MrPing}
- LogicalThread mrPong1Thread prio=5 {application.MrPong1}
- LogicalThread mrPong2Thread prio=5 {application.MrPong2}
- LogicalThread mrPong3Thread prio=5 {application.MrPong3}
- }
-
- 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"
+
+ LogicalSystem System_PingPong {
+ SubSystemRef subsystem: SubSystem_PingPong
+ }
+
+ SubSystemClass SubSystem_PingPong {
+ ActorRef application: PingPongTop
+ ActorRef services: ATimingService
+ LayerConnection ref application satisfied_by services.timer
+ LogicalThread mrPingThread prio=5 {application.MrPing}
+ LogicalThread mrPong1Thread prio=5 {application.MrPong1}
+ LogicalThread mrPong2Thread prio=5 {application.MrPong2}
+ LogicalThread mrPong3Thread prio=5 {application.MrPong3}
+ }
+
+ 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()
+ }
+ }
+
} \ No newline at end of file
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 8a62ac399..d9ead4eda 100644
--- a/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room
+++ b/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestC.room
@@ -1,592 +1,592 @@
-RoomModel SendingDataTestC {
-
- import room.basic.types.* from "Types.room"
- import room.basic.language.* from "Language.room"
-
- LogicalSystem LogSys_SendingData {
- SubSystemRef application: SubSys_SendingData
- }
-
- SubSystemClass SubSys_SendingData {
- ActorRef top: SendingDataTop
- }
-
- 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"
+
+ LogicalSystem LogSys_SendingData {
+ SubSystemRef application: SubSys_SendingData
+ }
+
+ SubSystemClass SubSys_SendingData {
+ ActorRef top: SendingDataTop
+ }
+
+ 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/SendingDataTestJava.room b/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestJava.room
index 3e885a46e..b90acce16 100644
--- a/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestJava.room
+++ b/tests/org.eclipse.etrice.generator.common.tests/models/SendingDataTestJava.room
@@ -1,592 +1,592 @@
-RoomModel SendingDataTestJava {
-
- import room.basic.types.* from "Types.room"
- import room.basic.language.* from "Language.room"
-
- LogicalSystem LogSys_SendingData {
- SubSystemRef application: SubSys_SendingData
- }
-
- SubSystemClass SubSys_SendingData {
- ActorRef top: SendingDataTop
- }
-
- 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.i8Val == 5"
- }>
- }
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr13: cp cp1 -> reply {
- action {
- "PingPongPort.pongComplex(d);"
- }
- }
- Transition tr14: cp cp1 -> reply {
- cond {
- "d.i8Val==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 [ 18 ]: 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\", \"SendingDataTestJava\", \"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.i8Val==10){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "if (d.complexVal.i32Val2==80){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 20);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "dataD.i8Val=11;"
- "PingPongPort.pingComplexDerived(dataD);"
- }
- }
- Transition tr2: state0 -> state0 {
- triggers {
- <pongComplex: PingPongPort>
- }
- action {
- "counter++;"
- "if (d.i8Val==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.i8Val==11){"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 21);"
- "}else{"
- "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
- "}"
- ""
- "if (d.i32Val3==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 i8Val: int8 = "10"
- Attribute i8ValRef: int8 ref
- Attribute i32Array [ 3 ]: int32 = "{200,300,400}"
- Attribute i8ArrayRef [ 2 ]: int8 ref
- Attribute complexVal: PingPongDataDeep
- }
-
- DataClass PingPongDataDeep {
- Attribute i32Val1: int32
- Attribute i32Val2: int32 = "80"
- }
-
- DataClass PingPongDataDerived extends PingPongData {
- Attribute i32Val3: int32 = "150"
- }
+RoomModel SendingDataTestJava {
+
+ import room.basic.types.* from "Types.room"
+ import room.basic.language.* from "Language.room"
+
+ LogicalSystem LogSys_SendingData {
+ SubSystemRef application: SubSys_SendingData
+ }
+
+ SubSystemClass SubSys_SendingData {
+ ActorRef top: SendingDataTop
+ }
+
+ 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.i8Val == 5"
+ }>
+ }
+ action {
+ "PingPongPort.pongComplex(d);"
+ }
+ }
+ Transition tr13: cp cp1 -> reply {
+ action {
+ "PingPongPort.pongComplex(d);"
+ }
+ }
+ Transition tr14: cp cp1 -> reply {
+ cond {
+ "d.i8Val==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 [ 18 ]: 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\", \"SendingDataTestJava\", \"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.i8Val==10){"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 19);"
+ "}else{"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
+ "}"
+ ""
+ "if (d.complexVal.i32Val2==80){"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 20);"
+ "}else{"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
+ "}"
+ ""
+ "dataD.i8Val=11;"
+ "PingPongPort.pingComplexDerived(dataD);"
+ }
+ }
+ Transition tr2: state0 -> state0 {
+ triggers {
+ <pongComplex: PingPongPort>
+ }
+ action {
+ "counter++;"
+ "if (d.i8Val==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.i8Val==11){"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 21);"
+ "}else{"
+ "\tEXPECT_ORDER(caseId,\"<|MODEL_LOCATION|>\", 0xFF);"
+ "}"
+ ""
+ "if (d.i32Val3==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 i8Val: int8 = "10"
+ Attribute i8ValRef: int8 ref
+ Attribute i32Array [ 3 ]: int32 = "{200,300,400}"
+ Attribute i8ArrayRef [ 2 ]: int8 ref
+ Attribute complexVal: PingPongDataDeep
+ }
+
+ DataClass PingPongDataDeep {
+ Attribute i32Val1: int32
+ Attribute i32Val2: int32 = "80"
+ }
+
+ DataClass PingPongDataDerived extends PingPongData {
+ Attribute i32Val3: int32 = "150"
+ }
} \ 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 56ad6b735..972e6c542 100644
--- a/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties
+++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/build.properties
@@ -1,5 +1,5 @@
-source.. = src/,\
- src-gen/
-bin.includes = META-INF/,\
- .
-
+source.. = src/,\
+ src-gen/
+bin.includes = META-INF/,\
+ .
+
diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestInjectorProvider.java b/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestInjectorProvider.java
index 421bd31db..246fa2601 100644
--- a/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestInjectorProvider.java
+++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestInjectorProvider.java
@@ -1,45 +1,45 @@
-/*
-* generated by Xtext
-*/
-package org.eclipse.etrice.generator;
-
-import org.eclipse.xtext.junit4.GlobalRegistries;
-import org.eclipse.xtext.junit4.GlobalRegistries.GlobalStateMemento;
-import org.eclipse.xtext.junit4.IInjectorProvider;
-import org.eclipse.xtext.junit4.IRegistryConfigurator;
-
-import com.google.inject.Injector;
-
-public class FSMtestInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
-
- protected GlobalStateMemento stateBeforeInjectorCreation;
- protected GlobalStateMemento stateAfterInjectorCreation;
- protected Injector injector;
-
- static {
- GlobalRegistries.initializeDefaults();
- }
-
- public Injector getInjector()
- {
- if (injector == null) {
- stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
- this.injector = internalCreateInjector();
- stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
- }
- return injector;
- }
-
- protected Injector internalCreateInjector() {
- return new FSMtestStandaloneSetup().createInjectorAndDoEMFRegistration();
- }
-
- public void restoreRegistry() {
- stateBeforeInjectorCreation.restoreGlobalState();
- }
-
- public void setupRegistry() {
- getInjector();
- stateAfterInjectorCreation.restoreGlobalState();
- }
-}
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.generator;
+
+import org.eclipse.xtext.junit4.GlobalRegistries;
+import org.eclipse.xtext.junit4.GlobalRegistries.GlobalStateMemento;
+import org.eclipse.xtext.junit4.IInjectorProvider;
+import org.eclipse.xtext.junit4.IRegistryConfigurator;
+
+import com.google.inject.Injector;
+
+public class FSMtestInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
+
+ protected GlobalStateMemento stateBeforeInjectorCreation;
+ protected GlobalStateMemento stateAfterInjectorCreation;
+ protected Injector injector;
+
+ static {
+ GlobalRegistries.initializeDefaults();
+ }
+
+ public Injector getInjector()
+ {
+ if (injector == null) {
+ stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
+ this.injector = internalCreateInjector();
+ stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
+ }
+ return injector;
+ }
+
+ protected Injector internalCreateInjector() {
+ return new FSMtestStandaloneSetup().createInjectorAndDoEMFRegistration();
+ }
+
+ public void restoreRegistry() {
+ stateBeforeInjectorCreation.restoreGlobalState();
+ }
+
+ public void setupRegistry() {
+ getInjector();
+ stateAfterInjectorCreation.restoreGlobalState();
+ }
+}
diff --git a/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestUiInjectorProvider.java b/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestUiInjectorProvider.java
index 802290b22..6798d9806 100644
--- a/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestUiInjectorProvider.java
+++ b/tests/org.eclipse.etrice.generator.fsmtest.tests/src-gen/org/eclipse/etrice/generator/FSMtestUiInjectorProvider.java
@@ -1,16 +1,16 @@
-/*
-* generated by Xtext
-*/
-package org.eclipse.etrice.generator;
-
-import org.eclipse.xtext.junit4.IInjectorProvider;
-
-import com.google.inject.Injector;
-
-public class FSMtestUiInjectorProvider implements IInjectorProvider {
-
- public Injector getInjector() {
- return org.eclipse.etrice.generator.ui.internal.FSMtestActivator.getInstance().getInjector("org.eclipse.etrice.generator.FSMtest");
- }
-
-}
+/*
+* generated by Xtext
+*/
+package org.eclipse.etrice.generator;
+
+import org.eclipse.xtext.junit4.IInjectorProvider;
+
+import com.google.inject.Injector;
+
+public class FSMtestUiInjectorProvider implements IInjectorProvider {
+
+ public Injector getInjector() {
+ return org.eclipse.etrice.generator.ui.internal.FSMtestActivator.getInstance().getInjector("org.eclipse.etrice.generator.FSMtest");
+ }
+
+}

Back to the top