Skip to content

Commit c94cb89

Browse files
authored
Revert "Revert "Update to MTP"" (#990)
1 parent a559bfb commit c94cb89

File tree

8 files changed

+42
-82
lines changed

8 files changed

+42
-82
lines changed

.github/dependabot.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ updates:
1717
patterns:
1818
- "xunit.*"
1919
- "Microsoft.NET.Test.Sdk"
20+
- "Microsoft.Testing.*"
2021
- "coverlet.*"
2122
- "GitHubActionsTestLogger"
2223
- "Moq"

Directory.Build.props

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
</PropertyGroup>
1212

1313
<PropertyGroup>
14+
<!-- This works around issues with dotnet test which are fixed in https://github.com/dotnet/sdk/pull/51794 -->
15+
<!-- It can be safely removed once .NET SDK 10.0.101 is out and is used in the repo -->
16+
<Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
17+
1418
<RepoRoot>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)'))</RepoRoot>
1519
<ArtifactsDir Condition="'$(ArtifactsDir)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts'))</ArtifactsDir>
1620
<ArtifactsObjDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'obj'))</ArtifactsObjDir>
@@ -29,8 +33,9 @@
2933
</PropertyGroup>
3034

3135
<PropertyGroup>
32-
<VSTestLogger Condition="'$(VSTestLogger)' == ''">trx%3bLogFileName=$(MSBuildProjectName).$(TargetFramework).$(OS).trx</VSTestLogger>
33-
<VSTestResultsDirectory Condition="'$(VSTestResultsDirectory)' == ''">$(ArtifactsTestResultsDir)</VSTestResultsDirectory>
36+
<UseMicrosoftTestingPlatformRunner>true</UseMicrosoftTestingPlatformRunner>
37+
<_MTPResultsDirectory>$(ArtifactsTestResultsDir)</_MTPResultsDirectory>
38+
<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --results-directory $(_MTPResultsDirectory) --report-trx --report-trx-filename $(MSBuildProjectName).$(TargetFramework).$(OS).trx</TestingPlatformCommandLineArguments>
3439
</PropertyGroup>
3540

3641
<PropertyGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">

Directory.Packages.props

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
<System8Version>8.0.22</System8Version>
55
<System9Version>9.0.11</System9Version>
66
<System10Version>10.0.0</System10Version>
7+
<MicrosoftTestingPlatformVersion>2.0.2</MicrosoftTestingPlatformVersion>
78
</PropertyGroup>
89

910
<!-- Product dependencies shared -->
@@ -60,19 +61,17 @@
6061
<!-- Testing dependencies -->
6162
<ItemGroup>
6263
<PackageVersion Include="Anthropic.SDK" Version="5.8.0" />
63-
<PackageVersion Include="coverlet.collector" Version="6.0.4">
64-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
65-
<PrivateAssets>all</PrivateAssets>
66-
</PackageVersion>
67-
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
64+
<PackageVersion Include="Microsoft.Testing.Extensions.CodeCoverage" Version="18.1.0" />
65+
<PackageVersion Include="Microsoft.Testing.Extensions.HangDump" Version="$(MicrosoftTestingPlatformVersion)" />
66+
<PackageVersion Include="Microsoft.Testing.Extensions.CrashDump" Version="$(MicrosoftTestingPlatformVersion)" />
67+
<PackageVersion Include="Microsoft.Testing.Extensions.TrxReport" Version="$(MicrosoftTestingPlatformVersion)" />
6868
<PackageVersion Include="Microsoft.Extensions.AI.OpenAI" Version="10.0.0-preview.1.25559.3" />
6969
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="$(System10Version)" />
7070
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="$(System10Version)" />
7171
<PackageVersion Include="Microsoft.Extensions.Logging" Version="$(System10Version)" />
7272
<PackageVersion Include="Microsoft.Extensions.Logging.Console" Version="$(System10Version)" />
7373
<PackageVersion Include="Microsoft.Extensions.Options" Version="$(System10Version)" />
7474
<PackageVersion Include="Microsoft.Extensions.TimeProvider.Testing" Version="$(System10Version)" />
75-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
7675
<PackageVersion Include="Moq" Version="4.20.72" />
7776
<PackageVersion Include="OpenTelemetry" Version="1.14.0" />
7877
<PackageVersion Include="OpenTelemetry.Exporter.InMemory" Version="1.14.0" />
@@ -87,8 +86,7 @@
8786
<PackageVersion Include="Serilog.Sinks.File" Version="7.0.0" />
8887
<PackageVersion Include="Serilog" Version="4.3.0" />
8988
<PackageVersion Include="System.Linq.AsyncEnumerable" Version="$(System10Version)" />
90-
<PackageVersion Include="xunit.v3" Version="3.2.0" />
91-
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5" />
89+
<PackageVersion Include="xunit.v3.mtp-v2" Version="3.2.0" />
9290
<PackageVersion Include="System.Net.Http" Version="4.3.4" />
9391
<PackageVersion Include="JsonSchema.Net" Version="7.4.0" />
9492
</ItemGroup>

