Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e106d0d

Browse files
authored
Relocate tests using Tmds.ExecFunction to new test project coverlet.core.coverage.tests (#1709)
* update versions and resolve warnings RetryHelper for specific exceptions * remove Tmds.ExecFunction package from coverlet.core.tests * add coverlet.core.coverage.tests * use .NET 6.0 assemblies * fix some unit tests * simplify collection intialization * fix test AsyncForeach * Disable again test AsyncAwait_Issue_669_2 * remove coverlet.core transitive dependencies * Delete test/coverlet.core.coverage.tests/out.txt * Delete test/coverlet.core.coverage.tests/public.snk * Delete test/coverlet.core.coverage.tests/key.publickey * fix unresponsive Test Explorer problem (RetryHelper.Do AggregateException) - Changed task in `publish-coverage-results.yml` from `PublishCodeCoverageResults@1` to `PublishCodeCoverageResults@2` and added `reportDirectory` parameter for coverage report location. - Added overloaded `BackupOriginalModule` methods in `InstrumentationHelper.cs` to improve backup flexibility, including a new `withBackupList` parameter. - Updated `InstrumentationHelperTests.cs` to align tests with the new method signature for backing up original modules. * Add CoverageMergeTests for CoverageResult merging Introduced a new test class `CoverageMergeTests` in the `Coverlet.Core.Tests` namespace. This class includes multiple unit tests for the `Merge` method of the `CoverageResult` class, validating the merging of modules, documents, classes, methods, lines, and branches to ensure data integrity and correct functionality. * Added tests in `CoverageTests.cs` to verify `GetSourceLinkUrl` behavior for matching and non-matching documents. * Minimum line coverage 90% * revert RetryHelper update
1 parent 2a6f949 commit e106d0d

File tree

98 files changed

+3884
-2456
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+3884
-2456
lines changed

‎.config/dotnet-tools.json‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33
"isRoot": true,
44
"tools": {
55
"dotnet-reportgenerator-globaltool": {
6-
"version": "5.2.1",
6+
"version": "5.4.3",
77
"commands": [
88
"reportgenerator"
9-
]
9+
],
10+
"rollForward": false
1011
}
1112
}
12-
}
13+
}

‎.gitignore‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,3 +316,5 @@ coverage.*.opencover.xml
316316

317317
FolderProfile.pubxml
318318
/NuGet.config
319+
nuget.config
320+
*.dmp

‎Directory.Build.props‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
1212
<!-- Build properties -->
1313
<MSBuildTreatWarningsAsErrors>true</MSBuildTreatWarningsAsErrors>
14-
<AnalysisLevel>preview</AnalysisLevel>
14+
<AnalysisLevel>latest</AnalysisLevel>
1515
<CodeAnalysisTreatWarningsAsErrors>false</CodeAnalysisTreatWarningsAsErrors>
1616
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
17-
<LangVersion>preview</LangVersion>
17+
<LangVersion>12.0</LangVersion>
1818
<NoWarn>$(NoWarn);NU1507;NU5105;CS1591</NoWarn>
1919
<GenerateDocumentationFile>true</GenerateDocumentationFile>
2020
<RestoreSources>

