|
@@ -11,16 +11,25 @@
|
|
|
package org.yakindu.sct.generator.java;
|
|
package org.yakindu.sct.generator.java;
|
|
|
|
|
|
|
|
import static util.TestModels.ALWAYS_ONCYCLE;
|
|
import static util.TestModels.ALWAYS_ONCYCLE;
|
|
|
|
|
+import static util.TestModels.BIT_EXPRESSIONS;
|
|
|
|
|
+import static util.TestModels.BOOLEAN_EXPRESSIONS;
|
|
|
import static util.TestModels.CHOICE;
|
|
import static util.TestModels.CHOICE;
|
|
|
|
|
+import static util.TestModels.C_KEYWORDS_M;
|
|
|
import static util.TestModels.DEEP_HISTORY;
|
|
import static util.TestModels.DEEP_HISTORY;
|
|
|
import static util.TestModels.FEATURE_CALLS;
|
|
import static util.TestModels.FEATURE_CALLS;
|
|
|
import static util.TestModels.GUARD;
|
|
import static util.TestModels.GUARD;
|
|
|
|
|
+import static util.TestModels.INTEGER_EXPRESSIONS;
|
|
|
|
|
+import static util.TestModels.JAVA_KEYWORDS_M;
|
|
|
import static util.TestModels.PRIORITY_VALUES;
|
|
import static util.TestModels.PRIORITY_VALUES;
|
|
|
|
|
+import static util.TestModels.RAISE_EVENTS;
|
|
|
|
|
+import static util.TestModels.REAL_EXPRESSIONS;
|
|
|
|
|
+import static util.TestModels.SAME_NAME_DIFFERENT_REGION;
|
|
|
import static util.TestModels.SHALLOW_HISTORY;
|
|
import static util.TestModels.SHALLOW_HISTORY;
|
|
|
import static util.TestModels.SIMPLE_EVENT;
|
|
import static util.TestModels.SIMPLE_EVENT;
|
|
|
import static util.TestModels.SIMPLE_HIERACHY;
|
|
import static util.TestModels.SIMPLE_HIERACHY;
|
|
|
import static util.TestModels.STATECHART_LOCAL_REACTIONS;
|
|
import static util.TestModels.STATECHART_LOCAL_REACTIONS;
|
|
|
import static util.TestModels.STATE_ACTIVE;
|
|
import static util.TestModels.STATE_ACTIVE;
|
|
|
|
|
+import static util.TestModels.STRING_EXPRESSIONS;
|
|
|
import static util.TestModels.SYNC_FORK;
|
|
import static util.TestModels.SYNC_FORK;
|
|
|
import static util.TestModels.SYNC_JOIN;
|
|
import static util.TestModels.SYNC_JOIN;
|
|
|
import static util.TestModels.VALUED_EVENTS;
|
|
import static util.TestModels.VALUED_EVENTS;
|
|
@@ -54,6 +63,39 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
@Inject
|
|
@Inject
|
|
|
private TestModels models;
|
|
private TestModels models;
|
|
|
|
|
|
|
|
|
|
+ private void failOnError(IMarker[] diagnostics) throws CoreException {
|
|
|
|
|
+ for (IMarker diagnostic : diagnostics) {
|
|
|
|
|
+ int severity = (Integer) diagnostic.getAttribute("severity");
|
|
|
|
|
+ if (severity == IMarker.SEVERITY_ERROR) {
|
|
|
|
|
+ Assert.fail(diagnostic.getAttribute(IMarker.MESSAGE, ""));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testAlwaysOnCycleModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(ALWAYS_ONCYCLE);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testBitExpressionsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(BIT_EXPRESSIONS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testBooleanExpressionsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(BOOLEAN_EXPRESSIONS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Test
|
|
@Test
|
|
|
public void testChoiceModel() throws Exception {
|
|
public void testChoiceModel() throws Exception {
|
|
|
Statechart statechart = models.loadStatechartFromResource(CHOICE);
|
|
Statechart statechart = models.loadStatechartFromResource(CHOICE);
|
|
@@ -62,11 +104,10 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
@Test
|
|
|
- public void testAlwaysOnCycleModel() throws Exception {
|
|
|
|
|
- Statechart statechart = models
|
|
|
|
|
- .loadStatechartFromResource(ALWAYS_ONCYCLE);
|
|
|
|
|
|
|
+ public void testCKeywordsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models.loadStatechartFromResource(C_KEYWORDS_M);
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
@Test
|
|
@@ -90,6 +131,18 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testIntegerExpressionsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models.loadStatechartFromResource(INTEGER_EXPRESSIONS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testJavaKeywordsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models.loadStatechartFromResource(JAVA_KEYWORDS_M);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Test
|
|
@Test
|
|
|
public void testPriorityValuesModel() throws Exception {
|
|
public void testPriorityValuesModel() throws Exception {
|
|
|
Statechart statechart = models
|
|
Statechart statechart = models
|
|
@@ -97,6 +150,27 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testRaiseEventModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(RAISE_EVENTS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testRealExpressionsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(REAL_EXPRESSIONS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testSameNameDifferentRegionModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models
|
|
|
|
|
+ .loadStatechartFromResource(SAME_NAME_DIFFERENT_REGION);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Test
|
|
@Test
|
|
|
public void testShallowHistoryModel() throws Exception {
|
|
public void testShallowHistoryModel() throws Exception {
|
|
|
Statechart statechart = models
|
|
Statechart statechart = models
|
|
@@ -110,6 +184,7 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Test
|
|
@Test
|
|
|
public void testSimpleHierachyModel() throws Exception {
|
|
public void testSimpleHierachyModel() throws Exception {
|
|
|
Statechart statechart = models
|
|
Statechart statechart = models
|
|
@@ -119,18 +194,24 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
|
|
|
|
|
@Test
|
|
@Test
|
|
|
public void testStatechartLocalReactionsModel() throws Exception {
|
|
public void testStatechartLocalReactionsModel() throws Exception {
|
|
|
- Statechart statechart = models
|
|
|
|
|
- .loadStatechartFromResource(STATECHART_LOCAL_REACTIONS);
|
|
|
|
|
|
|
+ Statechart statechart = models.loadStatechartFromResource(STATECHART_LOCAL_REACTIONS);
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Test
|
|
@Test
|
|
|
public void testStateActiveModel() throws Exception {
|
|
public void testStateActiveModel() throws Exception {
|
|
|
Statechart statechart = models.loadStatechartFromResource(STATE_ACTIVE);
|
|
Statechart statechart = models.loadStatechartFromResource(STATE_ACTIVE);
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testStringExpressionsModel() throws Exception {
|
|
|
|
|
+ Statechart statechart = models.loadStatechartFromResource(STRING_EXPRESSIONS);
|
|
|
|
|
+ failOnError(generateAndCompile(statechart));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
@Test
|
|
@Test
|
|
|
public void testSyncForkModel() throws Exception {
|
|
public void testSyncForkModel() throws Exception {
|
|
@@ -150,13 +231,4 @@ public class JavaSCTGeneratorTest extends AbstractJavaGeneratorTest {
|
|
|
.loadStatechartFromResource(VALUED_EVENTS);
|
|
.loadStatechartFromResource(VALUED_EVENTS);
|
|
|
failOnError(generateAndCompile(statechart));
|
|
failOnError(generateAndCompile(statechart));
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- private void failOnError(IMarker[] diagnostics) throws CoreException {
|
|
|
|
|
- for (IMarker diagnostic : diagnostics) {
|
|
|
|
|
- int severity = (Integer) diagnostic.getAttribute("severity");
|
|
|
|
|
- if (severity == IMarker.SEVERITY_ERROR) {
|
|
|
|
|
- Assert.fail(diagnostic.getAttribute(IMarker.MESSAGE, ""));
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
}
|
|
}
|