diff --git a/src/VisualStudio/IntegrationTest/TestUtilities/OutOfProcess/Dialog_OutOfProc.cs b/src/VisualStudio/IntegrationTest/TestUtilities/OutOfProcess/Dialog_OutOfProc.cs index 46ad922fdcc9cf29c0dc1854db2e301de65c39c0..f9878ca685d8e8043793b9ceb6b0d371d5f84f28 100644 --- a/src/VisualStudio/IntegrationTest/TestUtilities/OutOfProcess/Dialog_OutOfProc.cs +++ b/src/VisualStudio/IntegrationTest/TestUtilities/OutOfProcess/Dialog_OutOfProc.cs @@ -14,17 +14,21 @@ public Dialog_OutOfProc(VisualStudioInstance visualStudioInstance) public void VerifyOpen(string dialogName) { + using var cancellationTokenSource = new CancellationTokenSource(Helper.HangMitigatingTimeout); + // FindDialog will wait until the dialog is open, so the return value is unused. - DialogHelpers.FindDialogByName(GetMainWindowHWnd(), dialogName, isOpen: true, CancellationToken.None); + DialogHelpers.FindDialogByName(GetMainWindowHWnd(), dialogName, isOpen: true, cancellationTokenSource.Token); // Wait for application idle to ensure the dialog is fully initialized - VisualStudioInstance.WaitForApplicationIdle(CancellationToken.None); + VisualStudioInstance.WaitForApplicationIdle(cancellationTokenSource.Token); } public void VerifyClosed(string dialogName) { + using var cancellationTokenSource = new CancellationTokenSource(Helper.HangMitigatingTimeout); + // FindDialog will wait until the dialog is closed, so the return value is unused. - DialogHelpers.FindDialogByName(GetMainWindowHWnd(), dialogName, isOpen: false, CancellationToken.None); + DialogHelpers.FindDialogByName(GetMainWindowHWnd(), dialogName, isOpen: false, cancellationTokenSource.Token); } public void Click(string dialogName, string buttonName)