Example #1
0
        public void can_generate_assembly() {
            var c = new ExtensionsCompilerExecutor();
			var result = c.Compile(new ExtensionsFileSystemProvider() { DllName = "tmp\\ByCompilerTest.dll", Web=false});
            Assert.NotNull(result);
            Assert.NotNull(result.GetType("ByCompilerTest"));
            Assert.NotNull(result.GetType("L0_extensions_a"));
            Assert.True(result.GetType("L0_extensions_a").GetInterfaces().Contains(typeof(IRegistryLoader)));
        }
        public void need_well_formed_registry() {
            myapp.files.Write("~/sys/extensions/zzz.boo", @"
class A :
    pass
registry['a'] = A
");
            myapp.files.Write("~/usr/extensions/aaa.boo", @"
class Z :
    pass
registry['a'] = Z
");
            var efs = new ExtensionsFileSystemProvider();
            var ex = new ExtensionsCompilerExecutor{Pipeline = new CompileToMemory()};
            var a = ex.Compile(efs);
            var result = new ExtensionsLoader().GetRegistry(a);
            Assert.AreEqual("Z",((Type)result["a"]).Name);

        }