Makefile

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,15 @@ build: restore
1818
test: build
1919
dotnet test \
2020
--no-build \
21+
--no-progress \
2122
--configuration $(CONFIGURATION) \
22-
--filter '(Execution!=Manual)' \
23-
--blame \
24-
--blame-crash \
25-
--blame-hang-timeout 7m \
26-
--diag "$(ARTIFACT_PATH)/diag.txt" \
27-
--logger "trx" \
28-
--logger "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true" \
29-
--collect "XPlat Code Coverage" \
30-
--results-directory $(ARTIFACT_PATH)/testresults \
31-
-- \
32-
RunConfiguration.CollectSourceInformation=true
23+
--filter-not-trait 'Execution=Manual' \
24+
--crashdump \
25+
--hangdump \
26+
--hangdump-timeout 7m \
27+
--coverage \
28+
--coverage-output-format cobertura \
29+
-p:_MTPResultsDirectory=$(ARTIFACT_PATH)/testresults \
3330

3431
pack: restore
3532
dotnet pack --no-restore --configuration $(CONFIGURATION)

global.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,8 @@
22
"sdk": {
33
"version": "10.0.100",
44
"rollForward": "minor"
5+
},
6+
"test": {
7+
"runner": "Microsoft.Testing.Platform"
58
}
69
}

tests/ModelContextProtocol.Analyzers.Tests/ModelContextProtocol.Analyzers.Tests.csproj

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,20 @@
33
<PropertyGroup>
44
<TargetFramework>net9.0</TargetFramework>
55
<ImplicitUsings>enable</ImplicitUsings>
6-
<IsTestProject>true</IsTestProject>
6+
<OutputType>Exe</OutputType>
77
</PropertyGroup>
88

99
<ItemGroup>
10-
<PackageReference Include="coverlet.collector">
11-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
12-
<PrivateAssets>all</PrivateAssets>
13-
</PackageReference>
14-
<PackageReference Include="GitHubActionsTestLogger">
15-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
16-
<PrivateAssets>all</PrivateAssets>
17-
</PackageReference>
10+
<PackageReference Include="Microsoft.Testing.Extensions.CodeCoverage" />
11+
<PackageReference Include="Microsoft.Testing.Extensions.HangDump" />
12+
<PackageReference Include="Microsoft.Testing.Extensions.CrashDump" />
13+
<PackageReference Include="Microsoft.Testing.Extensions.TrxReport" />
1814
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" />
1915
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers">
2016
<PrivateAssets>all</PrivateAssets>
2117
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2218
</PackageReference>
23-
<PackageReference Include="Microsoft.NET.Test.Sdk" />
24-
<PackageReference Include="xunit.v3" />
25-
<PackageReference Include="xunit.runner.visualstudio">
26-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
27-
<PrivateAssets>all</PrivateAssets>
28-
</PackageReference>
19+
<PackageReference Include="xunit.v3.mtp-v2" />
2920
</ItemGroup>
3021

3122
<ItemGroup>

tests/ModelContextProtocol.AspNetCore.Tests/ModelContextProtocol.AspNetCore.Tests.csproj

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
7-
<IsPackable>false</IsPackable>
8-
<IsTestProject>true</IsTestProject>
7+
<OutputType>Exe</OutputType>
98
<RootNamespace>ModelContextProtocol.AspNetCore.Tests</RootNamespace>
109
</PropertyGroup>
1110

@@ -14,41 +13,25 @@
1413
<JsonSerializerIsReflectionEnabledByDefault>false</JsonSerializerIsReflectionEnabledByDefault>
1514
</PropertyGroup>
1615

17-
<PropertyGroup>
18-
<!-- Without this, tests are currently not showing results until all tests complete
19-
https://xunit.net/docs/getting-started/v3/microsoft-testing-platform
20-
-->
21-
<DisableTestingPlatformServerCapability>true</DisableTestingPlatformServerCapability>
22-
</PropertyGroup>
23-
2416
<ItemGroup>
2517
<Compile Include="..\Common\**\*.cs" />
2618
</ItemGroup>
2719

