1 <Project Sdk="Microsoft.NET.Sdk">
4 <!-- Needs to be netcoreapp3.1 and not higher so this test assembly can be loaded by dotnet-dump via the DOTNET_DIAGNOSTIC_EXTENSIONS env var -->
5 <TargetFramework>netcoreapp3.1</TargetFramework>
6 <TestConfigFileName>$(OutputPath)$(TargetFramework)\Debugger.Tests.Common.txt</TestConfigFileName>
7 <TestAssetsVersion>1.0.257801</TestAssetsVersion>
8 <!-- Controls the test asset package restore and the tests that use them -->
9 <RunTests>true</RunTests>
13 <PackageReference Include="Microsoft.Diagnostics.Runtime" Version="$(MicrosoftDiagnosticsRuntimeVersion)" />
14 <PackageReference Include="Microsoft.Diagnostics.Runtime.Utilities" Version="$(MicrosoftDiagnosticsRuntimeUtilitiesVersion)" />
18 <ProjectReference Include="$(MSBuildThisFileDirectory)..\..\Microsoft.Diagnostics.DebugServices.Implementation\Microsoft.Diagnostics.DebugServices.Implementation.csproj" />
19 <ProjectReference Include="$(MSBuildThisFileDirectory)..\..\Microsoft.Diagnostics.DebugServices\Microsoft.Diagnostics.DebugServices.csproj" />
20 <ProjectReference Include="$(MSBuildThisFileDirectory)..\..\Microsoft.Diagnostics.TestHelpers\Microsoft.Diagnostics.TestHelpers.csproj" />
21 <ProjectReference Include="$(MSBuildThisFileDirectory)..\..\Microsoft.Diagnostics.Repl\Microsoft.Diagnostics.Repl.csproj" />
22 <ProjectReference Include="$(MSBuildThisFileDirectory)..\..\SOS\SOS.Extensions\SOS.Extensions.csproj" />
25 <ItemGroup Condition="$(RunTests) AND '$(OS)' == 'Windows_NT'">
26 <PackageDownload Include="cdb-sos" Version="[$(cdbsosversion)]" />
27 <PackageDownload Include="TestAssets.Windows.x64.3.1" Version="[$(TestAssetsVersion)]" />
28 <PackageDownload Include="TestAssets.Windows.x64.5.0" Version="[$(TestAssetsVersion)]" />
29 <PackageDownload Include="TestAssets.Windows.x64.6.0" Version="[$(TestAssetsVersion)]" />
30 <PackageDownload Include="TestAssets.Windows.x86.3.1" Version="[$(TestAssetsVersion)]" />
31 <PackageDownload Include="TestAssets.Windows.x86.5.0" Version="[$(TestAssetsVersion)]" />
32 <PackageDownload Include="TestAssets.Windows.x86.6.0" Version="[$(TestAssetsVersion)]" />
35 <ItemGroup Condition="$(RunTests) AND ('$(OS)' == 'Unix' OR '$(OS)' == 'Windows_NT')">
36 <PackageDownload Include="TestAssets.Linux.x64.3.1" Version="[$(TestAssetsVersion)]" />
37 <PackageDownload Include="TestAssets.Linux.x64.5.0" Version="[$(TestAssetsVersion)]" />
38 <PackageDownload Include="TestAssets.Linux.x64.6.0" Version="[$(TestAssetsVersion)]" />
39 <PackageDownload Include="TestAssets.Linux.arm64.3.1" Version="[$(TestAssetsVersion)]" />
40 <PackageDownload Include="TestAssets.Linux.arm64.5.0" Version="[$(TestAssetsVersion)]" />
41 <PackageDownload Include="TestAssets.Linux.arm64.6.0" Version="[$(TestAssetsVersion)]" />
45 <Content Include="$(MSBuildThisFileDirectory)ConfigFiles\Windows\Debugger.Tests.Config.txt" Condition="'$(OS)' == 'Windows_NT'">
46 <Link>Debugger.Tests.Config.txt</Link>
47 <CopyToOutputDirectory>Always</CopyToOutputDirectory>
49 <Content Include="$(MSBuildThisFileDirectory)ConfigFiles\Unix\Debugger.Tests.Config.txt" Condition="$(OS) == 'Unix'">
50 <Link>Debugger.Tests.Config.txt</Link>
51 <CopyToOutputDirectory>Always</CopyToOutputDirectory>
56 Windows test configuration file
58 <ItemGroup Condition="'$(OS)' == 'Windows_NT'">
59 <ConfigFileEntries Include="Windows_NT">
63 <TargetConfiguration>$(Configuration)</TargetConfiguration>
64 <RepoRootDir>$(RepoRoot)</RepoRootDir>
65 <RunTests>$(RunTests)</RunTests>
66 <DbgEngPath>$(NuGetPackageRoot)cdb-sos\$(cdbsosversion)\runtimes\win-%24(TargetArchitecture)\native\dbgeng.dll</DbgEngPath>
68 <Package_TestAssets_Windows_x64_3_1>$(NuGetPackageRoot)testassets.windows.x64.3.1\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x64_3_1>
69 <Package_TestAssets_Windows_x64_5_0>$(NuGetPackageRoot)testassets.windows.x64.5.0\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x64_5_0>
70 <Package_TestAssets_Windows_x64_6_0>$(NuGetPackageRoot)testassets.windows.x64.6.0\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x64_6_0>
72 <Package_TestAssets_Windows_x86_3_1>$(NuGetPackageRoot)testassets.windows.x86.3.1\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x86_3_1>
73 <Package_TestAssets_Windows_x86_5_0>$(NuGetPackageRoot)testassets.windows.x86.5.0\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x86_5_0>
74 <Package_TestAssets_Windows_x86_6_0>$(NuGetPackageRoot)testassets.windows.x86.6.0\$(TestAssetsVersion)\content</Package_TestAssets_Windows_x86_6_0>
76 <Package_TestAssets_Linux_x64_3_1>$(NuGetPackageRoot)testassets.linux.x64.3.1\$(TestAssetsVersion)\content</Package_TestAssets_Linux_x64_3_1>
77 <Package_TestAssets_Linux_x64_5_0>$(NuGetPackageRoot)testassets.linux.x64.5.0\$(TestAssetsVersion)\content</Package_TestAssets_Linux_x64_5_0>
78 <Package_TestAssets_Linux_x64_6_0>$(NuGetPackageRoot)testassets.linux.x64.6.0\$(TestAssetsVersion)\content</Package_TestAssets_Linux_x64_6_0>
80 <Package_TestAssets_Linux_arm64_3_1>$(NuGetPackageRoot)testassets.linux.arm64.3.1\$(TestAssetsVersion)\content</Package_TestAssets_Linux_arm64_3_1>
81 <Package_TestAssets_Linux_arm64_5_0>$(NuGetPackageRoot)testassets.linux.arm64.5.0\$(TestAssetsVersion)\content</Package_TestAssets_Linux_arm64_5_0>
82 <Package_TestAssets_Linux_arm64_6_0>$(NuGetPackageRoot)testassets.linux.arm64.6.0\$(TestAssetsVersion)\content</Package_TestAssets_Linux_arm64_6_0>
90 Linux/MacOS test configuration file
92 <ItemGroup Condition="'$(OS)' == 'Unix'">
93 <ConfigFileEntries Include="Unix">
97 <TargetConfiguration>$(Configuration)</TargetConfiguration>
98 <RepoRootDir>$(RepoRoot)</RepoRootDir>
99 <RunTests>$(RunTests)</RunTests>
101 <Package_TestAssets_Linux_x64_3_1>$(NuGetPackageRoot)testassets.linux.x64.3.1/$(TestAssetsVersion)/content</Package_TestAssets_Linux_x64_3_1>
102 <Package_TestAssets_Linux_x64_5_0>$(NuGetPackageRoot)testassets.linux.x64.5.0/$(TestAssetsVersion)/content</Package_TestAssets_Linux_x64_5_0>
103 <Package_TestAssets_Linux_x64_6_0>$(NuGetPackageRoot)testassets.linux.x64.6.0/$(TestAssetsVersion)/content</Package_TestAssets_Linux_x64_6_0>
105 <Package_TestAssets_Linux_arm64_3_1>$(NuGetPackageRoot)testassets.linux.arm64.3.1/$(TestAssetsVersion)/content</Package_TestAssets_Linux_arm64_3_1>
106 <Package_TestAssets_Linux_arm64_5_0>$(NuGetPackageRoot)testassets.linux.arm64.5.0/$(TestAssetsVersion)/content</Package_TestAssets_Linux_arm64_5_0>
107 <Package_TestAssets_Linux_arm64_6_0>$(NuGetPackageRoot)testassets.linux.arm64.6.0/$(TestAssetsVersion)/content</Package_TestAssets_Linux_arm64_6_0>
114 <Target Name="WriteTestConfigFile" Outputs="$(TestConfigFileName)" AfterTargets="Build">
116 <TestConfigFileLines>@(ConfigFileEntries->Metadata("ConfigFileEntry"))</TestConfigFileLines>
118 <WriteLinesToFile File="$(TestConfigFileName)" Lines="$(TestConfigFileLines)" Overwrite="true" WriteOnlyWhenDifferent="true" />
119 <Message Importance="High" Text="Created config file $(TestConfigFileName)" />
121 <FileWrites Include="$(TestConfigFileName)" />