@@ -12,6 +12,7 @@
|
||||
<PackageReference Update="Moq" Version="4.10.1" />
|
||||
<!-- Do not upgrade this version or we won't support old SDK -->
|
||||
<PackageReference Update="Newtonsoft.Json" Version="9.0.1" />
|
||||
<PackageReference Update="ReportGenerator.Core" Version="4.2.15" />
|
||||
<!--
|
||||
Do not change System.Reflection.Metadata version since we need to support VSTest DataCollectors. Goto https://www.nuget.org/packages/System.Reflection.Metadata to check versions.
|
||||
We need to load assembly version 1.4.2.0 to properly work
|
||||
|
||||
@@ -96,6 +96,9 @@ namespace Coverlet.Core.Tests
|
||||
.AssertLinesCovered((11, 1), (15, 0))
|
||||
// (line,ordinal,hits)
|
||||
.AssertBranchesCovered((9, 0, 1), (9, 1, 0));
|
||||
|
||||
// if need to generate html report for debugging purpose
|
||||
// TestInstrumentationHelper.GenerateHtmlReport(result);
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
||||
@@ -3,14 +3,17 @@ using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using Coverlet.Core.Abstracts;
|
||||
using Coverlet.Core.Instrumentation;
|
||||
using Coverlet.Core.Logging;
|
||||
using Coverlet.Core.Reporters;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Moq;
|
||||
using Xunit;
|
||||
using Palmmedia.ReportGenerator.Core;
|
||||
using Xunit.Sdk;
|
||||
|
||||
namespace Coverlet.Core.Tests
|
||||
@@ -107,6 +110,33 @@ namespace Coverlet.Core.Tests
|
||||
|
||||
public static class TestInstrumentationHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// caller sample: TestInstrumentationHelper.GenerateHtmlReport(result, sourceFileFilter: @"+**\Samples\Instrumentation.cs");
|
||||
/// TestInstrumentationHelper.GenerateHtmlReport(result);
|
||||
/// </summary>
|
||||
public static void GenerateHtmlReport(CoverageResult coverageResult, IReporter reporter = null, string sourceFileFilter = "", [CallerMemberName]string directory = "")
|
||||
{
|
||||
reporter ??= new CoberturaReporter();
|
||||
DirectoryInfo dir = Directory.CreateDirectory(directory);
|
||||
dir.Delete(true);
|
||||
dir.Create();
|
||||
string reportFile = Path.Combine(dir.FullName, Path.ChangeExtension("report", reporter.Extension));
|
||||
File.WriteAllText(reportFile, reporter.Report(coverageResult));
|
||||
// i.e. reportgenerator -reports:"C:\git\coverlet\test\coverlet.core.tests\bin\Debug\netcoreapp2.0\Condition_If\report.cobertura.xml" -targetdir:"C:\git\coverlet\test\coverlet.core.tests\bin\Debug\netcoreapp2.0\Condition_If" -filefilters:+**\Samples\Instrumentation.cs
|
||||
new Generator().GenerateReport(new ReportConfiguration(
|
||||
new[] { reportFile },
|
||||
dir.FullName,
|
||||
new string[0],
|
||||
null,
|
||||
new string[0],
|
||||
new string[0],
|
||||
new string[0],
|
||||
new string[0],
|
||||
string.IsNullOrEmpty(sourceFileFilter) ? new string[0] : new[] { sourceFileFilter },
|
||||
null,
|
||||
null));
|
||||
}
|
||||
|
||||
public static CoverageResult GetCoverageResult(string filePath)
|
||||
{
|
||||
using (var result = new FileStream(filePath, FileMode.Open))
|
||||
|
||||
@@ -4,13 +4,14 @@
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||
<IsPackable>false</IsPackable>
|
||||
<LangVersion>latest</LangVersion>
|
||||
<LangVersion>preview</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" />
|
||||
<PackageReference Include="Moq" />
|
||||
<PackageReference Include="ReportGenerator.Core" />
|
||||
<PackageReference Include="xunit" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" />
|
||||
</ItemGroup>
|
||||
|
||||
Reference in New Issue
Block a user