public void GetLoaderForAssembly_NonexistingAssembly_ReturnsNull() { var subject = new AssemblyLoaderFactory(Path.GetTempPath(), _assemblyRewriterMock.Object); var result = subject.GetLoaderForAssembly(new AssemblyName(Guid.NewGuid().ToString())); Assert.IsNull(result); }
public void Dispose_DisposesAssemblyRewriter() { var subject = new AssemblyLoaderFactory(Path.GetTempPath(), _assemblyRewriterMock.Object); subject.Dispose(); _assemblyRewriterMock.Verify(rewriter => rewriter.Dispose(), Times.Once); }
public void GetLoaderForAssembly_ExistingAssembly_ReturnsRewriterResult() { string location = Assembly.GetExecutingAssembly().Location; var loader = new AssemblyLoader(location); _assemblyRewriterMock .Setup(rewriter => rewriter.Rewrite(location)) .Returns(loader); var subject = new AssemblyLoaderFactory(Path.GetDirectoryName(location), _assemblyRewriterMock.Object); // Act var result = subject.GetLoaderForAssembly(Assembly.GetExecutingAssembly().GetName()); // Assert Assert.AreEqual(loader, result); _assemblyRewriterMock.Verify(); }
public void RegisterAssembly_GetLoaderForAssemblyLoadsFromSuppliedPath() { string assemblyName = Guid.NewGuid().ToString(); string path = Path.Combine(@"c:\temp", assemblyName + ".dll"); var subject = new AssemblyLoaderFactory(Path.GetTempPath(), _assemblyRewriterMock.Object); subject.RegisterAssembly(assemblyName, path); var loader = new AssemblyLoader(path); _assemblyRewriterMock .Setup(rewriter => rewriter.Rewrite(path)) .Returns(loader) .Verifiable(); // Act var result = subject.GetLoaderForAssembly(new AssemblyName(assemblyName)); // Assert Assert.AreEqual(loader, result); _assemblyRewriterMock.Verify(); }