public void BuildProxy() { var provider = new StableBindingProxyProvider( new TypeLevelTypeFilter(new[] { typeof(ProxiedChild) }), CreateModuleScope("BuildProxy")); var proxied = new ProxiedChildChildChild("abrakadava"); var proxy = provider.BuildProxy(proxied); // Necessary since a newly built proxy has an empty proxied field // TODO: Introduce BuildProxyFromType(proxiedType) ScriptingHelper.SetProxiedFieldValue(proxy, proxied); Assert.That(proxy, Is.Not.Null); var result = ScriptingHelper.ExecuteScriptExpression <string> ("p0.PrependName('simsalbum',2)", proxy); Assert.That(result, Is.EqualTo("ProxiedChild ProxiedChild: abrakadava simsalbum, THE NUMBER=2")); }