Skip to content

Commit 608cfc4

Browse files
Clean up after merge
1 parent b7f5f32 commit 608cfc4

File tree

5 files changed

+43
-17
lines changed

5 files changed

+43
-17
lines changed

SharedProject/Core/FCCEngine.cs

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ internal class FCCEngine : IFCCEngine,IDisposable
2828

2929
public string AppDataFolderPath { get; private set; }
3030
public List<CoverageLine> CoverageLines { get; internal set; }
31+
private bool IsVsShutdown => disposeAwareTaskRunner.DisposalToken.IsCancellationRequested;
3132
public string SolutionPath { get; set; }
3233

3334

@@ -48,7 +49,7 @@ internal class FCCEngine : IFCCEngine,IDisposable
4849
#pragma warning restore IDE0052 // Remove unread private members
4950
private readonly IEventAggregator eventAggregator;
5051
private readonly IDisposeAwareTaskRunner disposeAwareTaskRunner;
51-
52+
private readonly IAppOptionsProvider appOptionsProvider;
5253
private bool disposed = false;
5354

5455
[ImportingConstructor]
@@ -73,6 +74,7 @@ IDisposeAwareTaskRunner disposeAwareTaskRunner
7374
this.eventAggregator = eventAggregator;
7475
this.disposeAwareTaskRunner = disposeAwareTaskRunner;
7576
solutionEvents.AfterClosing += (s,args) => ClearOutputWindow(false);
77+
this.appOptionsProvider = appOptionsProvider;
7678
appOptionsProvider.OptionsChanged += (appOptions) =>
7779
{
7880
if (!appOptions.Enabled)
@@ -89,7 +91,6 @@ IDisposeAwareTaskRunner disposeAwareTaskRunner
8991
this.appDataFolder = appDataFolder;
9092
this.serviceProvider = serviceProvider;
9193
this.msCodeCoverageRunSettingsService = msCodeCoverageRunSettingsService;
92-
colorThemeService = serviceProvider.GetService(typeof(SVsColorThemeService));
9394
}
9495

9596
internal string GetLogReloadCoverageStatusMessage(ReloadCoverageStatus reloadCoverageStatus)
@@ -328,15 +329,25 @@ public void ReloadCoverage(Func<System.Threading.Tasks.Task<List<ICoverageProjec
328329
coverageOutputManager.SetProjectCoverageOutputFolder(coverageProjects);
329330
var reportOutputFolder = coverageOutputManager.GetReportOutputFolder();
330331

331-
var coverOutputFiles = await RunCoverageAsync(coverageProjects, cancellationToken);
332-
333-
if (coverOutputFiles.Any())
332+
var settings = appOptionsProvider.Get();
333+
if (!settings.MsCodeCoverage)
334334
{
335-
var (lines, report) = await RunAndProcessReportAsync(coverOutputFiles, reportOutputFolder, cancellationToken);
336-
coverageLines = lines;
337-
reportHtml = report;
335+
var coverOutputFiles = await RunCoverageAsync(coverageProjects, cancellationToken);
336+
if (coverOutputFiles.Any())
337+
{
338+
(coverageLines, reportHtml) = await RunAndProcessReportAsync(coverOutputFiles, reportOutputFolder, cancellationToken);
339+
}
340+
}
341+
else
342+
{
343+
await PrepareCoverageProjectsAsync(coverageProjects, cancellationToken);
344+
var outputFiles = msCodeCoverageRunSettingsService.GetCoverageFilesFromLastRun();
345+
logger.Log("Number of outputfiles:" + outputFiles.Count);
346+
if (outputFiles.Any())
347+
{
348+
(coverageLines, reportHtml) = await RunAndProcessReportAsync(outputFiles.ToArray(), reportOutputFolder, cancellationToken);
349+
}
338350
}
339-
340351
return (coverageLines, reportHtml);
341352

342353
}, cancellationToken)

