Beispiel #1
0
        public void DivideTwoDoubles()
        {
            DivideExpression expr = new DivideExpression(new ConstantExpression(2.5), new ConstantExpression(3.7));

            Assert.AreEqual(2.5 / 3.7, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Double, expr.TypeInfo);
        }
Beispiel #2
0
        public void DivideIntegerByDouble()
        {
            DivideExpression expr = new DivideExpression(new ConstantExpression(2), new ConstantExpression(2.5));

            Assert.AreEqual(2 / 2.5, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Double, expr.TypeInfo);
        }
Beispiel #3
0
        public void DivideTwoIntegers()
        {
            DivideExpression expr = new DivideExpression(new ConstantExpression(6), new ConstantExpression(2));

            Assert.AreEqual(3, expr.Evaluate(null));
            Assert.AreSame(TypeInfo.Int, expr.TypeInfo);
        }
Beispiel #4
0
        public void TestEvaluate()
        {
            var expression = new DivideExpression(
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)1),
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)1),
                ExpressiveOptions.None);

            Assert.AreEqual(1d, expression.Evaluate(null));
        }
        public void ShouldDivideTwoRealNumbers()
        {
            IExpression expression = new DivideExpression(3.0, 2.0);

            object value = expression.Evaluate(null);

            Assert.IsNotNull(value);
            Assert.IsInstanceOfType(value, typeof(double));
            Assert.AreEqual(1.5, (double)value);
        }
        private object Divide(object l, object r)
        {
            var scope = new Scope();

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

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

            return(exp.Evaluate(scope, new Bindings()).AsObject());
        }
Beispiel #7
0
        public void DivideDoubleByInteger()
        {
            DivideExpression expr = new DivideExpression(new ConstantExpression(2.5), new ConstantExpression(3));

            Assert.AreEqual(2.5 / 3, expr.Evaluate(null));
        }
Beispiel #8
0
        public void DivideTwoIntegersToReal()
        {
            DivideExpression expr = new DivideExpression(new ConstantExpression(5), new ConstantExpression(2));

            Assert.AreEqual(2.5, expr.Evaluate(null));
        }
        public void ShouldDivide()
        {
            var expr = new DivideExpression(Constant(4), Constant(2));

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