fix for issue #8
This commit is contained in:
parent
14fbf8f7c7
commit
2b43b35598
|
@ -15,6 +15,10 @@ This is an open source project, join!
|
||||||
|
|
||||||
Twitter: @GanzhaVitalii
|
Twitter: @GanzhaVitalii
|
||||||
|
|
||||||
|
Version 1.9:
|
||||||
|
* Fixed defect #8: VS 2015 stops working when looking at Test Manager Window
|
||||||
|
|
||||||
|
|
||||||
Version 1.8:
|
Version 1.8:
|
||||||
* Users now will be able to select their own sounds (Issue #5)
|
* Users now will be able to select their own sounds (Issue #5)
|
||||||
* There will be a different sound when any of the tests have failed (Issue #7)
|
* There will be a different sound when any of the tests have failed (Issue #7)
|
||||||
|
|
|
@ -5,11 +5,6 @@
|
||||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">12.0</VisualStudioVersion>
|
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">12.0</VisualStudioVersion>
|
||||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<FileUpgradeFlags>
|
|
||||||
</FileUpgradeFlags>
|
|
||||||
<UpgradeBackupLocation>
|
|
||||||
</UpgradeBackupLocation>
|
|
||||||
<OldToolsVersion>12.0</OldToolsVersion>
|
|
||||||
<StartAction>Program</StartAction>
|
<StartAction>Program</StartAction>
|
||||||
<StartProgram>$(DevEnvDir)\devenv.exe</StartProgram>
|
<StartProgram>$(DevEnvDir)\devenv.exe</StartProgram>
|
||||||
<StartArguments>/rootsuffix Exp</StartArguments>
|
<StartArguments>/rootsuffix Exp</StartArguments>
|
||||||
|
@ -66,11 +61,13 @@
|
||||||
<Reference Include="Microsoft.VisualStudio.Shell.Interop.12.0">
|
<Reference Include="Microsoft.VisualStudio.Shell.Interop.12.0">
|
||||||
<EmbedInteropTypes>true</EmbedInteropTypes>
|
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.VisualStudio.TestWindow.Core">
|
<!--<Reference Include="Microsoft.VisualStudio.TestWindow.Core">
|
||||||
<HintPath>$(DevEnvDir)\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Core.dll</HintPath>
|
<HintPath>$(DevEnvDir)\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Core.dll</HintPath>
|
||||||
</Reference>
|
<Private>False</Private>
|
||||||
|
</Reference>-->
|
||||||
<Reference Include="Microsoft.VisualStudio.TestWindow.Interfaces">
|
<Reference Include="Microsoft.VisualStudio.TestWindow.Interfaces">
|
||||||
<HintPath>$(DevEnvDir)\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Interfaces.dll</HintPath>
|
<HintPath>$(DevEnvDir)\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Interfaces.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.VisualStudio.TextManager.Interop" />
|
<Reference Include="Microsoft.VisualStudio.TextManager.Interop" />
|
||||||
<Reference Include="Microsoft.VisualStudio.Shell.12.0" />
|
<Reference Include="Microsoft.VisualStudio.Shell.12.0" />
|
||||||
|
@ -218,10 +215,7 @@
|
||||||
<None Include="Key.snk" />
|
<None Include="Key.snk" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="ReleaseNotes.txt">
|
<Content Include="ReleaseNotes.txt" />
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
||||||
<IncludeInVSIX>true</IncludeInVSIX>
|
|
||||||
</Content>
|
|
||||||
<None Include="Resources\test-failed.wav" />
|
<None Include="Resources\test-failed.wav" />
|
||||||
<Content Include="speaker.ico">
|
<Content Include="speaker.ico">
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
|
|
@ -10,7 +10,6 @@ namespace VitaliiGanzha.VsDingExtension
|
||||||
using EnvDTE80;
|
using EnvDTE80;
|
||||||
using Microsoft.VisualStudio.ComponentModelHost;
|
using Microsoft.VisualStudio.ComponentModelHost;
|
||||||
using Microsoft.VisualStudio.Shell;
|
using Microsoft.VisualStudio.Shell;
|
||||||
using Microsoft.VisualStudio.TestWindow.Controller;
|
|
||||||
using Microsoft.VisualStudio.TestWindow.Extensibility;
|
using Microsoft.VisualStudio.TestWindow.Extensibility;
|
||||||
using Task = System.Threading.Tasks.Task;
|
using Task = System.Threading.Tasks.Task;
|
||||||
|
|
||||||
|
@ -161,9 +160,16 @@ namespace VitaliiGanzha.VsDingExtension
|
||||||
{
|
{
|
||||||
if (Options.IsBeepOnTestComplete && operationStateChangedEventArgs.State.HasFlag(TestOperationStates.TestExecutionFinished))
|
if (Options.IsBeepOnTestComplete && operationStateChangedEventArgs.State.HasFlag(TestOperationStates.TestExecutionFinished))
|
||||||
{
|
{
|
||||||
var testOperation = ((TestRunRequest)operationStateChangedEventArgs.Operation);
|
try
|
||||||
var isTestsFailed = testOperation.DominantTestState == TestState.Failed;
|
{
|
||||||
var eventType = isTestsFailed? EventType.TestsCompletedFailure : EventType.TestsCompletedSuccess;
|
// Issue #8: VS 2015 stops working when looking at Test Manager Window #8
|
||||||
|
// This extention can't take dependency on Microsoft.VisualStudio.TestWindow.Core.dll
|
||||||
|
// Because it will crash VS 2015. But DominantTestState is defined in that assembly.
|
||||||
|
// So as a workaround - cast it to dynamic (ewww, but alternative - to create new project/build and publish it separately.)
|
||||||
|
var testOperation = (dynamic)(operationStateChangedEventArgs.Operation);
|
||||||
|
var dominantTestState = (TestState)testOperation.DominantTestState;
|
||||||
|
var isTestsFailed = dominantTestState == TestState.Failed;
|
||||||
|
var eventType = isTestsFailed ? EventType.TestsCompletedFailure : EventType.TestsCompletedSuccess;
|
||||||
if (Options.IsBeepOnTestFailed && isTestsFailed)
|
if (Options.IsBeepOnTestFailed && isTestsFailed)
|
||||||
{
|
{
|
||||||
HandleEventSafe(eventType, "Test execution failed!", ToolTipIcon.Error);
|
HandleEventSafe(eventType, "Test execution failed!", ToolTipIcon.Error);
|
||||||
|
@ -173,6 +179,13 @@ namespace VitaliiGanzha.VsDingExtension
|
||||||
HandleEventSafe(eventType, "Test execution has been completed.");
|
HandleEventSafe(eventType, "Test execution has been completed.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ActivityLog.LogError(GetType().FullName, ex.Message);
|
||||||
|
// Unable to get dominate test status, beep default sound for test
|
||||||
|
HandleEventSafe(EventType.TestsCompletedSuccess, "Test execution has been completed.");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
|
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
|
||||||
<Metadata>
|
<Metadata>
|
||||||
<Identity Id="26ba08d0-0d25-4479-8684-3054dd122876" Version="1.8" Language="en-US" Publisher="Vitalii Ganzha" />
|
<Identity Id="26ba08d0-0d25-4479-8684-3054dd122876" Version="1.9" Language="en-US" Publisher="Vitalii Ganzha" />
|
||||||
<DisplayName>Visual Studio Ding extension</DisplayName>
|
<DisplayName>Visual Studio Ding extension</DisplayName>
|
||||||
<Description xml:space="preserve">This small extension will play notification sounds when following events occur:
|
<Description xml:space="preserve">This small extension will play notification sounds when following events occur:
|
||||||
- Build Complete
|
- Build Complete
|
||||||
|
|
Loading…
Reference in New Issue