Skip to content

Commit

Permalink
Fix #4814 - do not consider unlisted prerelease versions when showing…
Browse files Browse the repository at this point in the history
… "newer prerelease available" message.
  • Loading branch information
xavierdecoster committed Oct 27, 2017
1 parent 5f88eec commit ed94f6f
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/NuGetGallery/ViewModels/DisplayPackageViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ public bool HasNewerPrerelease
get
{
var latestPrereleaseVersion = PackageVersions
.Where(pv => pv.Prerelease && pv.Available)
.Where(pv => pv.Prerelease && pv.Available && pv.Listed)
.Max(pv => pv.NuGetVersion);

return latestPrereleaseVersion > NuGetVersion;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -199,5 +199,44 @@ public void HasNewerPrereleaseReturnsTrueWhenNewerPrereleaseAvailable(
// Assert
Assert.Equal(expectedNewerPrereleaseAvailable, hasNewerPrerelease);
}

[Fact]
public void HasNewerPrereleaseDoesNotConsiderUnlistedVersions()
{
// Arrange
var dependencies = Enumerable.Empty<PackageDependency>().ToList();
var packageRegistration = new PackageRegistration
{
Owners = Enumerable.Empty<User>().ToList(),
};

var package = new Package
{
Dependencies = dependencies,
PackageRegistration = packageRegistration,
IsPrerelease = true,
Version = "1.0.0-alpha.1"
};

// This is a newer prerelease version, however unlisted.
var otherPackage = new Package
{
Dependencies = dependencies,
PackageRegistration = packageRegistration,
IsPrerelease = true,
Version = "1.0.0-alpha.2",
Listed = false
};

package.PackageRegistration.Packages = new[] { package, otherPackage };

var viewModel = new DisplayPackageViewModel(package, package.PackageRegistration.Packages.OrderByDescending(p => new NuGetVersion(p.Version)));

// Act
var hasNewerPrerelease = viewModel.HasNewerPrerelease;

// Assert
Assert.False(hasNewerPrerelease);
}
}
}

0 comments on commit ed94f6f

Please sign in to comment.