From b159a89570a2eb22e1ac4cc0a54ef73e93ffb22d Mon Sep 17 00:00:00 2001 From: Tian Liao Date: Mon, 25 Nov 2024 15:47:56 +0800 Subject: [PATCH] enable internet server for development --- src/Calculator/Package.appxmanifest | 1 + .../MockedCurrencyServer.cs | 10 +++++++- .../CurrencyConverterFunctionalTests.cs | 24 ------------------- 3 files changed, 10 insertions(+), 25 deletions(-) diff --git a/src/Calculator/Package.appxmanifest b/src/Calculator/Package.appxmanifest index 3e47982b..7c6f1c81 100644 --- a/src/Calculator/Package.appxmanifest +++ b/src/Calculator/Package.appxmanifest @@ -63,5 +63,6 @@ + diff --git a/src/CalculatorUITestFramework/MockedCurrencyServer.cs b/src/CalculatorUITestFramework/MockedCurrencyServer.cs index adecb92e..0828c5bc 100644 --- a/src/CalculatorUITestFramework/MockedCurrencyServer.cs +++ b/src/CalculatorUITestFramework/MockedCurrencyServer.cs @@ -40,7 +40,15 @@ namespace CalculatorUITestFramework private static void OnGetContext(IAsyncResult result) { var listener = (HttpListener)result.AsyncState; - var context = listener.EndGetContext(result); + HttpListenerContext context; + try + { + context = listener.EndGetContext(result); + } + catch (HttpListenerException) + { + return; + } var request = context.Request; var response = context.Response; if (request.HttpMethod == "GET" && TryGetServerFile(request.Url, out var content)) diff --git a/src/CalculatorUITests/CurrencyConverterFunctionalTests.cs b/src/CalculatorUITests/CurrencyConverterFunctionalTests.cs index c048ed86..208ae91b 100644 --- a/src/CalculatorUITests/CurrencyConverterFunctionalTests.cs +++ b/src/CalculatorUITests/CurrencyConverterFunctionalTests.cs @@ -26,7 +26,6 @@ namespace CalculatorUITests { // Create session to launch a Calculator window _currencyServer = new MockedCurrencyServer(); - Thread.Sleep(5000); CalculatorDriver.Instance.SetupCalculatorSession(context); } @@ -47,10 +46,7 @@ namespace CalculatorUITests [TestInitialize] public void TestInit() { - VerifyConnection("http://localhost/calctesting/file/?id=currency+converter+data&localCurrency=en-US"); - VerifyConnection("http://localhost/calctesting/file/?id=currency+static+data&localizeFor=en-US"); CalculatorApp.EnsureCalculatorHasFocus(); - Thread.Sleep(5000); page.EnsureCalculatorIsCurrencyMode(); page.EnsureCalculatorResultTextIsZero(); page.EnsureSameUnitsAreSelected(); @@ -62,26 +58,6 @@ namespace CalculatorUITests page.ClearAll(); } - private static void VerifyConnection(string url) - { - Console.WriteLine($"VerifyConnection begins: url: {url}"); - var process = new Process(); - var startInfo = new ProcessStartInfo - { - WindowStyle = ProcessWindowStyle.Hidden, - FileName = "cmd.exe", - Arguments = @$"/C curl ""{url}""", - RedirectStandardOutput = true, // Redirect the standard output - UseShellExecute = false, - CreateNoWindow = true - }; - process.StartInfo = startInfo; - process.Start(); - var debug = process.StandardOutput.ReadToEnd(); - process.WaitForExit(); - Console.WriteLine($"VerifyConnection ends: exitcode: {process.ExitCode}, curl result: {debug}"); - } - private string NormalizeCurrencyText(string realValue, int fractionDigits) { if (!realValue.Contains('.')) return realValue;