SharedProject/Core/MsTestPlatform/IMsCodeCoverageRunSettingsService.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
using System;
33
using System.Collections.Generic;
44
using System.Text;
5+
using System.Threading;
56

67
namespace FineCodeCoverage.Engine.MsTestPlatform
78
{
89
interface IMsCodeCoverageRunSettingsService
910
{
1011
void PrepareRunSettings(string solutionPath, ITestOperation testOperation);
1112
IList<String> GetCoverageFilesFromLastRun();
12-
void Initialize(string appDataFolder);
13+
void Initialize(string appDataFolder, CancellationToken cancellationToken);
1314
}
1415
}

SharedProject/Core/MsTestPlatform/MsCodeCoverageRunSettingsService.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using System.Linq;
1010
using System.Reflection;
1111
using System.Text;
12+
using System.Threading;
1213

1314
namespace FineCodeCoverage.Engine.MsTestPlatform
1415
{
@@ -33,9 +34,9 @@ public MsCodeCoverageRunSettingsService(IToolFolder toolFolder, IToolZipProvider
3334
this.toolZipProvider = toolZipProvider;
3435
}
3536

36-
public void Initialize(string appDataFolder)
37+
public void Initialize(string appDataFolder, CancellationToken cancellationToken)
3738
{
38-
var zipDestination = toolFolder.EnsureUnzipped(appDataFolder, zipDirectoryName, toolZipProvider.ProvideZip(zipPrefix));
39+
var zipDestination = toolFolder.EnsureUnzipped(appDataFolder, zipDirectoryName, toolZipProvider.ProvideZip(zipPrefix), cancellationToken);
3940
MsCodeCoveragePath = Path.Combine(zipDestination, "build", "netstandard1.0");
4041
ShimPath = Path.Combine(zipDestination, "build", "netstandard1.0", "CodeCoverage", "coreclr", "Microsoft.VisualStudio.CodeCoverage.Shim.dll");
4142
ExtensionDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

SharedProject/Output/OutputToolWindowPackage.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ namespace FineCodeCoverage.Output
4747
[ProvideAutoLoad(VSConstants.UICONTEXT.SolutionOpening_string, PackageAutoLoadFlags.BackgroundLoad)]
4848
public sealed class OutputToolWindowPackage : AsyncPackage
4949
{
50-
private Microsoft.VisualStudio.ComponentModelHost.IComponentModel componentModel;
50+
private static Microsoft.VisualStudio.ComponentModelHost.IComponentModel componentModel;
5151
private IFCCEngine fccEngine;
5252

5353
/// <summary>
@@ -97,17 +97,16 @@ protected override async Task InitializeAsync(CancellationToken cancellationToke
9797
Assumes.Present(componentModel);
9898
fccEngine = componentModel.GetService<IFCCEngine>();
9999

100-
await OutputToolWindowCommand.InitializeAsync(this);
100+
await OutputToolWindowCommand.InitializeAsync(this, componentModel.GetService<ILogger>());
101101
await ClearUICommand.InitializeAsync(this, fccEngine);
102102

103103
bool isSolutionLoaded = await IsSolutionLoadedAsync();
104104
if (isSolutionLoaded)
105105
{
106106
HandleOpenSolution();
107107
}
108-
SolutionEvents.OnAfterBackgroundSolutionLoadComplete += HandleOpenSolution;
109-
await OutputToolWindowCommand.InitializeAsync(this, componentModel.GetService<ILogger>());
110-
await ClearUICommand.InitializeAsync(this, componentModel.GetService<IFCCEngine>());
108+
Microsoft.VisualStudio.Shell.Events.SolutionEvents.OnAfterBackgroundSolutionLoadComplete += HandleOpenSolution;
109+
111110
}
112111

113112
private void HandleOpenSolution()

SharedProject/SharedProject.projitems

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@
7272
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\CoverageLine.cs" />
7373
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\CoverageProject.cs" />
7474
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\CoverageProjectFactory.cs" />
75+
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\CoverageProjectFileSynchronizationDetails.cs" />
7576
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\ICoverageProject.cs" />
7677
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\ICoverageProjectFactory.cs" />
7778
<Compile Include="$(MSBuildThisFileDirectory)Core\Model\ReferencedProject.cs" />
@@ -94,25 +95,31 @@
9495
<Compile Include="$(MSBuildThisFileDirectory)Core\SourceFileOpener.cs" />
9596
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\AssemblyUtil.cs" />
9697
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ComparableFile.cs" />
98+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DisposeAwareTaskRunner.cs" />
9799
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\DotNetConfigFinder.cs" />
98100
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\DotNetToolListExecutor.cs" />
99101
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\DotNetToolListParser.cs" />
100102
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\IDotNetConfigFinder.cs" />
101103
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\IDotNetToolListExecutor.cs" />
102104
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\DotNet\IDotNetToolListParser.cs" />
105+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\EventAggregator.cs" />
103106
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\FileComparer.cs" />
104107
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\FileSystemInfoDeleteExtensions.cs" />
105108
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\FileUtil.cs" />
106109
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IAssemblyUtil.cs" />
107110
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IFileUtil.cs" />
108111
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IProcessResponseProcessor.cs" />
109112
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IProcessUtil.cs" />
113+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IResourceProvider.cs" />
114+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ISolutionEvents.cs" />
110115
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\IZipFile.cs" />
111116
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\LinqExtensions.cs" />
112117
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\MEF.cs" />
113118
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ProcessResponseProcessor.cs" />
114119
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ProcessUtil.cs" />
115120
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ReflectionExtensions.cs" />
121+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ResourceProvider.cs" />
122+
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\SolutionEvents.cs" />
116123
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ToolZip\IToolFolder.cs" />
117124
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ToolZip\IToolZipProvider.cs" />
118125
<Compile Include="$(MSBuildThisFileDirectory)Core\Utilities\ToolZip\ToolFolder.cs" />
@@ -155,7 +162,13 @@
155162
<Compile Include="$(MSBuildThisFileDirectory)Options\IAppOptionsProvider.cs" />
156163
<Compile Include="$(MSBuildThisFileDirectory)Options\IAppOptionsStorageProvider.cs" />
157164
<Compile Include="$(MSBuildThisFileDirectory)Output\ClearUICommand.cs" />
165+
<Compile Include="$(MSBuildThisFileDirectory)Output\DpiChangedMessage.cs" />
166+
<Compile Include="$(MSBuildThisFileDirectory)Output\EnvironmentFont.cs" />
167+
<Compile Include="$(MSBuildThisFileDirectory)Output\EnvironmentFontDetailsChangedMessage.cs" />
168+
<Compile Include="$(MSBuildThisFileDirectory)Output\InvokeScriptMessage.cs" />
158169
<Compile Include="$(MSBuildThisFileDirectory)Output\IProcess.cs" />
170+
<Compile Include="$(MSBuildThisFileDirectory)Output\NewReportMessage.cs" />
171+
<Compile Include="$(MSBuildThisFileDirectory)Output\ObjectForScriptingMessage.cs" />
159172
<Compile Include="$(MSBuildThisFileDirectory)Output\OutputToolWindow.cs" />
160173
<Compile Include="$(MSBuildThisFileDirectory)Output\OutputToolWindowCommand.cs" />
161174
<Compile Include="$(MSBuildThisFileDirectory)Output\OutputToolWindowContext.cs" />
@@ -164,6 +177,7 @@
164177
</Compile>
165178
<Compile Include="$(MSBuildThisFileDirectory)Output\OutputToolWindowPackage.cs" />
166179
<Compile Include="$(MSBuildThisFileDirectory)Output\ProcessWrapper.cs" />
180+
<Compile Include="$(MSBuildThisFileDirectory)Output\ReadyForReportMessage.cs" />
167181
<Compile Include="$(MSBuildThisFileDirectory)Output\ScriptManager.cs" />
168182
</ItemGroup>
169183
<ItemGroup>

0 commit comments

Comments
 (0)