public void MultiplyTwoDoubles()
        {
            MultiplyExpression expr = new MultiplyExpression(new ConstantExpression(2.5), new ConstantExpression(3.7));

            Assert.AreEqual(2.5 * 3.7, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Double, expr.TypeInfo);
        }
        public void MultiplyTwoIntegers()
        {
            MultiplyExpression expr = new MultiplyExpression(new ConstantExpression(3), new ConstantExpression(2));

            Assert.AreEqual(6, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Int, expr.TypeInfo);
        }
        public void MultiplyDoubleByInteger()
        {
            MultiplyExpression expr = new MultiplyExpression(new ConstantExpression(2.5), new ConstantExpression(3));

            Assert.AreEqual(2.5 * 3, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Double, expr.TypeInfo);
        }
Example #4
0
        public void MultiplyTwoIntegers()
        {
            MultiplyExpression expr = new MultiplyExpression(new ConstantExpression(3), new ConstantExpression(2));

            Assert.AreEqual(6, expr.Evaluate(null));
            Assert.IsFalse(expr.HasVariable());
        }
Example #5
0
        public void TestEvaluate()
        {
            var expression = new MultiplyExpression(
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)5),
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)2),
                new Context(ExpressiveOptions.None));

            Assert.AreEqual(10, expression.Evaluate(null));
        }
        public void ShouldMultiplyTwoRealNumbers()
        {
            IExpression expression = new MultiplyExpression(3.0, 2.0);

            object value = expression.Evaluate(null);

            Assert.IsNotNull(value);
            Assert.IsInstanceOfType(value, typeof(double));
            Assert.AreEqual(6.0, (double)value);
        }
        public void ShouldMultiplyTwoIntegerNumbers()
        {
            IExpression expression = new MultiplyExpression(3, 2);

            object value = expression.Evaluate(null);

            Assert.IsNotNull(value);
            Assert.IsInstanceOfType(value, typeof(int));
            Assert.AreEqual(6, (int)value);
        }
        private object Multiply(object l, object r)
        {
            var scope = new Scope();

            scope.SetVar("l", l);
            scope.SetVar("r", r);

            var exp = new MultiplyExpression(
                new VariableExpression("l"),
                new VariableExpression("r")
                );

            return(exp.Evaluate(scope, new Bindings()).AsObject());
        }
Example #9
0
        public void MultiplyIntegerByDouble()
        {
            MultiplyExpression expr = new MultiplyExpression(new ConstantExpression(2), new ConstantExpression(2.5));

            Assert.AreEqual(2 * 2.5, expr.Evaluate(null));
        }
        public void ShouldMultiply()
        {
            var expr = new MultiplyExpression(Constant(2), Constant(2));

            Assert.Equal(4, expr.Evaluate());
        }