File: dotnet.Tests.csproj
Web Access
Project: ..\..\..\test\dotnet.Tests\dotnet.Tests.csproj (dotnet.Tests)
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 
  <PropertyGroup>
    <OutDirName>Tests\$(MSBuildProjectName)</OutDirName>
  </PropertyGroup>
 
  <Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
 
  <PropertyGroup>
    <OutputType>Exe</OutputType>
  </PropertyGroup>
 
  <PropertyGroup>
    <TargetFramework>$(ToolsetTargetFramework)</TargetFramework>
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    <StrongNameKeyId>MicrosoftAspNetCore</StrongNameKeyId>
    <CanRunTestAsTool>false</CanRunTestAsTool>
 
    <!-- Use layout folder for the output folder, to support in-process tests which expect to be running
         on a valid layout. -->
    <OutputPath>$(TestHostFolder)</OutputPath>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
  </PropertyGroup>
 
  <ItemGroup>
    <!-- Removed here: https://github.com/dotnet/sdk/pull/46562 -->
    <Compile Remove="CommandTests\Test\MSBuildHandlerTests.cs" />
    <None Include="CompletionTests\snapshots\**\*" TargetPath="snapshots\%(RecursiveDir)\%(FileName)%(Extension)" CopyToOutputDirectory="PreserveNewest" />
    <None Include="ShellShimTests\WpfBinaryTestAssets\testwpf.dll" TargetPath="WpfBinaryTestAssets\testwpf.dll" CopyToOutputDirectory="PreserveNewest" />
    <None Include="CollectCodeCoverage.runsettings" CopyToOutputDirectory="PreserveNewest" />
    <None Include="queryResultSample.json" CopyToOutputDirectory="PreserveNewest" />
  </ItemGroup>
 
  <ItemGroup>
    <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
      <_Parameter1>MSTestVersion</_Parameter1>
      <_Parameter2>$(MSTestVersion)</_Parameter2>
    </AssemblyAttribute>
    <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
      <_Parameter1>MicrosoftNETTestSdkPackageVersion</_Parameter1>
      <_Parameter2>$(MicrosoftNETTestSdkPackageVersion)</_Parameter2>
    </AssemblyAttribute>
    <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
      <_Parameter1>XUnitVersion</_Parameter1>
      <_Parameter2>$(XUnitVersion)</_Parameter2>
    </AssemblyAttribute>
    <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
      <_Parameter1>SdkVersion</_Parameter1>
      <_Parameter2>$(Version)</_Parameter2>
    </AssemblyAttribute>
  </ItemGroup>
 
  <Target Name="WriteExpectedTargetFrameworkMoniker" BeforeTargets="BeforeBuild" DependsOnTargets="PrepareForBuild">
    <PropertyGroup>
      <ExpectedTargetFrameworkMonikerFileInIntermediateFolder>$(IntermediateOutputPath)ExpectedTargetFrameworkMoniker.txt</ExpectedTargetFrameworkMonikerFileInIntermediateFolder>
      <VersionFileContent>$(TargetFrameworkMoniker)</VersionFileContent>
      <ExistingVersionFileContent Condition=" Exists('$(ExpectedTargetFrameworkMonikerFileInIntermediateFolder)') ">
        $([System.IO.File]::ReadAllText($(ExpectedTargetFrameworkMonikerFileInIntermediateFolder)))
      </ExistingVersionFileContent>
      <ShouldOverwriteVersionFile>false</ShouldOverwriteVersionFile>
      <ShouldOverwriteVersionFile Condition=" '$(ExistingVersionFileContent.Trim())' != '$(VersionFileContent.Trim())' ">true</ShouldOverwriteVersionFile>
    </PropertyGroup>
    <WriteLinesToFile File="$(ExpectedTargetFrameworkMonikerFileInIntermediateFolder)" Lines="$(VersionFileContent)" Condition=" '$(ShouldOverwriteVersionFile)' == 'true' " Overwrite="true" />
    <ItemGroup>
      <Content Include="$(ExpectedTargetFrameworkMonikerFileInIntermediateFolder)" CopyToOutputDirectory="PreserveNewest" />
      <FileWrites Include="$(ExpectedTargetFrameworkMonikerFileInIntermediateFolder)" />
    </ItemGroup>
  </Target>
 
  <ItemGroup>
    <ProjectReference Include="..\Microsoft.NET.TestFramework\Microsoft.NET.TestFramework.csproj" />
    <ProjectReference Include="..\Microsoft.DotNet.Tools.Tests.ComponentMocks\Microsoft.DotNet.Tools.Tests.ComponentMocks.csproj" />
    <ProjectReference Include="..\..\src\Cli\dotnet\dotnet.csproj" />
    <ProjectReference Include="..\..\src\Cli\Microsoft.DotNet.Cli.Utils\Microsoft.DotNet.Cli.Utils.csproj" />
    <ProjectReference Include="..\Msbuild.Tests.Utilities\Msbuild.Tests.Utilities.csproj" />
  </ItemGroup>
 
  <ItemGroup>
    <PackageReference Include="Basic.CompilerLog.Util" />
    <PackageReference Include="Moq" />
    <PackageReference Include="Microsoft.Build.Tasks.Core" />
    <PackageReference Include="Microsoft.TemplateEngine.Mocks" />
    <PackageReference Include="Microsoft.TemplateEngine.TestHelper" />
    <PackageReference Include="Verify.Xunit" />
    <PackageReference Include="Verify.DiffPlex" />
    <!-- This package comes from dotnet/runtime-assets -->
    <PackageReference Include="Microsoft.DotNet.Installer.Windows.Security.TestData" GeneratePathProperty="true" />
    <PackageReference Include="Xunit.Combinatorial" />
  </ItemGroup>
 
  <!-- Global usings -->
  <!-- See: https://learn.microsoft.com/dotnet/core/project-sdk/msbuild-props#using -->
  <ItemGroup>
    <!-- Aliases -->
    <!-- Note: '%3C' is for '<' and '%3E' is for '>' -->
    <Using Include="System.Collections.Generic.Dictionary%3CMicrosoft.NET.Sdk.WorkloadManifestReader.WorkloadId, Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadDefinition%3E" Alias="WorkloadCollection" />
  </ItemGroup>
 
  <Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
 
  <Target Name="CompareCliSnapshots">
    <ItemGroup>
      <SnapshotFiles Include="$(TestHostFolder)snapshots\**\*.received.*" />
    </ItemGroup>
    <Copy SourceFiles="@(SnapshotFiles)" DestinationFolder="$(MSBuildThisFileDirectory)CompletionTests\snapshots\%(RecursiveDir)" SkipUnchangedFiles="true" />
  </Target>
 
  <Target Name="UpdateCliSnapshots">
    <ItemGroup>
      <SnapshotFiles Include="$(MSBuildThisFileDirectory)CompletionTests\snapshots\**\*.received.*" />
    </ItemGroup>
    <Move SourceFiles="@(SnapshotFiles)" DestinationFiles="@(SnapshotFiles->Replace('received', 'verified'))" />
  </Target>
</Project>