示例#1
0
        public void RefalLibrary_TestMulInt64Negative()
        {
            var refal  = new RefalLibrary(null);
            var expr   = PassiveExpression.Build(new OpeningBrace(), '-', 321321L, new ClosingBrace(), '-', 123123L);
            var result = refal.Mul(expr);

            Assert.AreEqual(result.Count, 1);
            Assert.IsTrue(result[0] is long);
            Assert.AreEqual((long)result[0], 39562005483);
        }
示例#2
0
        public void RefalLibrary_TestMulInt32NegNeg()
        {
            var refal  = new RefalLibrary(null);
            var expr   = PassiveExpression.Build(new OpeningBrace(), '-', 321, new ClosingBrace(), '-', 123);
            var result = refal.Mul(expr);

            Assert.AreEqual(result.Count, 1);
            Assert.IsTrue(result[0] is int);
            Assert.AreEqual((int)result[0], 39483);
        }
示例#3
0
        public void RefalLibrary_TestMulInt64GivingInt32Negative()
        {
            var refal  = new RefalLibrary(null);
            var expr   = PassiveExpression.Build(new OpeningBrace(), 321L, new ClosingBrace(), '-', 123L);
            var result = refal.Mul(expr);

            // result should be '-' 198 (two symbols)
            Assert.AreEqual(result.Count, 2);
            Assert.IsTrue(result[0] is char);
            Assert.IsTrue(result[1] is int);
            Assert.AreEqual((char)result[0], '-');
            Assert.AreEqual((int)result[1], 39483);
        }