Merge branch 'main' of https://github.com/dotnet/installer into create-precomputed-rar-cache

This commit is contained in:
Nathan Mytelka 2021-04-28 10:45:26 -07:00
commit 93b2806b0a
30 changed files with 767 additions and 214 deletions

View file

@ -9,6 +9,10 @@
<Content Include="$(RepoRoot)TestAssets\Directory.Build.targets" LinkBase="Tests" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Sdk.WorkloadManifestReader" Version="$(MicrosoftNETSdkPackageVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Microsoft.DotNet.Tools.Tests.Utilities\Microsoft.DotNet.Tools.Tests.Utilities.csproj" />
</ItemGroup>

View file

@ -0,0 +1,43 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using FluentAssertions;
using Microsoft.DotNet.Tools.Test.Utilities;
using Microsoft.NET.Sdk.WorkloadManifestReader;
using Xunit;
using Xunit.Abstractions;
namespace EndToEnd.Tests
{
public class ValidateInsertedManifests : TestBase
{
private readonly ITestOutputHelper output;
public ValidateInsertedManifests(ITestOutputHelper output)
{
this.output = output;
}
[Fact]
public void ManifestReaderCanReadManifests()
{
var sdkManifestDir = Path.Combine(Path.GetDirectoryName(RepoDirectoriesProvider.DotnetUnderTest), "sdk-manifests");
var sdkversionDir = new DirectoryInfo(sdkManifestDir).EnumerateDirectories().First();
foreach (var manifestDir in sdkversionDir.EnumerateDirectories())
{
var manifestId = manifestDir.Name;
string manifestFile = manifestDir.GetFile("WorkloadManifest.json").FullName;
File.Exists(manifestFile).Should().BeTrue();
using var fileStream = new FileStream(manifestFile, FileMode.Open, FileAccess.Read);
Action readManifest = () => WorkloadManifestReader.ReadWorkloadManifest(manifestId, fileStream);
readManifest.ShouldNotThrow("manifestId:" + manifestId + " manifestFile:" + manifestFile + "is invalid");
}
}
}
}

View file

@ -266,7 +266,7 @@
<Exec Command="$(ToolRunPrefix)dotnet tool run $(ToolCommandName) -- $(TestArgs)"
WorkingDirectory="$(TestLocalToolFolder)"
EnvironmentVariables="DOTNET_CLI_HOME=$(DOTNET_CLI_HOME)"/>
EnvironmentVariables="DOTNET_CLI_HOME=$(DOTNET_CLI_HOME);DOTNET_CLI_RUN_MSBUILD_OUTOFPROC=true"/>
</Target>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />