public void ExtendedClassDeepBind() { SimpleValues simple = new SimpleValueExtended(); var lambda = LambdaCompiler.Compile(simple, "extended-function(20)", true); var result = lambda(); Assert.AreEqual(77, result); }
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); }
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); }
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); }