public void TestExpressionStringPow() { num a = 12; Assert.AreEqual("12", a.ToExactExpressionString()); num b = a.Pow(2); Assert.AreEqual("144", a.ToExactExpressionString()); num c = b.Sqrt3(); Assert.AreEqual("2 * sqrt3(21)", a.ToExactExpressionString()); num d = c.Sqrt(); Assert.AreEqual("sqrt(2 * sqrt3(21))", a.ToExactExpressionString()); }
public void TestExpressionStringBinary() { num a = 1; Assert.AreEqual("1", a.ToExactExpressionString()); num b = a / 3; Assert.AreEqual("1 / 3", b.ToExactExpressionString()); num c = b * 2; Assert.AreEqual("2 / 3", c.ToExactExpressionString()); num d = c + 2; Assert.AreEqual("8 / 3", c.ToExactExpressionString()); num e = d * 3; Assert.AreEqual("8", c.ToExactExpressionString()); Assert.AreEqual(8, e); }