diff --git a/SharedProject/Core/MsTestPlatform/CodeCoverage/ProjectRunSettingsGenerator.cs b/SharedProject/Core/MsTestPlatform/CodeCoverage/ProjectRunSettingsGenerator.cs index edfe7e58..c379d6a3 100644 --- a/SharedProject/Core/MsTestPlatform/CodeCoverage/ProjectRunSettingsGenerator.cs +++ b/SharedProject/Core/MsTestPlatform/CodeCoverage/ProjectRunSettingsGenerator.cs @@ -7,6 +7,7 @@ using System.Linq; using FineCodeCoverage.Core.Utilities; using System.Xml.Linq; +using FineCodeCoverage.Output; namespace FineCodeCoverage.Engine.MsTestPlatform.CodeCoverage { @@ -15,16 +16,19 @@ internal class ProjectRunSettingsGenerator : IProjectRunSettingsGenerator { private readonly IFileUtil fileUtil; private readonly IVsRunSettingsWriter vsRunSettingsWriter; + private readonly ILogger logger; private const string fccGeneratedRunSettingsSuffix = "fcc-mscodecoverage-generated"; [ImportingConstructor] public ProjectRunSettingsGenerator( IFileUtil fileUtil, - IVsRunSettingsWriter vsRunSettingsWriter + IVsRunSettingsWriter vsRunSettingsWriter, + ILogger logger ) { this.fileUtil = fileUtil; this.vsRunSettingsWriter = vsRunSettingsWriter; + this.logger = logger; } public Task RemoveGeneratedProjectSettingsAsync(IEnumerable coverageProjects) @@ -43,7 +47,7 @@ public Task WriteProjectsRunSettingsAsync(IEnumerable WritePropertyAsync(IVsHierarchy p await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); if (projectHierarchy is IVsBuildPropertyStorage vsBuildPropertyStorage) { - if(vsBuildPropertyStorage.GetPropertyValue(propertyName, string.Empty, (uint)_PersistStorageType.PST_PROJECT_FILE, out var v) == VSConstants.S_OK) + var result = vsBuildPropertyStorage.GetPropertyValue(propertyName, string.Empty, (uint)_PersistStorageType.PST_PROJECT_FILE, out var v); + if (result == VSConstants.S_OK && v == value) { - if (v == value) - { - return true; - } - return vsBuildPropertyStorage.SetPropertyValue(propertyName, string.Empty, (uint)_PersistStorageType.PST_PROJECT_FILE, value) == VSConstants.S_OK; + return true; } + + return vsBuildPropertyStorage.SetPropertyValue(propertyName, string.Empty, (uint)_PersistStorageType.PST_PROJECT_FILE, value) == VSConstants.S_OK; + } return false;