From 04aac62b055951c099253ac86c66a089fe54a8d4 Mon Sep 17 00:00:00 2001 From: Jakub Chocholowicz Date: Thu, 21 May 2020 18:40:30 +0200 Subject: [PATCH] New version --- .../IMultiTestRunsFinalizationManager.cs | 24 +++++++++++++++++++ .../MultiTestRunsFinalizationManager.cs | 10 ++++++++ ...MultiTestRunsFinalizationEventsHandler.cs} | 2 +- .../ITranslationLayerRequestSender.cs | 2 +- .../Interfaces/IVsTestConsoleWrapper2.cs | 2 +- .../VsTestConsoleRequestSender.cs | 4 ++-- .../VsTestConsoleWrapper.cs | 5 ++-- 7 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 src/Microsoft.TestPlatform.Common/Interfaces/Engine/TesthostProtocol/IMultiTestRunsFinalizationManager.cs create mode 100644 src/Microsoft.TestPlatform.CrossPlatEngine/MultiTestRunsFinalization/MultiTestRunsFinalizationManager.cs rename src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/{IMultiTestRunsFinalizationCompleteEventsHandler.cs => IMultiTestRunsFinalizationEventsHandler.cs} (87%) diff --git a/src/Microsoft.TestPlatform.Common/Interfaces/Engine/TesthostProtocol/IMultiTestRunsFinalizationManager.cs b/src/Microsoft.TestPlatform.Common/Interfaces/Engine/TesthostProtocol/IMultiTestRunsFinalizationManager.cs new file mode 100644 index 0000000000..b67250e839 --- /dev/null +++ b/src/Microsoft.TestPlatform.Common/Interfaces/Engine/TesthostProtocol/IMultiTestRunsFinalizationManager.cs @@ -0,0 +1,24 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace Microsoft.VisualStudio.TestPlatform.ObjectModel.Engine.TesthostProtocol +{ + using Microsoft.VisualStudio.TestPlatform.ObjectModel.Client; + using System.Collections.Generic; + + namespace Microsoft.VisualStudio.TestPlatform.Common.Interfaces.Engine.TesthostProtocol + { + /// + /// Orchestrates multi test runs finalization operations for the engine communicating with the test host process. + /// + public interface IMultiTestRunsFinalizationManager + { + /// + /// Discovers tests + /// + /// Settings, parameters for the discovery request + /// EventHandler for handling discovery events from Engine + void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler eventHandler); + } + } +} diff --git a/src/Microsoft.TestPlatform.CrossPlatEngine/MultiTestRunsFinalization/MultiTestRunsFinalizationManager.cs b/src/Microsoft.TestPlatform.CrossPlatEngine/MultiTestRunsFinalization/MultiTestRunsFinalizationManager.cs new file mode 100644 index 0000000000..9fad708282 --- /dev/null +++ b/src/Microsoft.TestPlatform.CrossPlatEngine/MultiTestRunsFinalization/MultiTestRunsFinalizationManager.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Microsoft.VisualStudio.TestPlatform.CrossPlatEngine.MultiTestRunsFinalization +{ + class MultiTestRunsFinalizationManager + { + } +} diff --git a/src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationCompleteEventsHandler.cs b/src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationEventsHandler.cs similarity index 87% rename from src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationCompleteEventsHandler.cs rename to src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationEventsHandler.cs index 3b18128664..ef5ec9f229 100644 --- a/src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationCompleteEventsHandler.cs +++ b/src/Microsoft.TestPlatform.ObjectModel/Client/Interfaces/IMultiTestRunsFinalizationEventsHandler.cs @@ -8,7 +8,7 @@ namespace Microsoft.VisualStudio.TestPlatform.ObjectModel.Client /// /// Interface contract for handling multi test runs finalization complete events /// - public interface IMultiTestRunsFinalizationCompleteEventsHandler : ITestMessageEventHandler + public interface IMultiTestRunsFinalizationEventsHandler : ITestMessageEventHandler { /// /// Dispatch SessionComplete event to listeners. diff --git a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/ITranslationLayerRequestSender.cs b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/ITranslationLayerRequestSender.cs index c5187d6b3e..9af7ac69f6 100644 --- a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/ITranslationLayerRequestSender.cs +++ b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/ITranslationLayerRequestSender.cs @@ -116,6 +116,6 @@ internal interface ITranslationLayerRequestSender : IDisposable /// /// List of attachements /// - void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationCompleteEventsHandler multiTestRunsFinalizationCompleteEventsHandler); + void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler multiTestRunsFinalizationCompleteEventsHandler); } } diff --git a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/IVsTestConsoleWrapper2.cs b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/IVsTestConsoleWrapper2.cs index adb48aacb7..674a0dd0f5 100644 --- a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/IVsTestConsoleWrapper2.cs +++ b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/Interfaces/IVsTestConsoleWrapper2.cs @@ -18,6 +18,6 @@ public interface IVsTestConsoleWrapper2 : IVsTestConsoleWrapper /// /// List of attachements /// EventHandler to receive session complete event - void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationCompleteEventsHandler multiTestRunsFinalizationCompleteEventsHandler); + void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler multiTestRunsFinalizationCompleteEventsHandler); } } diff --git a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs index b0085b663c..8c3d0f05d1 100644 --- a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs +++ b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs @@ -385,7 +385,7 @@ public void EndSession() } /// - public void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationCompleteEventsHandler testSessionEventsHandler) + public void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler testSessionEventsHandler) { this.SendMessageAndListenAndReportAttachements(attachments, testSessionEventsHandler); } @@ -732,7 +732,7 @@ private async Task SendMessageAndListenAndReportTestResultsAsync(string messageT this.testPlatformEventSource.TranslationLayerExecutionStop(); } - private void SendMessageAndListenAndReportAttachements(IEnumerable attachments, IMultiTestRunsFinalizationCompleteEventsHandler eventHandler) + private void SendMessageAndListenAndReportAttachements(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler eventHandler) { try { diff --git a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleWrapper.cs b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleWrapper.cs index 689c28943a..48f7796cfa 100644 --- a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleWrapper.cs +++ b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleWrapper.cs @@ -278,10 +278,11 @@ public void EndSession() #region IVsTestConsoleWrapper2 /// - public void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationCompleteEventsHandler testSessionEventsHandler) + public void FinalizeMultiTestRuns(IEnumerable attachments, IMultiTestRunsFinalizationEventsHandler testSessionEventsHandler) { - this.EnsureInitialized(); + this.testPlatformEventSource.TranslationLayerMultiTestRunsFinalizationStart(); + this.EnsureInitialized(); this.requestSender.FinalizeMultiTestRuns(attachments, testSessionEventsHandler); }