public void CannotRetrieveWithIncorrectRef() { var retriever = new FileModuleTypeLoader(); var moduleInfo = new ModuleInfo() { Ref = "NotForLocalRetrieval" }; Assert.IsFalse(retriever.CanLoadModuleType(moduleInfo)); }
public void CanRetrieveWithCorrectRef() { var retriever = new FileModuleTypeLoader(); var moduleInfo = new ModuleInfo() { Ref = "file://somefile" }; Assert.IsTrue(retriever.CanLoadModuleType(moduleInfo)); }
public void CanRetrieveModule() { var assemblyResolver = new MockAssemblyResolver(); var retriever = new FileModuleTypeLoader(assemblyResolver); string assembly = CompilerHelper.GenerateDynamicModule("FileModuleA", null); var fileModuleInfo = CreateModuleInfo(assembly, "TestModules.FileModuleAClass", "ModuleA", true, null); ManualResetEvent callbackEvent = new ManualResetEvent(false); retriever.BeginLoadModuleType(fileModuleInfo, delegate { callbackEvent.Set(); }); callbackEvent.WaitOne(500); Assert.AreEqual(assembly, assemblyResolver.LoadAssemblyFromArgument); }
public void ShouldReturnErrorToCallback() { var assemblyResolver = new MockAssemblyResolver(); var retriever = new FileModuleTypeLoader(assemblyResolver); var fileModuleInfo = CreateModuleInfo("NonExistentFile.dll", "NonExistentModule", "NonExistent", true, null); ManualResetEvent callbackEvent = new ManualResetEvent(false); assemblyResolver.ThrowOnLoadAssemblyFrom = true; Exception resultException = null; retriever.BeginLoadModuleType(fileModuleInfo, delegate(ModuleInfo moduleInfo, Exception error) { resultException = error; callbackEvent.Set(); }); callbackEvent.WaitOne(500); Assert.IsNotNull(resultException); }