Merge pull request #14994 from dotnet-maestro-bot/merge/release/6.0.4xx-to-release/7.0.1xx

[automated] Merge branch 'release/6.0.4xx' => 'release/7.0.1xx'
This commit is contained in:
Marc Paine 2022-11-16 14:31:26 -08:00 committed by GitHub
commit 7a63b1bfae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 37 additions and 31 deletions

View file

@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<TargetFramework>$(CoreSdkTargetFramework)</TargetFramework>
<DefineConstants Condition="'$(IslinuxPortable)' == 'true'">$(DefineConstants);LINUX_PORTABLE</DefineConstants>
</PropertyGroup>
<ItemGroup>

View file

@ -47,39 +47,44 @@ namespace EndToEnd
internal void ItDoesNotRollForwardToTheLatestVersion(string packageName, string minorVersion)
{
var testProjectCreator = new TestProjectCreator()
{
PackageName = packageName,
MinorVersion = minorVersion,
};
var _testInstance = testProjectCreator.Create();
string projectDirectory = _testInstance.Root.FullName;
string projectPath = Path.Combine(projectDirectory, "TestAppSimple.csproj");
// Get the resolved version of .NET Core
new RestoreCommand()
.WithWorkingDirectory(projectDirectory)
.Execute()
.Should().Pass();
string assetsFilePath = Path.Combine(projectDirectory, "obj", "project.assets.json");
var assetsFile = new LockFileFormat().Read(assetsFilePath);
var versionInAssertsJson = GetPackageVersion(assetsFile, packageName);
versionInAssertsJson.Should().NotBeNull();
if (versionInAssertsJson.IsPrerelease && versionInAssertsJson.Patch == 0)
{
// if the bundled version is, for example, a prerelease of
// .NET Core 2.1.1, that we don't roll forward to that prerelease
// version for framework-dependent deployments.
// https://github.com/NuGet/Home/issues/8571
#if LINUX_PORTABLE
return;
}
#else
var testProjectCreator = new TestProjectCreator()
{
PackageName = packageName,
MinorVersion = minorVersion,
};
versionInAssertsJson.ToNormalizedString().Should().BeEquivalentTo(GetExpectedVersion(packageName, minorVersion));
var _testInstance = testProjectCreator.Create();
string projectDirectory = _testInstance.Root.FullName;
string projectPath = Path.Combine(projectDirectory, "TestAppSimple.csproj");
// Get the resolved version of .NET Core
new RestoreCommand()
.WithWorkingDirectory(projectDirectory)
.Execute()
.Should().Pass();
string assetsFilePath = Path.Combine(projectDirectory, "obj", "project.assets.json");
var assetsFile = new LockFileFormat().Read(assetsFilePath);
var versionInAssertsJson = GetPackageVersion(assetsFile, packageName);
versionInAssertsJson.Should().NotBeNull();
if (versionInAssertsJson.IsPrerelease && versionInAssertsJson.Patch == 0)
{
// if the bundled version is, for example, a prerelease of
// .NET Core 2.1.1, that we don't roll forward to that prerelease
// version for framework-dependent deployments.
return;
}
versionInAssertsJson.ToNormalizedString().Should().BeEquivalentTo(GetExpectedVersion(packageName, minorVersion));
#endif
}
private static NuGetVersion GetPackageVersion(LockFile lockFile, string packageName)