public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_NupkgDoesNotExist() { // Arrange var mockFileSystem = new Mock <IFileSystem>(MockBehavior.Strict); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(null, null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); returnedPackageMetadata = loader.GetPackageMetadataFromPath(string.Empty, null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); // Arrange mockFileSystem.Setup(x => x.FileExists(@"d:\myfolder\sample.nupkg")).Returns(false); // Act returnedPackageMetadata = loader.GetPackageMetadataFromPath(@"d:\myfolder\sample.nupkg", null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackages_NewOnly() { // Arrange var indexedPackages = new HashSet<string>(); var sourceDirectories = new Dictionary<string, string[]> { { @"d:\somefolder\SomeSubFolder", new [] { @"d:\somefolder\SomeSubFolder\dpackage1.nupkg", @"d:\somefolder\SomeSubFolder\dpackage2.nupkg"} }, { @"c:\Program Files\SomeSubFolder", new [] { @"c:\Program Files\SomeSubFolder\cpackage1.nupkg", @"c:\Program Files\SomeSubFolder\cpackage2.nupkg" } } }; var mockFileSystem = new Mock<IFileSystem>(MockBehavior.Strict); foreach (var dirKvp in sourceDirectories) { mockFileSystem.Setup(x => x.DirectoryExists(dirKvp.Key)).Returns(true); mockFileSystem.Setup(x => x.DirectoryGetFiles(dirKvp.Key, "*.nupkg", SearchOption.AllDirectories)).Returns(dirKvp.Value); } mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"d:\somefolder\SomeSubFolder\dpackage1.nupkg")).Returns(DateTime.Now.AddDays(1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"d:\somefolder\SomeSubFolder\dpackage2.nupkg")).Returns(DateTime.Now.AddDays(-1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"c:\Program Files\SomeSubFolder\cpackage1.nupkg")).Returns(DateTime.Now.AddDays(-1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"c:\Program Files\SomeSubFolder\cpackage2.nupkg")).Returns(DateTime.Now.AddDays(1)); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackages = loader.GetPackages(sourceDirectories.Keys, indexedPackages, newOnly: true, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None).ToList(); // Assert Assert.AreEqual(2, returnedPackages.Count()); Assert.AreEqual(@"d:\somefolder\SomeSubFolder\dpackage1.nupkg", returnedPackages[0]); Assert.AreEqual(@"c:\Program Files\SomeSubFolder\cpackage2.nupkg", returnedPackages[1]); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackages_AlreadyIndexed() { // Arrange var indexedPackages = new HashSet <string>(StringComparer.OrdinalIgnoreCase); indexedPackages.Add(@"c:\Program Files\SomeSubFolder\cpackage1.nupkg"); var sourceDirectories = new Dictionary <string, string[]> { { @"d:\somefolder\SomeSubFolder", new [] { @"d:\somefolder\SomeSubFolder\dpackage1.nupkg", @"d:\somefolder\SomeSubFolder\dpackage2.nupkg" } }, { @"c:\Program Files\SomeSubFolder", new [] { @"c:\Program Files\SomeSubFolder\cpackage1.nupkg", @"c:\Program Files\SomeSubFolder\cpackage2.nupkg" } } }; var mockFileSystem = new Mock <IFileSystem>(MockBehavior.Strict); foreach (var dirKvp in sourceDirectories) { mockFileSystem.Setup(x => x.DirectoryExists(dirKvp.Key)).Returns(true); mockFileSystem.Setup(x => x.DirectoryGetFiles(dirKvp.Key, "*.nupkg", SearchOption.AllDirectories)).Returns(dirKvp.Value); } // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackages = loader.GetPackages(sourceDirectories.Keys, indexedPackages, newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None); // Assert Assert.AreEqual(3, returnedPackages.Count()); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_ShouldNotInclude() { // Arrange var mock = new MockGenerator() .MockOpenExistingPackage() .MockPackageId(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(mock.NupkgFile, (p) => { return(false); }); // Assert Assert.IsNull(returnedPackageMetadata); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_LibToolsAndContent() { // Arrange var mock = new MockGenerator() .MockOpenExistingPackage() .MockToolsAndContentDlls(); PackageMetadata expectedPackageMetadata = mock.GetExpectedPackageMetadata(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(mock.NupkgFile, null); // Assert Assert.IsTrue(expectedPackageMetadata.Equals(returnedPackageMetadata)); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_DiscoverPackages_NupkgNotFound() { // Arrange var mock = new MockGenerator() .MockGetPackages() .MockNupkgNotFound(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.DiscoverPackages(new[] { mock.SourceDirectory }, new HashSet <string>(), newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None, shouldIncludeFunc: null); // Assert Assert.IsFalse(returnedPackageMetadata.Any()); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackages_NoSourceDirsExist() { // Arrange var indexedPackages = new HashSet <string>(); var sourceDirectories = new List <string>(); var mockFileSystem = new Mock <IFileSystem>(MockBehavior.Strict); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackages = loader.GetPackages(sourceDirectories, indexedPackages, newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None); // Assert Assert.IsFalse(returnedPackages.Any()); mockFileSystem.VerifyAll(); // Arrange sourceDirectories = new List <string> { @"d:\somefolder\SomeSubFolder", @"c:\Program Files\SomeSubFolder" }; foreach (var dir in sourceDirectories) { mockFileSystem.Setup(x => x.DirectoryExists(dir)).Returns(false); } // Act returnedPackages = loader.GetPackages(sourceDirectories, indexedPackages, newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None); // Assert Assert.IsFalse(returnedPackages.Any()); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackages_NoSourceDirsExist() { // Arrange var indexedPackages = new HashSet<string>(); var sourceDirectories = new List<string>(); var mockFileSystem = new Mock<IFileSystem>(MockBehavior.Strict); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackages = loader.GetPackages(sourceDirectories, indexedPackages, newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None); // Assert Assert.IsFalse(returnedPackages.Any()); mockFileSystem.VerifyAll(); // Arrange sourceDirectories = new List<string> { @"d:\somefolder\SomeSubFolder", @"c:\Program Files\SomeSubFolder" }; foreach (var dir in sourceDirectories) { mockFileSystem.Setup(x => x.DirectoryExists(dir)).Returns(false); } // Act returnedPackages = loader.GetPackages(sourceDirectories, indexedPackages, newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None); // Assert Assert.IsFalse(returnedPackages.Any()); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_DiscoverPackages_ValidPackage() { // Arrange var mock = new MockGenerator() .MockGetPackages() .MockOpenExistingPackage() .MockPackageInfo() .MockLibDllInTheSameFolderAsNupkg(); PackageMetadata expectedPackageMetadata = mock.GetExpectedPackageMetadata(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.DiscoverPackages(new[] { mock.SourceDirectory }, new HashSet <string>(), newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None, shouldIncludeFunc: null); // Assert Assert.IsTrue(expectedPackageMetadata.Equals(returnedPackageMetadata.First())); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackages_NewOnly() { // Arrange var indexedPackages = new HashSet <string>(); var sourceDirectories = new Dictionary <string, string[]> { { @"d:\somefolder\SomeSubFolder", new [] { @"d:\somefolder\SomeSubFolder\dpackage1.nuspec", @"d:\somefolder\SomeSubFolder\dpackage2.nuspec" } }, { @"c:\Program Files\SomeSubFolder", new [] { @"c:\Program Files\SomeSubFolder\cpackage1.nuspec", @"c:\Program Files\SomeSubFolder\cpackage2.nuspec" } } }; var mockFileSystem = new Mock <IFileSystem>(MockBehavior.Strict); foreach (var dirKvp in sourceDirectories) { mockFileSystem.Setup(x => x.DirectoryExists(dirKvp.Key)).Returns(true); mockFileSystem.Setup(x => x.DirectoryGetFiles(dirKvp.Key, "*.nuspec", SearchOption.AllDirectories)).Returns(dirKvp.Value); } mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"d:\somefolder\SomeSubFolder\dpackage1.nuspec")).Returns(DateTime.Now.AddDays(1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"d:\somefolder\SomeSubFolder\dpackage2.nuspec")).Returns(DateTime.Now.AddDays(-1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"c:\Program Files\SomeSubFolder\cpackage1.nuspec")).Returns(DateTime.Now.AddDays(-1)); mockFileSystem.Setup(x => x.FileGetLastWriteTime(@"c:\Program Files\SomeSubFolder\cpackage2.nuspec")).Returns(DateTime.Now.AddDays(1)); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackages = loader.GetPackages(sourceDirectories.Keys, indexedPackages, newOnly: true, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None).ToList(); // Assert Assert.AreEqual(2, returnedPackages.Count()); Assert.AreEqual(@"d:\somefolder\SomeSubFolder\dpackage1.nuspec", returnedPackages[0]); Assert.AreEqual(@"c:\Program Files\SomeSubFolder\cpackage2.nuspec", returnedPackages[1]); mockFileSystem.VerifyAll(); }
public void NupkgLocalPackageLoader_DiscoverPackages_NupkgNotFound() { // Arrange var mock = new MockGenerator() .MockGetPackages() .MockNupkgNotFound(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.DiscoverPackages(new[] { mock.SourceDirectory }, new HashSet<string>(), newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None, shouldIncludeFunc: null); // Assert Assert.IsFalse(returnedPackageMetadata.Any()); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_DiscoverPackages_ValidPackage() { // Arrange var mock = new MockGenerator() .MockGetPackages() .MockOpenExistingPackage() .MockPackageInfo() .MockLibDllInTheSameFolderAsNupkg(); PackageMetadata expectedPackageMetadata = mock.GetExpectedPackageMetadata(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.DiscoverPackages(new[] { mock.SourceDirectory }, new HashSet<string>(), newOnly: false, lastIndexModifiedTime: DateTime.Now, cancellationToken: CancellationToken.None, shouldIncludeFunc: null); // Assert Assert.IsTrue(expectedPackageMetadata.Equals(returnedPackageMetadata.First())); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_LibExplicitReferences() { // Arrange var mock = new MockGenerator() .MockOpenExistingPackage() .MockPackageInfo() .MockLibExplicitReferencesDll(); PackageMetadata expectedPackageMetadata = mock.GetExpectedPackageMetadata(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(mock.NupkgFile, null); // Assert Assert.IsTrue(expectedPackageMetadata.Equals(returnedPackageMetadata)); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_ShouldNotInclude() { // Arrange var mock = new MockGenerator() .MockOpenExistingPackage() .MockPackageId(); // Act var loader = new NupkgLocalPackageLoader(mock.FileSystem.Object, mock.NugetHelper.Object); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(mock.NupkgFile, (p) => { return false; } ); // Assert Assert.IsNull(returnedPackageMetadata); mock.VerifyAll(); }
public void NupkgLocalPackageLoader_GetPackageMetadataFromPath_NupkgDoesNotExist() { // Arrange var mockFileSystem = new Mock<IFileSystem>(MockBehavior.Strict); // Act var loader = new NupkgLocalPackageLoader(mockFileSystem.Object, null); var returnedPackageMetadata = loader.GetPackageMetadataFromPath(null, null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); returnedPackageMetadata = loader.GetPackageMetadataFromPath(string.Empty, null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); // Arrange mockFileSystem.Setup(x => x.FileExists(@"d:\myfolder\sample.nupkg")).Returns(false); // Act returnedPackageMetadata = loader.GetPackageMetadataFromPath(@"d:\myfolder\sample.nupkg", null); // Assert Assert.IsNull(returnedPackageMetadata); mockFileSystem.VerifyAll(); }