‎Directory.Packages.props‎

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,22 @@
55
</PropertyGroup>
66
<ItemGroup>
77
<GlobalPackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
8-
<GlobalPackageReference Include="Nerdbank.GitVersioning" Version="3.6.146" />
8+
<GlobalPackageReference Include="Nerdbank.GitVersioning" Version="3.7.112" />
99
</ItemGroup>
1010
<ItemGroup>
11+
<PackageVersion Include="DotNetConfig" Version="1.2.0" />
1112
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="8.0.0" />
12-
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="17.8.3" />
13-
<PackageVersion Include="Microsoft.Build.Framework" Version="17.8.3" />
13+
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="17.12.6" />
14+
<PackageVersion Include="Microsoft.Build.Framework" Version="17.12.6" />
1415
<PackageVersion Include="Microsoft.Build.Locator" Version="1.7.8" />
15-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.8.0" />
16+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.12.0" />
1617
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="8.0.2" />
1718
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
1819
<PackageVersion Include="Microsoft.Extensions.FileSystemGlobbing" Version="8.0.0" />
1920
<!--For test TestInstrument_NetstandardAwareAssemblyResolver_PreserveCompilationContext-->
2021
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.2" />
21-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
22-
<PackageVersion Include="Microsoft.TestPlatform.ObjectModel" Version="17.8.0" />
22+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
23+
<PackageVersion Include="Microsoft.TestPlatform.ObjectModel" Version="17.12.0" />
2324
<!-- Microsoft.TestPlatform.ObjectModel has a dependency to NuGet.Frameworks with specific version -->
2425
<!-- https://github.com/microsoft/vstest/blob/9a0c41811637edf4afe0e265e08fdd1cb18109ed/src/Microsoft.TestPlatform.ObjectModel/Microsoft.TestPlatform.ObjectModel.csproj#L35-->
2526
<!-- wrong configuration will create "build\coverlet.msbuild.targets(72,5): error : Unable to read beyond the end of the stream." -->
@@ -30,27 +31,28 @@
3031
NuGetFrameworksVersion is defined here https://github.com/microsoft/vstest/blob/9a0c41811637edf4afe0e265e08fdd1cb18109ed/eng/Versions.props#L94C1-L94C1
3132
-->
3233
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
33-
<PackageVersion Include="NuGet.Frameworks" Version="6.8.0" />
34-
<PackageVersion Include="NuGet.Packaging" Version="6.8.0" />
35-
<PackageVersion Include="NuGet.Versioning" Version="6.8.0" />
34+
<PackageVersion Include="NuGet.Frameworks" Version="6.12.1" />
35+
<PackageVersion Include="NuGet.Packaging" Version="6.12.1" />
36+
<PackageVersion Include="NuGet.Versioning" Version="6.12.1" />
3637
<PackageVersion Include="Mono.Cecil" Version="0.11.6" />
37-
<PackageVersion Include="Moq" Version="4.20.70" />
38-
<PackageVersion Include="ReportGenerator.Core" Version="5.2.1" />
38+
<PackageVersion Include="Moq" Version="4.20.72" />
39+
<PackageVersion Include="ReportGenerator.Core" Version="5.3.11" />
3940
<!--For test issue 809 https://github.com/coverlet-coverage/coverlet/issues/809-->
40-
<PackageVersion Include="LinqKit.Microsoft.EntityFrameworkCore" Version="7.1.4" />
41+
<PackageVersion Include="LinqKit.Microsoft.EntityFrameworkCore" Version="8.1.7" />
4142
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
4243
<!--To test issue 1104 https://github.com/coverlet-coverage/coverlet/issues/1104-->
4344
<PackageVersion Include="System.Collections.Immutable" Version="8.0.0" />
4445
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="8.0.0" />
4546
<PackageVersion Include="System.Linq.Async" Version="6.0.1" />
46-
<PackageVersion Include="System.Reflection.Metadata" Version="8.0.0" />
47+
<PackageVersion Include="System.Reflection.Metadata" Version="8.0.1" />
48+
<PackageVersion Include="System.Threading.Tasks.Extensions" Version="4.6.0" />
4749
<PackageVersion Include="Tmds.ExecFunction" Version="0.8.0" />
48-
<PackageVersion Include="xunit" Version="2.6.6" />
50+
<PackageVersion Include="xunit" Version="2.9.2" />
4951
<PackageVersion Include="xunit.assemblyfixture" Version="2.2.0" />
50-
<PackageVersion Include="xunit.assert" Version="2.6.6" />
51-
<PackageVersion Include="xunit.runner.visualstudio" Version="2.5.6" />
52-
<PackageVersion Include="System.Buffers" Version="4.5.1" />
53-
<PackageVersion Include="System.Memory" Version="4.5.5" />
52+
<PackageVersion Include="xunit.assert" Version="2.9.2" />
53+
<PackageVersion Include="xunit.runner.visualstudio" Version="2.8.2" />
54+
<PackageVersion Include="System.Buffers" Version="4.6.0" />
55+
<PackageVersion Include="System.Memory" Version="4.6.0" />
5456
<PackageVersion Include="System.Net.Http" Version="4.3.4" />
5557
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="6.0.5" />
5658
<PackageVersion Include="System.Text.Encoding.CodePages" Version="8.0.0" />

