Browse Source

Do not show pre-release NuGet packages in Manage Packages dialog.

pull/6/merge
Matt Ward 14 years ago
parent
commit
c02032d0e7
  1. 10
      src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs
  2. 24
      src/AddIns/Misc/PackageManagement/Test/Src/AvailablePackagesViewModelTests.cs

10
src/AddIns/Misc/PackageManagement/Project/Src/AvailablePackagesViewModel.cs

@ -43,13 +43,9 @@ namespace ICSharpCode.PackageManagement @@ -43,13 +43,9 @@ namespace ICSharpCode.PackageManagement
protected override IEnumerable<IPackage> GetFilteredPackagesBeforePagingResults(IQueryable<IPackage> allPackages)
{
IEnumerable<IPackage> filteredPackages = base.GetFilteredPackagesBeforePagingResults(allPackages);
return GetDistinctPackagesById(filteredPackages);
}
IEnumerable<IPackage> GetDistinctPackagesById(IEnumerable<IPackage> allPackages)
{
return allPackages.DistinctLast<IPackage>(PackageEqualityComparer.Id);
return base.GetFilteredPackagesBeforePagingResults(allPackages)
.Where(package => package.IsReleaseVersion())
.DistinctLast(PackageEqualityComparer.Id);
}
}
}

24
src/AddIns/Misc/PackageManagement/Test/Src/AvailablePackagesViewModelTests.cs

@ -358,5 +358,29 @@ namespace PackageManagement.Tests @@ -358,5 +358,29 @@ namespace PackageManagement.Tests
ApplicationException ex = Assert.Throws<ApplicationException>(() => CompleteReadPackagesTask());
Assert.AreEqual("Test", ex.Message);
}
[Test]
public void ReadPackages_RepositoryHasPrereleaseAndReleasePackage_HasReleasePackageOnly()
{
CreateViewModel();
var releasePackage = new FakePackage("Test", "1.0.0.0");
var prereleasePackage = new FakePackage("Test", "1.1.0-alpha");
var packages = new FakePackage[] {
releasePackage, prereleasePackage
};
registeredPackageRepositories.FakeActiveRepository.FakePackages.AddRange(packages);
viewModel.ReadPackages();
CompleteReadPackagesTask();
var expectedPackages = new FakePackage[] {
releasePackage
};
PackageCollectionAssert.AreEqual(expectedPackages, viewModel.PackageViewModels);
}
}
}

Loading…
Cancel
Save