瀏覽代碼

Test for increment assignment (#2079)

* Increment/Decrement Tests

Added various testcases regarding incrementing and decrementing of a
variable.

* Updating tests
jthoene 7 年之前
父節點
當前提交
5c9ee7c358

+ 40 - 1
test-plugins/org.yakindu.sct.simulation.core.sexec.test/src/org/yakindu/sct/model/sexec/interpreter/test/STextInterpreterTest.java

@@ -49,12 +49,51 @@ public class STextInterpreterTest extends AbstractSTextTest {
 	@Inject
 	private ITypeSystem typeSystem;
 
+	@Test
+	public void testIncrementToVariableAssignment() {
+		executeWithDefaultScope("realVar = intVar++");
+		assertEquals(1, getIntValue());
+		assertEquals(0, getRealValue());
+	}
+	
+	@Test
+	public void testIncrementVariableAssignment() {
+		executeWithDefaultScope("intVar = intVar++");
+		assertEquals(0, getIntValue());
+	}
+	
+	@Test
+	public void testIncrementAssignment() {
+		executeWithDefaultScope("intVar++");
+		assertEquals(1, getIntValue());
+	}
+	
+	@Test
+	public void testDecrementAssignment() {
+		executeWithDefaultScope("intVar--");
+		assertEquals(-1, getIntValue());
+	}
+	
+	@Test
+	public void testDecrementVariableAssignment() {
+		executeWithDefaultScope("intVar = intVar--");
+		assertEquals(0, getIntValue());
+	}
+	
+	@Test
+	public void testDecrementToVariableAssignment() {
+		executeWithDefaultScope("realVar = intVar--");
+		assertEquals(-1, getIntValue());
+		assertEquals(0, getRealValue());
+	}
+	
 	@Test
 	public void testIntVariableAssignment() {
 		executeWithDefaultScope("intVar = 42");
 		assertEquals(42L, getIntValue());
 	}
-
+	
+	
 	@Test
 	public void testHexVariableAssignment() {
 		executeWithDefaultScope("intVar = 0xFF");