Пример #1
0
        public void ExtendedClassDeepBind()
        {
            SimpleValues simple = new SimpleValueExtended();
            var          lambda = LambdaCompiler.Compile(simple, "extended-function(20)", true);
            var          result = lambda();

            Assert.AreEqual(77, result);
        }
Пример #2
0
        public void ExtendedClassDeepBindInvokeInheritedStaticMethod()
        {
            SimpleValues simple = new SimpleValueExtended();
            var          lambda = LambdaCompiler.Compile(simple, "+(get-static(), extended-function(20))", true);
            var          result = lambda();

            Assert.AreEqual(84, result);
        }
Пример #3
0
        public void ExtendedClassDeepBindInvokeInheritedProtectedMethod()
        {
            SimpleValues simple = new SimpleValueExtended();
            var          lambda = LambdaCompiler.Compile(simple, "+(get-constant-integer(), extended-function(3))", true);
            var          result = lambda();

            Assert.AreEqual(117, result);
        }
Пример #4
0
        public void ExtendedClassShallowBind()
        {
            SimpleValues simple = new SimpleValueExtended();
            var          lambda = LambdaCompiler.Compile(simple, "extended-function(20)");
            var          error  = false;

            try {
                var result = lambda();
            } catch {
                error = true;
            }
            Assert.AreEqual(true, error);
        }