Browse Source

Support showing updated pre-release packages with Get-Package cmdlet.

Get-Package -Updates -Prerelease
pull/53/merge
Matt Ward 12 years ago
parent
commit
7b22f707c0
  1. 6
      src/AddIns/Misc/PackageManagement/Cmdlets/Project/Src/GetPackageCmdlet.cs
  2. 38
      src/AddIns/Misc/PackageManagement/Cmdlets/Test/Src/GetPackageCmdletTests.cs

6
src/AddIns/Misc/PackageManagement/Cmdlets/Project/Src/GetPackageCmdlet.cs

@ -45,7 +45,7 @@ namespace ICSharpCode.PackageManagement.Cmdlets @@ -45,7 +45,7 @@ namespace ICSharpCode.PackageManagement.Cmdlets
public SwitchParameter Updates { get; set; }
[Parameter(ParameterSetName = "Available")]
[Parameter(ParameterSetName = "Updates")]
[Parameter(ParameterSetName = "Updated")]
[Alias("Prerelease")]
public SwitchParameter IncludePrerelease { get; set; }
@ -170,7 +170,9 @@ namespace ICSharpCode.PackageManagement.Cmdlets @@ -170,7 +170,9 @@ namespace ICSharpCode.PackageManagement.Cmdlets
IPackageRepository repository = CreatePackageRepositoryForActivePackageSource();
UpdatedPackages updatedPackages = CreateUpdatedPackages(repository);
updatedPackages.SearchTerms = Filter;
return updatedPackages.GetUpdatedPackages().AsQueryable();
return updatedPackages
.GetUpdatedPackages(IncludePrerelease.IsPresent)
.AsQueryable();
}
UpdatedPackages CreateUpdatedPackages(IPackageRepository repository)

38
src/AddIns/Misc/PackageManagement/Cmdlets/Test/Src/GetPackageCmdletTests.cs

@ -620,5 +620,43 @@ namespace PackageManagement.Cmdlets.Tests @@ -620,5 +620,43 @@ namespace PackageManagement.Cmdlets.Tests
CollectionAssert.AreEqual(expectedPackages, actualPackages);
}
[Test]
public void ProcessRecord_UpdatedPackagesIncludingPrereleasesRequestedAndNoProjectName_ReturnsUpdatedPrereleasePackagesForSolution()
{
CreateCmdlet();
AddPackageToSolution("Test", "1.0.0.0");
FakePackage updatedPackage = AddPackageToSelectedRepositoryInConsoleHost("Test", "1.1.0-alpha");
EnableUpdatesParameter();
EnablePrereleaseParameter();
RunCmdlet();
List<object> actualPackages = fakeCommandRuntime.ObjectsPassedToWriteObject;
var expectedPackages = new FakePackage[] {
updatedPackage
};
CollectionAssert.AreEqual(expectedPackages, actualPackages);
}
[Test]
public void ProcessRecord_UpdatedPackagesOnlyRequestedAndNoProjectNameAndRepositoryHasPrereleases_ReturnsUpdatedPackagesButNoPrereleasesForSolution()
{
CreateCmdlet();
AddPackageToSolution("Test", "1.0.0.0");
AddPackageToSelectedRepositoryInConsoleHost("Test", "1.2.0-alpha");
FakePackage updatedPackage = AddPackageToSelectedRepositoryInConsoleHost("Test", "1.1.0");
EnableUpdatesParameter();
RunCmdlet();
List<object> actualPackages = fakeCommandRuntime.ObjectsPassedToWriteObject;
var expectedPackages = new FakePackage[] {
updatedPackage
};
CollectionAssert.AreEqual(expectedPackages, actualPackages);
}
}
}

Loading…
Cancel
Save