Describe the bug
With .Net 8, records show no coverage
Tested with the nightly build too
I read #1561 #1607 #1576
To Reproduce
public sealed record FolderInfoDto
{
public bool IsHidden { get; init; }
public long Creation { get; init; }
}
return new FolderInfoDto
{
Creation = f.Creation,
IsHidden = !string.IsNullOrEmpty(f.Mode) && 'h' == f.Mode[3]
};
internal abstract record BasicFolderDto
{
public string? DfsMappedPath { get; init; }
public string Path { get; init; } = null!;
}
internal sealed record CreateFolderDto : BasicFolderDto;
CreateFolderDto dto = new()
{
Path = args != null && args.TryGetValue("path", out var path) ? (string)path : @"F:\rep1\rep2",
};
internal sealed record DeleteFolderDto : BasicFolderDto
{
public bool Recurse { get; init; }
public bool Force { get; init; }
}
DeleteFolderDto dto = new()
{
Path = @"L:\path\",
};
Expected behavior
FolderInfoDto, CreateFolderDto, DeleteFolderDto, BasicFolderDto are marked as covered.
Actual behavior
They are marked as not covered.
Configuration (please complete the following information):
Please provide more information on your .NET configuration:
* Which coverlet package and version was used? 6.0.1 and nightly
* Which version of .NET is the code running on? 8.0.2
* What OS and version, and what distro if applicable? Windows 11
* What is the architecture (x64, x86, ARM, ARM64)? x64
* Do you know whether it is specific to that configuration? No
Additional context
- Same result from Visual Studio and CLI
- No difference with either
<TargetFramework>net8.0</TargetFramework> or <TargetFramework>net8.0-windows10.0.17763.0</TargetFramework>
- removing
abstract or sealed makes no difference
- SkipAutoProps makes no difference
test.runsettings:
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<RunConfiguration>
<ResultsDirectory>.\TestResults</ResultsDirectory>
<TargetPlatform>x64</TargetPlatform>
<TargetFramework>net8.0</TargetFramework>
</RunConfiguration>
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="XPlat code coverage">
<Configuration>
<Format>cobertura</Format>
<Exclude>[coverlet.*.tests?]*,[*]Coverlet.Core*,[*]xunit*</Exclude>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
</RunSettings>
❗ Please also read Known Issues
Describe the bug
With .Net 8, records show no coverage
Tested with the nightly build too
I read #1561 #1607 #1576
To Reproduce
Expected behavior
FolderInfoDto,CreateFolderDto,DeleteFolderDto,BasicFolderDtoare marked as covered.Actual behavior
They are marked as not covered.
Configuration (please complete the following information):
Please provide more information on your .NET configuration:
* Which coverlet package and version was used? 6.0.1 and nightly
* Which version of .NET is the code running on? 8.0.2
* What OS and version, and what distro if applicable? Windows 11
* What is the architecture (x64, x86, ARM, ARM64)? x64
* Do you know whether it is specific to that configuration? No
Additional context
<TargetFramework>net8.0</TargetFramework>or<TargetFramework>net8.0-windows10.0.17763.0</TargetFramework>abstractorsealedmakes no differencetest.runsettings: