diff options
author | Henrik Rentz-Reichert | 2012-03-02 15:42:30 +0000 |
---|---|---|
committer | Henrik Rentz-Reichert | 2012-03-02 15:42:30 +0000 |
commit | df05fab31f55207df84dcb8aff51817079c3b123 (patch) | |
tree | 5d4855b7d8b7cf8d37806bf893b6c96754d84ba1 /tests/org.eclipse.etrice.generator.tests | |
parent | 6d72cb7cc6941ab3c7d9b630bfaaf54e70ca8388 (diff) | |
download | org.eclipse.etrice-df05fab31f55207df84dcb8aff51817079c3b123.tar.gz org.eclipse.etrice-df05fab31f55207df84dcb8aff51817079c3b123.tar.xz org.eclipse.etrice-df05fab31f55207df84dcb8aff51817079c3b123.zip |
[generator, generator.c, generator.tests] DetailCodeTranslator recognizes port[idx].msg()
Diffstat (limited to 'tests/org.eclipse.etrice.generator.tests')
-rw-r--r-- | tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java index 28d9cc2bf..6d782feaa 100644 --- a/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java +++ b/tests/org.eclipse.etrice.generator.tests/src/org/eclipse/etrice/generator/base/TestDetailCodeTranslator.java @@ -72,8 +72,11 @@ public class TestDetailCodeTranslator { }
@Override
- public String getInterfaceItemMessageText(InterfaceItem item, Message msg, ArrayList<String> args, String orig) {
- return ">"+item.getName()+"."+msg.getName()+"("+getArgList(args)+")<";
+ public String getInterfaceItemMessageText(InterfaceItem item, Message msg, ArrayList<String> args, String index, String orig) {
+ if (index==null)
+ return ">"+item.getName()+"."+msg.getName()+"("+getArgList(args)+")<";
+ else
+ return ">"+item.getName()+"["+index+"]."+msg.getName()+"("+getArgList(args)+")<";
}
@Override
@@ -227,6 +230,26 @@ public class TestDetailCodeTranslator { }
@Test
+ public void testIndexedPortMsg() {
+ DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
+ dc.getCommands().add("fct[2].out1();");
+
+ String result = translator.translateDetailCode(dc);
+
+ assertEquals("port.message replacement", ">fct[2].out1()<;", result);
+ }
+
+ @Test
+ public void testIndexedPortMsgComplex() {
+ DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
+ dc.getCommands().add("fct[self->index[2]].out1();");
+
+ String result = translator.translateDetailCode(dc);
+
+ assertEquals("port.message replacement", ">fct[self->index[2]].out1()<;", result);
+ }
+
+ @Test
public void testPortMsgValue() {
DetailCode dc = RoomFactory.eINSTANCE.createDetailCode();
dc.getCommands().add("x = 2*fct.in1;");
|