2820
<ItemGroup>
29-
<PackageReference Include="coverlet.collector">
30-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
31-
<PrivateAssets>all</PrivateAssets>
32-
</PackageReference>
33-
<PackageReference Include="GitHubActionsTestLogger">
34-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
35-
<PrivateAssets>all</PrivateAssets>
36-
</PackageReference>
21+
<PackageReference Include="Microsoft.Testing.Extensions.CodeCoverage" />
22+
<PackageReference Include="Microsoft.Testing.Extensions.HangDump" />
23+
<PackageReference Include="Microsoft.Testing.Extensions.CrashDump" />
24+
<PackageReference Include="Microsoft.Testing.Extensions.TrxReport" />
3725
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" />
3826
<PackageReference Include="Microsoft.Extensions.AI" />
3927
<PackageReference Include="Microsoft.Extensions.AI.OpenAI" />
4028
<PackageReference Include="Microsoft.Extensions.Logging" />
4129
<PackageReference Include="Microsoft.Extensions.Logging.Console" />
4230
<PackageReference Include="Microsoft.Extensions.TimeProvider.Testing" />
43-
<PackageReference Include="Microsoft.NET.Test.Sdk" />
4431
<PackageReference Include="Moq" />
4532
<PackageReference Include="OpenTelemetry" />
4633
<PackageReference Include="OpenTelemetry.Exporter.InMemory" />
47-
<PackageReference Include="xunit.v3" />
48-
<PackageReference Include="xunit.runner.visualstudio">
49-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
50-
<PrivateAssets>all</PrivateAssets>
51-
</PackageReference>
34+
<PackageReference Include="xunit.v3.mtp-v2" />
5235
</ItemGroup>
5336

5437
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net10.0'))">

tests/ModelContextProtocol.Tests/ModelContextProtocol.Tests.csproj

Lines changed: 5 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66
<ImplicitUsings>enable</ImplicitUsings>
77
<Nullable>enable</Nullable>
88

9-
<IsPackable>false</IsPackable>
10-
<IsTestProject>true</IsTestProject>
119
<RootNamespace>ModelContextProtocol.Tests</RootNamespace>
1210
<!-- https://github.com/dotnet/sdk/issues/51060 -->
1311
<NoWarn>$(NoWarn);NU1903;NU1902</NoWarn>
@@ -18,13 +16,6 @@
1816
<JsonSerializerIsReflectionEnabledByDefault>false</JsonSerializerIsReflectionEnabledByDefault>
1917
</PropertyGroup>
2018

21-
<PropertyGroup>
22-
<!-- Without this, tests are currently not showing results until all tests complete
23-
https://xunit.net/docs/getting-started/v3/microsoft-testing-platform
24-
-->
25-
<DisableTestingPlatformServerCapability>true</DisableTestingPlatformServerCapability>
26-
</PropertyGroup>
27-
2819
<ItemGroup>
2920
<Compile Include="..\Common\**\*.cs" />
3021
</ItemGroup>
@@ -35,29 +26,20 @@
3526
</ItemGroup>
3627

3728
<ItemGroup>
38-
<PackageReference Include="coverlet.collector">
39-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
40-
<PrivateAssets>all</PrivateAssets>
41-
</PackageReference>
42-
<PackageReference Include="GitHubActionsTestLogger">
43-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
44-
<PrivateAssets>all</PrivateAssets>
45-
</PackageReference>
29+
<PackageReference Include="Microsoft.Testing.Extensions.CodeCoverage" />
30+
<PackageReference Include="Microsoft.Testing.Extensions.HangDump" />
31+
<PackageReference Include="Microsoft.Testing.Extensions.CrashDump" />
32+
<PackageReference Include="Microsoft.Testing.Extensions.TrxReport" />
4633
<PackageReference Include="Microsoft.Extensions.AI" />
4734
<PackageReference Include="Microsoft.Extensions.AI.OpenAI" />
4835
<PackageReference Include="Microsoft.Extensions.Logging" />
4936
<PackageReference Include="Microsoft.Extensions.Logging.Console" />
50-
<PackageReference Include="Microsoft.NET.Test.Sdk" />
5137
<PackageReference Include="Moq" />
5238
<PackageReference Include="OpenTelemetry" />
5339
<PackageReference Include="OpenTelemetry.Exporter.InMemory" />
5440
<PackageReference Include="Serilog" />
5541
<PackageReference Include="JsonSchema.Net" />
56-
<PackageReference Include="xunit.v3" />
57-
<PackageReference Include="xunit.runner.visualstudio">
58-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
59-
<PrivateAssets>all</PrivateAssets>
60-
</PackageReference>
42+
<PackageReference Include="xunit.v3.mtp-v2" />
6143
</ItemGroup>
6244

6345
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net10.0'))">

0 commit comments

Comments
 (0)