Exemplo n.º 1
0
        public void TwoArrayArgumentsShouldCauseException()
        {
            var testClass = new ClassWithTwoMethods();
            var context   = new Context();

            context.DefineVariable("test").Assign(testClass);

            context.Eval("test.Method1(1, [2], [3])");
        }
Exemplo n.º 2
0
        public void OneArrayArgumentShouldBeProcessedCorrectly()
        {
            var testClass = new ClassWithTwoMethods();
            var context   = new Context();

            context.DefineVariable("test").Assign(testClass);

            context.Eval("test.Method2(1, [2])");

            Assert.AreEqual(1, testClass.Arguments[0][0]);
            Assert.AreEqual(2, (testClass.Arguments[0][1] as int[])[0]);
        }
Exemplo n.º 3
0
        public void OneSimpleArgumentShouldNotBeWrappedIntoArray()
        {
            var testClass = new ClassWithTwoMethods();
            var context   = new Context();

            context.DefineVariable("test").Assign(testClass);

            context.Eval("test.Method2(1, 2)");

            Assert.AreEqual(1, testClass.Arguments[0][0]);
            Assert.AreEqual(null, testClass.Arguments[0][1]);
        }
Exemplo n.º 4
0
        public void SimpleArgumentsShouldBeWrappedIntoArray()
        {
            var testClass = new ClassWithTwoMethods();
            var context   = new Context();

            context.DefineVariable("test").Assign(testClass);

            context.Eval("test.Method1(1, 2, 3, 4, 5)");

            Assert.AreEqual(1, testClass.Arguments[0][0]);
            Assert.AreEqual(2, (testClass.Arguments[0][1] as int[])[0]);
            Assert.AreEqual(3, (testClass.Arguments[0][1] as int[])[1]);
            Assert.AreEqual(4, (testClass.Arguments[0][1] as int[])[2]);
            Assert.AreEqual(5, (testClass.Arguments[0][1] as int[])[3]);
        }