Enable processing of For Loops.
This commit is contained in:
@@ -176,6 +176,71 @@ namespace AxiomUnitTestProject
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("B").Equals(5));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ForStatementVariant3()
|
||||
{
|
||||
String expression=@"
|
||||
DECLARE A,J,TOTAL;
|
||||
A=1;
|
||||
J=1;
|
||||
TOTAL=0;
|
||||
FOR(A=1;A<=10;A=A+1)
|
||||
{
|
||||
FOR(J=1;J<=10;J=J+1)
|
||||
{
|
||||
BREAK;
|
||||
TOTAL=TOTAL+1
|
||||
}
|
||||
}
|
||||
";
|
||||
CodeRunner codeRunner = new CodeRunner();
|
||||
Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage);
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("J").Equals(1));
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("A").Equals(11));
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("TOTAL").Equals(0));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ForStatementVariant2()
|
||||
{
|
||||
String expression=@"
|
||||
DECLARE A,J,TOTAL;
|
||||
A=1;
|
||||
J=1;
|
||||
TOTAL=0;
|
||||
FOR(A=1;A<=10;A=A+1)
|
||||
{
|
||||
FOR(J=1;J<=10;J=J+1)
|
||||
{
|
||||
TOTAL=TOTAL+1;
|
||||
}
|
||||
}
|
||||
";
|
||||
CodeRunner codeRunner = new CodeRunner();
|
||||
Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage);
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("J").Equals(11));
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("A").Equals(11));
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("TOTAL").Equals(100));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ForStatementVariant1()
|
||||
{
|
||||
String expression=@"
|
||||
DECLARE A,J;
|
||||
A=1;
|
||||
J=1;
|
||||
FOR(A=1;A<10;A=A+1)
|
||||
{
|
||||
J=J+1;
|
||||
}
|
||||
";
|
||||
CodeRunner codeRunner = new CodeRunner();
|
||||
Assert.IsTrue(codeRunner.Execute(expression),codeRunner.LastMessage);
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("J").Equals(10));
|
||||
Assert.IsTrue(codeRunner.GetValue<double>("A").Equals(10));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void WhileStatementVariant4()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user