public async Task FindWithOneResult() { var scanner = Substitute.For <IRepositoryScanner>(); var updater = Substitute.For <IPackageUpdatesLookup>(); var logger = Substitute.For <INuKeeperLogger>(); var folder = Substitute.For <IFolder>(); var pip = BuildPackageInProject("somePackage"); scanner.FindAllNuGetPackages(Arg.Any <IFolder>()) .Returns(new List <PackageInProject> { pip }); ReturnsUpdateSetForEachPackage(updater); var finder = new UpdateFinder(scanner, updater, logger); var results = await finder.FindPackageUpdateSets( folder, NuGetSources.GlobalFeed, VersionChange.Major); Assert.That(results, Is.Not.Null); Assert.That(results.Count, Is.EqualTo(1)); Assert.That(results.First().SelectedId, Is.EqualTo("somePackage")); logger .DidNotReceive() .Error(Arg.Any <string>(), Arg.Any <Exception>()); }
public async Task FindSkipsMetapackageResult() { var scanner = Substitute.For <IRepositoryScanner>(); var updater = Substitute.For <IPackageUpdatesLookup>(); var logger = Substitute.For <INuKeeperLogger>(); var folder = Substitute.For <IFolder>(); var pip = BuildPackageInProject("somePackage"); var aspnetCore = BuildPackageInProject("Microsoft.AspNetCore.App"); scanner.FindAllNuGetPackages(Arg.Any <IFolder>()) .Returns(new List <PackageInProject> { pip, aspnetCore }); ReturnsUpdateSetForEachPackage(updater); var finder = new UpdateFinder(scanner, updater, logger); var results = await finder.FindPackageUpdateSets( folder, NuGetSources.GlobalFeed, VersionChange.Major); Assert.That(results, Is.Not.Null); Assert.That(results.Count, Is.EqualTo(1)); Assert.That(results.First().SelectedId, Is.EqualTo("somePackage")); logger .Received(1) .Error(Arg.Is <string>( s => s.StartsWith("Metapackage 'Microsoft.AspNetCore.App'", StringComparison.OrdinalIgnoreCase))); }
public async Task FindWithoutResults() { var scanner = Substitute.For <IRepositoryScanner>(); var updater = Substitute.For <IPackageUpdatesLookup>(); var logger = Substitute.For <INuKeeperLogger>(); var folder = Substitute.For <IFolder>(); ReturnsUpdateSetForEachPackage(updater); var finder = new UpdateFinder(scanner, updater, logger); var results = await finder.FindPackageUpdateSets( folder, NuGetSources.GlobalFeed, VersionChange.Major); Assert.That(results, Is.Not.Null); Assert.That(results.Count, Is.EqualTo(0)); logger .DidNotReceive() .Error(Arg.Any <string>(), Arg.Any <Exception>()); }