‎coverlet.sln‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "coverlet.tests.utils", "tes
9090
EndProject
9191
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "coverlet.tests.projectsample.wpf8.selfcontained", "test\coverlet.tests.projectsample.wpf8.selfcontained\coverlet.tests.projectsample.wpf8.selfcontained.csproj", "{71004336-9896-4AE5-8367-B29BB1680542}"
9292
EndProject
93+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "coverlet.core.coverage.tests", "test\coverlet.core.coverage.tests\coverlet.core.coverage.tests.csproj", "{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB}"
94+
EndProject
9395
Global
9496
GlobalSection(SolutionConfigurationPlatforms) = preSolution
9597
Debug|Any CPU = Debug|Any CPU
@@ -196,6 +198,10 @@ Global
196198
{71004336-9896-4AE5-8367-B29BB1680542}.Debug|Any CPU.Build.0 = Debug|Any CPU
197199
{71004336-9896-4AE5-8367-B29BB1680542}.Release|Any CPU.ActiveCfg = Release|Any CPU
198200
{71004336-9896-4AE5-8367-B29BB1680542}.Release|Any CPU.Build.0 = Release|Any CPU
201+
{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
202+
{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB}.Debug|Any CPU.Build.0 = Debug|Any CPU
203+
{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB}.Release|Any CPU.ActiveCfg = Release|Any CPU
204+
{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB}.Release|Any CPU.Build.0 = Release|Any CPU
199205
EndGlobalSection
200206
GlobalSection(SolutionProperties) = preSolution
201207
HideSolutionNode = FALSE
@@ -227,6 +233,7 @@ Global
227233
{03400776-1F9A-4326-B927-1CA9B64B42A1} = {2FEBDE1B-83E3-445B-B9F8-5644B0E0E134}
228234
{0B109210-03CB-413F-888C-3023994AA384} = {2FEBDE1B-83E3-445B-B9F8-5644B0E0E134}
229235
{71004336-9896-4AE5-8367-B29BB1680542} = {2FEBDE1B-83E3-445B-B9F8-5644B0E0E134}
236+
{F74AD549-EFE0-4CD9-AD10-B2189E3FD5BB} = {2FEBDE1B-83E3-445B-B9F8-5644B0E0E134}
230237
EndGlobalSection
231238
GlobalSection(ExtensibilityGlobals) = postSolution
232239
SolutionGuid = {9CA57C02-97B0-4C38-A027-EA61E8741F10}

‎eng/azure-pipelines-nightly.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ steps:
1010
- task: UseDotNet@2
1111
inputs:
1212
useGlobalJson: true
13-
displayName: Install .NET Core SDK 8.0.111
13+
displayName: Install .NET Core SDK 8.0.112
1414

1515
- task: NuGetAuthenticate@1
1616
displayName: Authenticate with NuGet feeds

‎eng/build.yml‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ steps:
77
- task: UseDotNet@2
88
inputs:
99
useGlobalJson: true
10-
displayName: Install .NET Core SDK 8.0.111
10+
displayName: Install .NET Core SDK 8.0.112
1111

1212
# create artifact/package folder
1313
- pwsh: |
@@ -27,6 +27,7 @@ steps:
2727
- script: |
2828
dotnet test test/coverlet.collector.tests/coverlet.collector.tests.csproj -c $(BuildConfiguration) --no-build -bl:test.collector.binlog --results-directory:"$(Build.SourcesDirectory)\artifacts\Reports" /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Exclude="[coverlet.core.tests.samples.netstandard]*%2c[coverlet.tests.xunit.extensions]*%2c[coverlet.tests.projectsample]*%2c[testgen_]*" /p:ExcludeByAttribute="GeneratedCodeAttribute" --diag:"$(Build.SourcesDirectory)\artifacts\log\$(buildConfiguration)\coverlet.collector.test.diag.log;tracelevel=verbose"
2929
dotnet test test/coverlet.core.tests/coverlet.core.tests.csproj -c $(BuildConfiguration) --no-build -bl:test.core.binlog --results-directory:"$(Build.SourcesDirectory)\artifacts\Reports" /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Exclude="[coverlet.core.tests.samples.netstandard]*%2c[coverlet.tests.xunit.extensions]*%2c[coverlet.tests.projectsample]*%2c[testgen_]*" /p:ExcludeByAttribute="GeneratedCodeAttribute" --diag:"$(Build.SourcesDirectory)\artifacts\log\$(buildConfiguration)\coverlet.core.test.diag.log;tracelevel=verbose"
30+
dotnet test test/coverlet.core.coverage.tests/coverlet.core.coverage.tests.csproj -c $(BuildConfiguration) --no-build -bl:test.core.coverage.binlog --results-directory:"$(Build.SourcesDirectory)\artifacts\Reports" /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Exclude="[coverlet.core.tests.samples.netstandard]*%2c[coverlet.tests.xunit.extensions]*%2c[coverlet.tests.projectsample]*%2c[testgen_]*" /p:ExcludeByAttribute="GeneratedCodeAttribute" --diag:"$(Build.SourcesDirectory)\artifacts\log\$(buildConfiguration)\coverlet.core.coverage.test.diag.log;tracelevel=verbose"
3031
dotnet test test/coverlet.msbuild.tasks.tests/coverlet.msbuild.tasks.tests.csproj -c $(BuildConfiguration) --no-build -bl:test.msbuild.binlog --results-directory:"$(Build.SourcesDirectory)\artifacts\Reports" /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Exclude="[coverlet.core.tests.samples.netstandard]*%2c[coverlet.tests.xunit.extensions]*%2c[coverlet.tests.projectsample]*%2c[testgen_]*" /p:ExcludeByAttribute="GeneratedCodeAttribute" --diag:"$(Build.SourcesDirectory)\artifacts\log\$(buildConfiguration)\coverlet.msbuild.test.diag.log;tracelevel=verbose"
3132
dotnet test test/coverlet.integration.tests/coverlet.integration.tests.csproj -c $(BuildConfiguration) --no-build -bl:test.integration.binlog --results-directory:"$(Build.SourcesDirectory)\artifacts\Reports" --diag:"$(Build.SourcesDirectory)\artifacts\log\$(buildConfiguration)\coverlet.integration.test.diag.log;tracelevel=verbose"
3233
displayName: Run unit tests with coverage
@@ -40,13 +41,14 @@ steps:
4041
mergeTestResults: false
4142
publishRunAttachments: true
4243
failTaskOnFailedTests: true
44+
testRunTitle: $(Agent.OS)_$(BuildConfiguration)
4345
condition: succeededOrFailed()
4446

4547
- template: publish-coverlet-result-files.yml
4648

4749
- template: publish-coverage-results.yml
4850
parameters:
4951
reports: $(Build.SourcesDirectory)\**\*.opencover.xml
50-
condition: and(succeeded(), eq(variables['BuildConfiguration'], 'Debug'), eq(variables['agent.os'], 'Windows_NT'))
52+
condition: and(succeededORFailed(), eq(variables['BuildConfiguration'], 'Debug'), eq(variables['agent.os'], 'Windows_NT'))
5153
assemblyfilters: '-xunit;-coverlet.testsubject;-Coverlet.Tests.ProjectSample.*;-coverlet.core.tests.samples.netstandard;-coverlet.tests.xunit.extensions;-coverletsamplelib.integration.template;-coverlet.tests.utils'
5254

‎eng/publish-coverage-results.yml‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ parameters:
77
assemblyfilters: '-xunit*'
88
classfilters: ''
99
breakBuild: false
10-
minimumLineCoverage: 75
10+
minimumLineCoverage: 90
1111

1212
steps:
1313
- task: Powershell@2
@@ -26,10 +26,11 @@ steps:
2626
artifact: CoverageResults_$(Agent.Os)_$(BuildConfiguration)
2727
condition: ${{parameters.condition}}
2828

29-
- task: PublishCodeCoverageResults@2
29+
- task: PublishCodeCoverageResults@1
3030
displayName: 'Publish code coverage'
3131
condition: ${{parameters.condition}}
3232
inputs:
3333
codeCoverageTool: Cobertura
3434
summaryFileLocation: '$(Build.SourcesDirectory)/artifacts/CoverageReport/Cobertura.xml'
35+
reportDirectory: '$(Build.SourcesDirectory)/artifacts/CoverageReport'
3536
failIfCoverageEmpty: ${{parameters.breakBuild}}

‎global.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"sdk": {
3-
"version": "8.0.111"
3+
"version": "8.0.112"
44
}
55
}

‎src/coverlet.collector/coverlet.collector.csproj‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@
4040
<ItemGroup>
4141
<PackageReference Include="Microsoft.TestPlatform.ObjectModel" />
4242
<PackageReference Include="NuGet.Frameworks" />
43+
<PackageReference Include="System.Buffers" />
44+
<PackageReference Include="System.Memory" />
45+
<PackageReference Include="System.Threading.Tasks.Extensions" />
4346
</ItemGroup>
4447

4548
<ItemGroup>
@@ -54,7 +57,7 @@
5457
</ItemGroup>
5558

5659
<ItemGroup>
57-
<None Include="build\coverlet.collector.targets">
60+
<None Include="build\coverlet.collector.targets">
5861
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
5962
</None>
6063
</ItemGroup>

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /