public void TestConcat() { Assert.AreEqual("test:123", EncogProgram.ParseString("\"test:\"+123.0")); Assert.AreEqual("helloworld", EncogProgram.ParseString("\"hello\"+\"world\"")); Assert.AreEqual(4, (int)EncogProgram.ParseFloat("length(\"test\")")); Assert.AreEqual("5.22", EncogProgram.ParseString("format(5.2222,2)")); }
public void TestAdd() { Assert.AreEqual(5, EncogProgram.ParseFloat("2+3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(3, EncogProgram.ParseFloat("5+-2"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(6, EncogProgram.ParseFloat("1+2+3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(10, EncogProgram.ParseFloat("1+2+3+4"), EncogFramework.DefaultDoubleEqual); }
public void TestMul() { Assert.AreEqual(-6, EncogProgram.ParseFloat("-2*3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(6, EncogProgram.ParseFloat("2*3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(6, EncogProgram.ParseFloat("-2*-3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(24, EncogProgram.ParseFloat("2*3*4"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(120, EncogProgram.ParseFloat("2*3*4*5"), EncogFramework.DefaultDoubleEqual); }
public void TestConst() { Assert.AreEqual(1, EncogProgram.ParseFloat("1"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(-1, EncogProgram.ParseFloat("-1"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1, EncogProgram.ParseFloat("--1"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(-1, EncogProgram.ParseFloat("---1"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1, EncogProgram.ParseFloat("----1"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(100, EncogProgram.ParseFloat("100"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(100, EncogProgram.ParseFloat("+100"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(-100, EncogProgram.ParseFloat("-100"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1000, EncogProgram.ParseFloat("1e3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(0.001, EncogProgram.ParseFloat("1e-3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1.5, EncogProgram.ParseFloat("1.5"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(-1.5, EncogProgram.ParseFloat("-1.5"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1500, EncogProgram.ParseFloat("1.5e3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(-0.0015, EncogProgram.ParseFloat("-1.5e-3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(1.2345678, EncogProgram.ParseFloat("1.2345678"), EncogFramework.DefaultDoubleEqual); }
public void TestBad() { try { Assert.AreEqual(0, EncogProgram.ParseFloat("2*(3+4"), EncogFramework.DefaultDoubleEqual); Assert.IsTrue(false); } catch (EAError ex) { // good, we want an exception. } try { Assert.AreEqual(0, EncogProgram.ParseFloat("5+"), EncogFramework.DefaultDoubleEqual); Assert.IsTrue(false); } catch (EAError ex) { // good, we want an exception. } }
public void TestBasicFunctions() { Assert.AreEqual(3, EncogProgram.ParseFloat("sqrt(9)"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(100, EncogProgram.ParseFloat("pow(10,2)"), EncogFramework.DefaultDoubleEqual); }
public void TestSub() { Assert.AreEqual(-1, EncogProgram.ParseFloat("2-3"), EncogFramework.DefaultDoubleEqual); Assert.AreEqual(7, EncogProgram.ParseFloat("5--2"), EncogFramework.DefaultDoubleEqual); }
public void TestPrecedence() { Assert.AreEqual(-2.5, EncogProgram.ParseFloat("1.0+2.0*3.0/4.0-5.0"), EncogFramework.DefaultDoubleEqual); }
public void TestParen4() { Assert.AreEqual(4, EncogProgram.ParseFloat("2^(1+1)"), EncogFramework.DefaultDoubleEqual); }
public void TestParen3() { Assert.AreEqual(100, EncogProgram.ParseFloat("(2*3)^2+(4*2)^2"), EncogFramework.DefaultDoubleEqual); }
public void TestParen2() { Assert.AreEqual(10, EncogProgram.ParseFloat("(2*3)+4"), EncogFramework.DefaultDoubleEqual); }
public void TestParen1() { Assert.AreEqual(14, EncogProgram.ParseFloat("2*(3+4)"), EncogFramework.DefaultDoubleEqual); }
public void TestPower() { Assert.AreEqual(8, EncogProgram.ParseFloat("2^3"), EncogFramework.DefaultDoubleEqual); }